source: ChangeLog @ 7c85c15

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5
Last change on this file since 7c85c15 was 3ba5d952, checked in by Paul Brossier <piem@piem.org>, 6 years ago

[ChangeLog?] add 0.4.8 entry

  • Property mode set to 100644
File size: 49.6 KB
Line 
12018-11-21 Paul Brossier <piem@aubio.org>
2
3        [ Overview ]
4
5        * VERSION: bump to 0.4.8
6        * notes: new option release_drop (gh-203)
7        * spectral: new parameters added to filterbank and mfcc (gh-206)
8        * python: start documenting module (gh-73, debian #480018), improve build for
9        win-amd64 (gh-154, gh-199, gh-208)
10        * fixes: prevent crash when using fft sizes unsupported by vDSP (gh-207),
11        prevent saturation when down-mixing a multi-channel source (avcodec/ffmpeg)
12
13        [ Fixes ]
14
15        * avcodec: prevent saturation when down-mixing a multi-channel source, emit
16        a warning if compiling against avutil < 53 (gh-137), wrap long lines
17        * examples/: avoid hiding global and unreachable code
18        * fft: limit to r*2*n sizes, with r in [1, 3, 5, 15] (vDSP only) (gh-207)
19        * fft: fix reconstruction for odd sizes (fftw only)
20        * pvoc: add missing implementations for aubio_pvoc_get_hop/win
21        * mathutils: increase ln(2) precision of in freqtomidi/miditofreq
22        * wavetable: stop sets playing to 0, add dummy implementation for _load
23
24        [ New features ]
25
26        * src/musicutils.h: new aubio_meltohz, aubio_hztomel, with _htk versions
27        * src/spectral/filterbank.h: new set_mel_coeffs, set_mel_coeffs_htk,
28        set_power, and set_norm methods, improved set_triangle_bands
29        * src/spectral/mfcc.h: new set_scale, set_power, set_norm, set_mel_coeffs,
30        set_mel_coeffs_htk, set_mel_coeffs_slaney
31        * src/mathutils.h: new fvec_mul
32        * src/notes: new option release_drop to prevent missing note-offs (gh-203)
33
34        [ Python module ]
35
36        * fix: rounding to nearest integer in midi2note and freq2note
37        * general: supports code generation of setters with none or multiple
38        parameters
39        * documentation: add docstrings do fvec, cvec, source, sink, pvoc, frequency
40        conversion and level detection routines (gh-73, debian #480018)
41        * slicing: improve and document slice_source_at_stamps
42        * module: new note2freq function, recover error log when raising exceptions
43        on failed set_ methods, prevent cyclic import, coding style improvements
44        * demos: improve coding style, fix bpm_extract arguments
45        * MANIFEST.in: exclude *.pyc, improve patterns
46
47        [ Documentation ]
48
49        * doc/: use sphinx autodoc to load docstrings from aubio module, reorganize
50        python module documentation, add a note about double precision, use https
51        when possible
52        * src/spectral/: update Auditory Toolbox url, update copyright year
53
54        [ Tools ]
55
56        * aubionotes: add --release-drop option
57        * aubio: add --release-drop and --silence options to `aubio notes`,
58        workaround for -V to really show version (py2)
59        * aubiocut: add option --create-first to always create first slice
60
61        [ Tests ]
62
63        * tests/, python/tests: add tests for new methods, check source channel
64        down-mix, improve coverage
65
66        [ Build system ]
67
68        * Makefile: disable docs when measuring coverage, add branch coverage
69        option, add coverage_zero_counters target, improve html report
70        * waf: update to 2.0.12, improve wscript style, prevent shipping some
71        generated files
72        * python: always show compiler warnings when pre-processing headers,
73        workaround to fix code generation for win-amd64 (gh-154, gh-199, gh-208).
74        * continuous integration: add azure pipelines, update and improve
75        configurations for appveyor, circleci, and travis.
76
772018-09-22 Paul Brossier <piem@aubio.org>
78
79        [ Overview ]
80
81        * VERSION: bump to 0.4.7
82        * src/spectral/dct.h: add dct type II object with optimised versions
83        * src/io/, src/notes/, src/pitch: prevent crashes on corrupted files
84        * examples/: fix jack midi output, improve messages when jack disabled
85        * python/: add dct support, minor bug fixes tests and demos
86        * wscript: improve support for BLAS/ATLAS
87
88        [ Library fixes ]
89
90        * src/pitch/pitchyinfft.c: fix out of bound read when samplerate > 50kHz
91        thanks to @fCorleone (closes #189, CVE-2018-14523, debian #904906)
92        * src/notes/notes.c: bail out if pitch creation failed (see #188)
93        * src/io/source_wavread.c:
94         - also exit if samplerate is negative (closes #188, CVE-2018-14522,
95         debian #904907)
96         - add some input validation (closes #148 and #158, CVE-2017-17054,
97         debian #883355)
98        * src/io/source_avcodec.c:
99         - give up if resampling context failed opening (see #137, closes #187,
100         CVE-2018-14521, debian #904908)
101         - give up reading file if number of channel changes during stream (closes
102         #137, CVE-2017-17554, debian #884237)
103         - make sure libavutil > 52 before checking avFrame->channels (see #137)
104         - fix build with ffmpeg 4.0, thanks to @jcowgill (closes #168, #173)
105         - avoid deprecated call for ffmpeg >= 4.0
106        * src/onset/onset.c: add dummy default parameters for wphase (closes #150)
107
108        [ Tools ]
109
110        * examples/parse_args.h: hide jack options if not available, improve error
111        message (closes #182)
112        * examples/utils.h: process_block returns void
113        * examples/utils.c: fix examples failing to send more than one JACK midi
114        event per frame, thanks to @cyclopsian (closes #201)
115
116        [ New features ]
117
118        * src/spectral/dct.h: add dct type II object with implementation factory
119        * src/spectral/dct_plain.c: add plain dct implementation
120        * src/spectral/dct_ooura.c: add ooura implementation
121        * src/spectral/dct_fftw.c: add fftw implementation
122        * src/spectral/dct_ipp.c: add ipp version
123        * src/spectral/dct_accelerate.c: add vdsp/accelerate dct
124        * tests/src/spectral/test-dct.c: check reconstruction works
125        * src/spectral/mfcc.c: use new dct to compute mfcc
126
127        [ Library internals ]
128
129        * src/aubio_priv.h: avoid hard-coded undefs, split BLAS and ATLAS support,
130        add vdsp scalar add and multiply
131
132        [ Build system ]
133
134        * wscript:
135         - add options to disable examples and tests
136         - detect includes for openblas/libblas/atlas
137        * scripts/get_waf.sh: bump to 2.0.11, verify signature if gpg available
138        * python/lib/gen_external.py: pass '-x c' to emcc only
139
140        [ Python ]
141
142        * python/lib/gen_code.py: add support for rdo methods
143        * python/tests/test_dct.py: add tests for new dct
144        * python/demos/demo_pitch_sinusoid.py: use // to yield an integer, fixing
145        demo on py3, thanks to @ancorcruz (closes #176)
146        * python/ext/py-musicutils.*: add shift(fvec) and ishift(fvec)
147        * python/tests/test_fvec_shift.py: add tests for shift() and ishift()
148        * python/lib/aubio/cmd.py: fix typo in comment
149
150        [ Documentation ]
151
152        * README.md, doc/statuslinks.rst: use latest for commits-since
153        * examples/parse_args.h: add yinfast to pitch algorithms
154        * doc/requirements.rst: add some blas documentation
155        * doc/requirements.rst: split media/optimisation libraries
156        * doc/develop.rst: fixed spelling error, thanks to Jon Williams (closes #161)
157        * doc/aubio{pitch,notes}.txt: add yinfast to list of pitch methods
158
159        [ Continuous integration ]
160
161        * .travis.yml: remove xcode8.2 builds, group osx, add alias pip=pip2
162        * .appveyor.yml: upgrade pip first, always use python -m pip
163
1642017-10-02 Paul Brossier <piem@aubio.org>
165
166        [ Overview ]
167
168        * VERSION: bump to 0.4.6
169        * src/spectral/fft.c, src/*.c: add support for Intel IPP (many thanks to
170        Eduard Mueller)
171        * wscript: add support for emscripten (thanks to Martin Hermant)
172        * src/pitch/pitchyinfast.h: new fast method to compute YIN algorithm
173        * src/pitch/pitchyin*.c: improve confidence measure, making sure its value
174        corresponds to the selected period (thanks to Eduard Mueller)
175        * python/lib/aubio/cmd.py: add `quiet`, `cut`, and `help` subcommands
176
177        [ Library ]
178
179        * src/aubio_priv.h: add missing aubio_vDSP_vclr (Eduard Mueller)
180        * src/io/source_avcodec.c: improve error message, prevent un-opened bracket,
181        no declaration after statements for older compilers, avoid unused variable
182        * src/mathutils.c: prevent segfault with Accelerate.framework (closes #58,
183        closes #102)
184        * src/spectral/phasevoc.h: add aubio_pvoc_set_window to change the windowing
185        function
186        * src/mathutils.c: add window type `ones` (no windowing)
187
188        [ Python ]
189
190        * python/demos/demo_tapthebeat.py: add a real-time example to play beats
191        using pyaudio
192        * python/lib/gen_external.py: improve parsing and syntax, use results in
193        emscripten build (Martin Hermant)
194        * python/lib/aubio/cmd.py: add option `-u` to `aubio pitch`, improve error
195        messages, add `quiet` subcommand (closes #124), improve syntax, add some
196        documentation, add `cut` and `help` subcommand, add silence and time format
197        options
198        * python/lib/aubio/cut.py: upgrade to argparse, set samplerate as needed
199        * python/demos/demo_yin_compare.py: add comparison of yin implementations
200        * python/demos/demo_wav2midi.py: add an example to create a midi from a
201        sound file using mido (closes: #134)
202        * python/demos/demo_bpm_extract.py: use argparse, use beats_to_bpm function
203        * python/ext/py-cvec.c: fix support for pypy by changing setters to return a
204        negative value on error (closes #17)
205
206        [ Documentation ]
207
208        * src/tempo/beattracking.h: fix typo (thanks to Hannes Fritz)
209        * doc/requirements.rst: fix broken link (thanks to @ssj71, closes #99)
210        * doc/aubiomfcc.txt: fix typo in 'coefficients'
211
212        [ Tests ]
213
214        * python/tests/tests_aubio_{cmd,cut}.py: add basic tests
215        * python/tests/test_filterbank*.py: ignore UserWarnings, clean-up,
216        improve get_coeff tests
217
218        [ Build system ]
219
220        * wscript: add support for emscripten, see scripts/build_emscripten
221        * scripts/get_waf.sh: update waf to 2.0.1, build waf from source tarball
222        * scripts/build_emscripten: update to build aubio.js
223        * Makefile: add coverage and coverage_report targets, run tests once
224
225        [ Continuous integration ]
226
227        * .travis.yml: add coverage report on osx
228        * .appveyor.yml: use msvc 14.0 (VS 2015) and scripts/get_waf.sh
229        * .coveragerc: add minimal python coverage configuration
230
2312017-04-10 Paul Brossier <piem@aubio.org>
232
233        [Overview]
234
235        * VERSION: bump to 0.4.5
236        * src/io/source_avcodec.c: add support for libswresample
237        * aubio: new python command line tool to extract information
238        * src/onset/onset.c: add spectral whitening and compression, improve default
239        parameters
240        * this_version.py: use centralized script to get current version, adding git
241        sha when building from git repo (thanks to MartinHN)
242
243        [Interface]
244
245        * src/spectral/awhithening.h: add adaptive whitening
246        * src/{cvec,mathutils,musicutils}.h: add cvec_logmag, fvec_logmag, and fvec_push
247        * src/onset/onset.h: add aubio_onset_set_default_parameters to load optimal
248        parameters of each novelty function, _{set,get}_compression and
249        _{set,get}_awhitening to turn on/off compression and adaptive whitening
250        * src/spectral/specdesc.h: add weighted phase
251
252        [Library]
253
254        * src/onset/onset.c: improve default onset parameters (thanks to @superbock
255        for access to his evaluation database), see commit dccfad2 for more details
256        * src/pitch/pitch.c: avoid segfault when using invalid parameters
257        * src/temporal/biquad.c: fix biquad parameters initialization (thanks to
258        @jurlhardt)
259
260        [Tools]
261
262        * examples/aubio{onset,track}.c: add options --miditap-note and
263        --miditap-velo to set which midi note is triggered at onset/beat (thanks to
264        @tseaver)
265        * examples/aubioonset.c: show actual parameters in verbose mode
266        * examples/utils.c: improve memory usage to emit midi notes
267
268        [Python]
269
270        * python/ext/py-source.c: add with (PEP 343) and iter (PEP 234) interface
271        * python/ext/py-sink.c: add with interface (PEP 343)
272        * python/lib/aubio/cmd.py: new `aubio` command line tool
273        * python/lib/aubio/cut.py: moved from python/scripts/aubiocut
274
275        [Documentation]
276
277        * doc/*.rst: reorganize and improve sphinx manual
278        * doc/*.txt: update manpages, add simple manpage for aubio command line
279        * doc/full.cfg: derive from doc/web.cfg
280        * README.md: simplify and add contribute information
281
282        [Build system]
283
284        * wscript: prefer libswresample over libavsamplerate when available, use
285        current version in manpages, doxygen, and sphinx, update to newest waf
286        * setup.py: use entry_points console_scripts to generate scripts, use
287        centralized version from this_version.py, clean up
288        * python/lib/moresetuptools.py: detect if libswresample is available
289
2902017-01-08 Paul Brossier <piem@aubio.org>
291
292        [ Overview ]
293
294        * VERSION: bump to 0.4.4
295        * src/utils/log.h: new function to redirect log, error, and warnings
296        * python/: AUBIO_ERR raises python exception, AUBIO_WRN to emit py warning
297        * doc/: add some documentation, fix errors in manpages
298        * wscript: new rules to build 'manpages', 'doxygen', and 'sphinx', new
299        --build-type=<release|debug> option (thanks to Eduard Mueller)
300        * src/notes/notes.h: add minioi and silence methods
301        * examples/: add --minioi (minimum inter-onset interval) option
302        * src/pitch/pitchyin.c: improve msvc compiler optimisations (thanks to
303        Eduard Mueller)
304        * python/, src/: improve error messages, fix minor memory leaks
305        * src/io/source_avcodec.c: improve compatibility with latest ffmpeg and with
306        older libav/ffmpeg versions
307        * python/demos/: new demos to capture microphone in real time
308
309        [ Interface]
310
311        * src/aubio.h: include utils/log.h
312        * src/utils/log.h: add new aubio_log_set_function to redirect log messages
313        * src/notes/notes.h: add aubio_notes_{get,set}_minioi_ms, add
314        _{get,set}_silence methods
315
316        [ Library ]
317
318        * src/aubio_priv.h: add AUBIO_INF to print to stdout with header, use new
319        logging function, add ATAN alias, add stdarg.h, move #include "config.h"
320        * src/{fmat,fvec}.c: avoid integer division
321        * src/pitch/pitchyin.c: [msvc] help compiler to optimize aubio_pitchyin_do
322        by giving it addresses for all arrays which are referenced in inner loops,
323        thanks to Eduard Mueller.
324        * src/pitch/pitch.c: declare internal functions as static, fail on wrong
325        method, warn on wrong unit, improve error messages, fix error string
326        * src/spectral/specdesc.c: return NULL if wrong mode asked, remove trailing
327        spaces
328        * src/onset/onset.c: return null and clean-up if new_aubio_specdesc failed,
329        fix error message
330        * src/notes/notes.c: use midi note to store pitch candidate, round to
331        nearest note, add a variable to define precision, fix out-of-bound write,
332        fix unset silence_threshold, fix error message
333        * src/spectral/ooura_fft8g.c: add cast to avoid conversion warnings, prefix
334        public function with aubio_ooura_ to avoid with other apps using ooura (e.g.
335        puredata), make internal functions static,
336        * src/spectral/fft.c: add message about fftw3 being able to do non-power of
337        two sizes, make calls to fftw_destroy_plan thread-safe, use prefixed
338        aubio_ooura_rdft
339        * src/spectral/phasevoc.c: fix error string
340        * src/temporal/resampler.c: throw an error when using libsamplerate with doubles
341        * src/io/ioutils.h: add functions to check samplerate and channels, use in sink_*.c
342        * src/io/source.c: add error message when aubio was compiled with no source,
343        only show error message from last child source_
344        * src/io/source_avcodec.c: call avformat_free_context after
345        avformat_close_input, keep a reference to packet to remove it when closing
346        file, avoid deprecation warnings with ffmpeg 3.2, add backward compatibility
347        for libavcodec55, fix for old libavcodec54, use AV_SAMPLE_FMT_DBL when
348        compiling with HAVE_AUBIO_DOUBLE, fix missing samples in eof block, avoid
349        function calls before declarations, improve error messages, replace with new
350        context before closing old one, make sure s->path is set to null
351        * src/io/{source_wavread,sink_wavwrite}.c: declare internal functions as static
352        * src/io/source_wavread.c: fix bytes_read for JUNK headers, improve error
353        messages, initialize buffer, skip chunks until data is found, or abort, skip
354        junk chunk
355        * src/io/source_sndfile.c: add support for multi-channel resampling, set
356        handle to null after sucessful close, add missing floor in ratio comparison,
357        improve formatting
358        * src/io/sink.c: only show error message from last child sink_
359        * src/io/sink_apple_audio.c: avoid crash on empty file name
360        * src/io/sink_sndfile.c: improve error message
361        * src/io/sink_{sndfile,wavwrite}.c: use AUBIO_MAX_CHANNELS, fix error message
362
363        [ Documentation ]
364
365        * README.md: update copyright dates, use https
366        * src/aubio.h: add some links to examples, use https
367        * src/pitch/pitch.h: add aubio_pitch_get_tolerance, add basic description of
368        unit modes
369        * src/notes/notes.h: add doxygen header
370        * src/spectral/fft.h: strip example path
371        * doc/*.rst: improve sphinx documentation
372        * doc/android.rst: add reference to it scripts/build_android
373        * doc/debian_packages.rst: added page on debian packages
374        * doc/python_module.rst: add demo_source_simple.py, add note on pip, add
375        `print(aubio.version)`
376        * doc/cli.rst: include command line manpages
377        * doc/cli_features.rst: add matrix of command line features
378        * doc/requirements.rst: add a note about --notests (closes #77), document
379        --msvc options, improve description of options
380        * doc/download.rst: added page on download
381        * doc/installing.rst: update
382        * doc/xcode_frameworks.rst: added page on xcode frameworks
383        * doc/**: use https://aubio.org
384        * doc/conf.py: use pyramid theme, update copyright, remove hardcoded path
385        * doc/web.cfg: exclude ioutils from doc
386        * doc/aubionotes.txt: document -M option (see #18),
387        * doc/aubioonset.txt: add documentation for -M, --minioi, improve threshold
388        description (thanks to Peter Parker), fix typo (onset, not pitch)
389        * doc/aubio*.txt: document -T/--timeformat option
390
391        [ Build ]
392
393        * Makefile: add a brief intro, avoid offline operations, add html and dist
394        targets, add rules for documentation, simplify listing, avoid offline
395        operations, bump waf to 1.9.6, check for waf before clean, chmod go-w
396        waflib, improve clean, use pip to install, factorise pip options, generate
397        more test sounds, improve test_python and test_pure_python, pass build_ext
398        in test_pure_python{,_wheel}, quieten uninstall_python if already
399        uninstalled, improve test targets, use bdist_wheel in test_pure_python,
400        build_ext only for --enable-double, verbose waf rules, add cleanwaf
401        * wscript: added debug/release build type configurations release (default)
402        enables optimizations, debug symbols are enabled in both configurations,
403        thanks to Eduard Mueller.
404        * wscript: add options to disable source_wavread/sink_wavwrite, add check
405        for stdarg.h, new rules 'manpages', 'sphinx', and 'doxygen' to build
406        documentation, add version to sphinx and manpages, disable libsamplerate
407        if double precision enabled (libsamplerate only supports float), fix typos,
408        remove trailing spaces, improve tarball creation (./waf dist), remove
409        full.cfg from tarball, prepend to CFLAGS to honor user cflags
410        * wscript, src/wscript_build: improve install locations using DATAROOTDIR,
411        MANDIR, INCLUDEDIR
412        * wscript: default to no atlas for now
413        * src/wscript_build: always build static library
414        * scripts/build_android: add an example script to build aubio on android,
415
416        [ Tools ]
417
418        * examples/aubionotes.c: use new notes, set minioi, send last note off when
419        needed, add warning for missing options
420        * examples/aubioonset.c: add minioi option, in seconds
421        * examples/: only send a last note off when using jack
422        * examples/: return 1 if object creation failed
423        * examples/: use PROG_HAS_OUTPUT, add PROG_HAS_SILENCE
424
425        [ Tests ]
426
427        * tests/src/spectral/test-fft.c: fix default size
428        * tests/src/spectral/test-phasevoc.c: fix typos
429        * tests/src/utils/test-log.c: add AUBIO_INF, add example for
430        aubio_log_set_function, improve messages
431
432        [ Python ]
433
434        * python/ext/aubiomodule.c: add aubio._aubio.__version__ and import it as
435        aubio.version, use custom logging function for errors and warnings, remove
436        duplicated add_generated_objects, use <> for non local aubio
437        * python/ext/py-cvec.c: use NPY_INTP_FMT
438        * python/ext/py-fft.c: use error string set in src/spectral/fft.c
439        * python/ext/py-phasevoc.c: use error string set in src/spectral/phasevoc.c
440        * python/ext/py-sink.c: always set samplerate and channels in init
441        * python/ext/py-source.c: use error string set in src/io/source.c
442        * python/lib/aubio/midiconv.py: add unicode double sharp and double flat,
443        improve unicode handling, skip UnicodeEncodeError on python 2.x
444
445        [ Python build ]
446
447        * MANIFEST.in: add src/**.c, exclude full.cfg, include waflib, remove
448        python/ext/config.h
449        * setup.py: define AUBIO_VERSION use sorted glob.glob to improve
450        reproducibility, remove extra quotes, remove status from version string,
451        update description, use custom build_ext instead of 'generate' command,
452        define HAVE_AUBIO_DOUBLE to 1 if needed
453        * python/lib/gen_code.py: add support for multiple _do outputs, fix number
454        of output, improve del_ function, safer DECREF, fix indentation, emit RuntimeError
455        * python/lib/gen_external.py: clean-up, enable tss, remove duplicate,
456        sort generated files
457        * python/lib/moresetuptools.py: add HAVE_STDARG_H, also check for
458        HAVE_AUBIO_DOUBLE, cleaner clean, look first for system library, then for
459        local build, then local sources, mo nore fake config.h here, use
460        samplerate in single precision only
461        * python/README.md: add a note about nose2 for python tests (closes #74)
462        * scripts/setenv_local.sh: python3 compat
463
464        [ Python demos ]
465
466        * python/demos/demo_alsa.py: add example using alsaaudio (closes #72)
467        * python/demos/demo_mfcc.py: add options to plot first and second
468        derivatives, and set samplerate/win_s/hop_s, thanks to @jhoelzl (closes #68)
469        * python/demos/demo_notes.py: add simple notes demos
470        * python/demos/demo_pyaudio.py: added simple demo for pyaudio, see #6,
471        closes #78, thanks to @jhoelzl and @notalentgeek, add some comments, avoid
472        overwriting aubio.pitch
473        * python/demos/demo_source_simple.py: fix indentation, make executable
474        * python/demos/demo_timestretch{,_online}.py: fix usage string, remove
475        unused import, use // to yield an integer (closes #71)
476        * python/demos/demo_timestretch_online.py: use 512, fix block counter
477        * python/demos/demo_tss.py: improve default parameters, exit before plotting
478
479        [ Python tests ]
480
481        * python/tests/: use local import, add __init__.py
482        * python/tests/test_cvec.py: simplify
483        * python/tests/test_fft.py: skip test fft(zeros).phas == 0 if needed, expected powerpc
484        * python/tests/test_fvec.py: reduce alpha norm precision to 10.-4
485        * python/tests/test_{midi2note,note2midi}.py: use nose2.params, add unicode tests
486        * python/tests/test_notes.py: add basic tests
487        * python/tests/test_notes.py: test results are correct for 44100Hz_44100f_sine441.wav
488        * python/tests/test_sink.py: add more tests, quiet warnings
489        * python/tests/test_source.py: break long line, check the tail of the file
490        is non-zero on non silent test files, filter user warnings to avoid spamming
491        the console, only check if last frames are non silent on brownnoise (weak),
492        remove fragile brownnoise test, check duration on short files, use nose2
493        params to process one sound file per test
494        * python/tests/test_specdesc.py: RuntimeError is now raised on wrong mode
495        * python/tests/utils.py: by default, use 5 seconds brownoise
496
497        [ Only in git ]
498
499        * .travis.yml: add debian dpkg-buildflags config, switch from precise to
500        trusty, sudo required, add ffmpeg on osx, add targets ios, iosimulator,
501        and osx noopt configs, bump to xcode8, add xcode8.2 config, mimick
502        build_apple_frameworks options, alway upgrade pip, add pip --version and
503        which pip after upgrading, remove --user, use expandwaf in install, remove
504        unused ARCH, shuffle order, remove duplicate, add missing opening quote,
505        use AUBIO_NOTESTS to build only lib on ios, add gitter webhook
506        * .appveyor.yml: fix path for windows+python 3.5, fix typo in path, make
507        nose2 tests verbose
508
5092016-08-16 Paul Brossier <piem@aubio.org>
510
511        [ Interface ]
512
513        * src/io/source.h, src/io/source_*.h: add _get_duration
514        * src/notes/notes.h: add basic notes object
515        * src/tempo/beattracking.{c,h}: add _get_period and _get_period_s
516        * src/mathutils.h: add fvec_ishift
517        * src/fvec.{c,h}: add fvec_weighted_copy
518        * src/tempo/tempo.{c,h}: add _get_period and _get_period_s, also add tatum,
519        a subdivision of the beat period, default to 4, implement get/set_delay
520        * src/**.{c,h}: use #ifdef HAVE_FOO, not #if _HAVE_FOO, add const qualifiers
521        to unmodified pointers (see #35)
522
523        [ Library ]
524
525        * src/{fmat,fvec,mathutils}.c: optimisations (using atlas or Accelerate when
526        available) for fvec_sum, fvec_mean, fvec_shift, aubio_level_lin,
527        fvec_set_all, fvec_zeros, fvec_weight, fvec_copy, fvec_weighted_copy,
528        fmat_vecmul
529        * src/aubio_priv.h: check for atlas cblas, use cblas_xswap, vDSP_dotpr,
530        protect SQR parameters, avoid redefining MIN/MAX, define PATH_MAX and PI
531        when needed, use _isnan on windows msvc 9 to avoid linking error, more
532        windows hacks
533        * src/mathutils.c: avoid for loop initial declarations [gcc], use
534        HAVE_ATLAS, use smpl_t for constants
535        * src/fmat.c: skip asserts
536        * src/spectral/{filterbank,mfcc}.c: use accelerated fmat_vecmul
537        * src/spectral/fft.c: fftw can be used odd length sizes, not Ooura,
538        factorise double / single flags, use memcpy
539        * src/spectral/phasevoc.c: fix arguments checks, return NULL when fft
540        creation failed , apply windowing for resynthesized grain, use ishift for
541        odd windows, fix scaling factors for correct reconstruction at 50 and 75%
542        overlap
543        * src/pitch/pitch.c: allow for silence == 0, improve error messages
544        * src/pitch/pitchmcomb.c: fix candidates sorting function, really comparing
545        current to next
546        * src/notes/notes.c: equivalent to previous examples/aubionotes.c results
547        * src/onset/onset.c: simplify selection of first onset, fix for "conversion
548        from 'smpl_t' to 'uint_t', possible loss of data" with msvc
549        * src/pitch/pitchmcomb.c: scan across all spectrum
550        * src/pitch/pitchyinfft.c: use fvec_weighted_copy
551        * src/{spectral/*.c,onset/*.c,tempo/*.c}: make sure win_size > 1
552        * src/io/*.c: use custom defines for {source,sink}_apple_audio, take a copy
553        of const char* path
554        * src/io/source_avcodec.c:
555         - update to libav10, libavcodec 55.34.1
556         - avoid deprecation warning, detect if we use ffmpeg or libav version
557         - check if the uri is a network stream using av_url_split, call
558         avformat_network_init() if needed
559         - check if we still need max_analyze_duration2 (closes #53, thanks to
560         @anthonylauzon)
561        * src/io/source_{avcodec,sndfile}.c: avoid modifying input param
562        * src/io/{sink,source,utils}_apple_audio.c: fix memory leak calling
563        CFRelease (closes #26, closes #27, and closes #28)
564        * src/io/sink_apple_audio.c: disable async mode for now, factorise code
565        * src/io/source_apple_audio.c: check out of bounds _seek, set s->path, quiet
566        * src/io/source_sndfile.c: fix crash, zero-pad output vector when
567        upsampling, use sf_read_double when compiling with AUBIO_DOUBLE, approximate
568        duration when resampling
569        * src/io/sink_sndfile.c: fix for double precision
570        * src/synth/sampler.c: fix typo, keeps a copy of uri
571        * src/tempo/tempo.c: do not write novelty function in output[1]
572        * src/temporal/resampler.c: make msvc happier adding a dummy variable
573        * src/temporal/filter.c: check parameters, fix filter_do_outplace to really
574        avoid modifying input
575        * src/utils/windll.c: add dll main entry point
576
577        [ Python ]
578
579        * General:
580          - new build system, new code generator
581          - Python 3 compatibility (#33), thanks to Nils Philippsen (@nphilipp)
582          - double precision compatibility
583          - simplify memory allocations, removed unneeded malloc/free calls
584          - fix memory leak (#49), check input sizes (#63) and output sizes (#60)
585          - improve indentation, clean up unused imports and variables
586          - fix comparison to None and to False
587        * setup.py: move from python/setup.py, add option to build libaubio inside
588        python-aubio (for instance with pip), add command 'generate' with option
589        '--enable-double', build with -Wdeclaration-after-statement -Werror
590        * python/ext/aubiomodule.c: fix PyMethodDef sentinel
591        * python/ext/aubioproxy.c: factorize input checks into
592        PyAubio_IsValidVector, fix windows c89 compilation, use npy_intp, not long
593        * python/ext: rewrite and simplify, safer and improved memory usage (#49),
594        improve error strings, verify actual object creation
595        * python/ext/py-source.c: added duration, check seek is not negative
596        * python/ext/py-musicutils.c: do not overwrite PyArg_ParseTuple messages
597        * python/lib/gen_code.py: new generator, switch to using custom PyObjects
598        instead of fvec, cvec, fmat, ready for double precision (defaults to single)
599        * python/lib/aubio__init__.py: use new aubio.float_type, make sure length is
600        not zero and float_type is imported
601        * python/lib/aubio/midiconv.py: fix instance checks, make sure midi2note
602        uses midi int (#33)
603        * python/lib/aubio/slicing.py: fix samplerate
604        * python/ext/aubio-types.h: add new_py_ functions to create PyObjects
605        instead of fvec_t, apply to generated and hard-coded objects
606        * python/lib/gen_external.py: improve compiler detection, fixes build on
607        windows (#55)
608        * python/lib/moresetuptools.py: helpers for windows and macos compilations
609
610        [  Python demos ]
611
612        * python/demos/demo_reading_speed.py: new reading speed tests, external
613        packages disabled by default
614        * python/demos/demo_timestretch.py: new timescale algorithm
615        * python/demos/demo_timestretch_online.py: new timescale algorithm (online
616        version)
617        * python/demos/demo_create_test_sounds.py: add script to create simple sound
618        files to test on using sox
619        * python/demos/demo_a_weighting.py: add simple demo for a_weighting
620        * python/demos/demo_filter.py: moved from _a_weighting
621        * python/demos/demo_mfcc.py: use n_coeffs
622        * python/demos/demo_bpm_extract.py: add exception type, avoid {} as default
623        argument value
624        * python/demos/demo_pysoundcard_*: update to pysoundcard 0.5.2 (closes #42)
625        * python/scripts/aubiocut: fix usage string output
626
627        [ Python tests ]
628
629        * python/tests/run_all_tests,*.py: switch to nose2, fix most prospect warnings
630        * python/tests/test_fvec.py: add test_pass_to_numpy, cope with accumulated
631        errors
632        * python/tests/test_cvec.py: simplify, add more tests
633        * python/tests/test_fft.py: more tests, fft.do to clash on wrong size
634        inputs, f.rdo input size, cvec is large enough, memory tests, avoid
635        VisibleDeprecationWarning
636        * python/tests/test_filterbank.py: check for wrong values, ValueError raised
637        * python/tests/test_filter.py: add tests
638        * python/tests/test_musicutils.py: simplify, check TypeError is raised
639        * python/tests/test_mfcc.py: more tests, check for wrong input size (see #63)
640        * python/tests/test_mathutils: fix test_miditobin test, can also raise
641        NotImplementedError (darwin)
642        * python/tests/test_note2midi.py: more tests, use unicode_literals
643        * python/tests/test_phasevoc.py: add a note about ocasional crash check
644        perfect reconstruction for overlap > 75% add 50% overlap test, fix duplicate
645        test name, add wrong sized input tests
646        * python/tests/test_sink.py: remove useless many_sinks_not_closed and cruft
647        * python/tests/test_source.py: simplify, quieten, skip tests if no test sounds
648        * python/tests/test_specdesc.py: check for wrong values, skip wrong name
649        test, use correct input size (see #63)
650        * python/tests/utils.py: try reopening the file is deleting it fails on windows
651        * python/VERSION: removed, use same VERSION file for libaubio and python-aubio
652        * MANIFEST.in: move from python/, update contents
653        * nose2.cfg: add minimal config, set multiprocess always-on=false (fixes
654        coverage, pass -N to speed up the tests)
655
656        [ Tools ]
657
658        * examples/*.c: add time format option
659        * examples/{aubioonset,aubiotrack}.c: also emit midi note, thanks to
660        @topas-rec (closes #62)
661        * examples/: use outmsg to print notes (fixes #8)
662        * examples/aubionotes.c: use new aubio_notes object
663        * examples/aubiotrack.c: enable -O and -t options, fix is_beat/is_silence
664        types
665        * examples/{parse_args,utils}.h: check in config.h if getopt.h was found, or
666        build without for msvc, more windows hacks
667        * examples/utils.c: change send_noteon to accept floating point midi note number
668
669        [ Tests ]
670
671        * tests/src/io/test-source_apple_audio.c: shorten long line
672        * tests/src/io/test-source_avcodec.c: use HAVE_LIBAV, closes #10
673        * tests/src/temporal: avoid crash, clarify
674        * tests/src/tempo/test-tempo.c: tempo back to only one output
675        * tests/src/test-delnull.c: improve test, avoid segfaults
676        * tests/src/test-lvec.c: use AUBIO_LSMP_FMT
677        * tests/utils_tests.h: add VA_ARGS versions of variadic macros
678        * tests/utils_tests.h: also use custom srandom/random when compiling with
679        -std=c99
680        * tests/utils_tests.h: make sure M_PI and RAND_MAX are defined
681
682        [ Build ]
683
684        * Makefile: set waf to 1.8.22 for now, new targets create_test_sounds,
685        build_python, test_python, clean_python, build_python3, clean_python3,
686        test_pure_python, test_pure_python_wheel, (use test_pure_* targets to build
687        without libaubio), use 'HAVE_DOUBLE=1 make' to build in double precision
688        * scripts/build_apple_frameworks: add script to build macosx and ios
689        frameworks (see #34, #43)
690        * scripts/build_emscripten: add script to build with emcc and co
691        * scripts/build_mingw: add script to cross-compile using mingw
692        * scripts/get_waf.sh: added simple script to fetch latest waf
693        * scripts/setenv_local.sh: set environment to run from built source tree
694        * scripts/setenv_local.sh: update to new python-aubio build location
695        * tests/wscript_build: do not install test programs
696        * tests/wscript_build, src/wscript_build: use 'use =', simplify
697        * src/wscript_build: enable shared lib on ios, static lib on windows
698        * wscript:
699          - update --enable-foo to fail if foo is not found
700          - add -mmacosx-version-min=10.4 on darwin
701          - add '-fembed-bitcode' on ios (closes #31), min to 6.1
702          - make fat build, add option to not build with Accelerate framework
703          - add option to not build with CoreAudio/AudioToolbox
704          - add --disable-docs option
705          - add -lm detection
706          - pass HAVE_AUBIO_DOUBLE in compiler arguments
707          - first check for headers, make getopt.h and unistd.h optional
708          - check HAVE_AV* from ctx.env
709          - make msvc compiler quieter, add /MD and /D_CRT_SECURE_NO_WARNINGS
710          - check if we find atlas/cblas.h
711          - new build platform emscripten
712          - more cleanups and updates
713
714        [ Only in git ]
715
716        * .travis.yml: config for https://travis-ci.org/aubio/aubio
717        * .appveyor.yml: config for https://ci.appveyor.com/project/piem/aubio
718        * .landscape.yml: config for https://landscape.io/github/aubio/aubio
719        * conda recipes: see https://github.com/conda/conda-recipes#387
720        * .gitignore: add python/tests/sounds and .egg-info
721
722        [ General ]
723
724        * src/: remove trailing spaces, improve doxygen strings, update copyrights,
725        fix typos
726        * src/onset/onset.h: fix description of get/set_delay functions
727        * src/spectral/mfcc.h: add link to reference implementation
728        * src/spectral/filterbank_mel.h: update reference url
729        * src/musicutils.h: update link to Bernardini's paper, improve doc
730        * doc/aubiomfcc.txt: add a note about the output
731        * doc/*.cfg: update to Doxygen 1.8.8
732        * python/README.md: fix typo (thanks to Sam Alexander), document how to
733        build in a virtualenv (see #2)
734        * README.md: minor updates, link to python/README.md, switch to https
735        * VERSION: bump to 0.4.3
736
7372015-08-01 Paul Brossier <piem@aubio.org>
738
739        [ Interface ]
740        * src/onset/onset.h: add aubio_onset_get_silence(), fix description of
741        aubio_onset_get/set_delay functions
742        * src/tempo/tempo.h: add aubio_tempo_get_silence and aubio_tempo_get_threshold
743
744        [ Library ]
745        * src/io/audio_unit.c: fix deprecation warning (closes #16)
746        * src/io/sink_apple_audio.c: avoid opening null path
747        * src/io/sink_sndfile.c: improve error messages, set nsamples after write
748        * src/io/sink_wavwrite.c: fail if samplerate is way too large, assume
749        windows is little endian to build with mingw32
750        * src/io/source_apple_audio.c: check out of bounds _seek, set s->path, quiet
751        * src/io/source_avcodec.c: update to libav10, libavcodec 55.34.1
752        * src/io/source_sndfile.c: cast to uint_t for now, clarify some variables
753        names, fix crash, zero-pad output vector when upsampling, improve seek errors and strings
754        * src/io/source_wavread.c: avoid orphan parenthesis , cast size_t to int to
755        avoid warning on win64 , improve seek errors processing , sync error message
756        * src/onset/onset.c: avoid doubled onset at start, check parameters
757        * src/pitch/pitch.c: add Hertz as valid unit string, check parameters
758        * src/pitch/pitchyin.c, src/pitch/pitchyinfft.c: avoid producing NaN on silence (closes #7)
759        * src/pitch/pitchyin.{c,h}: fix typo, developed
760        * src/spectral/phasevoc.c: fix argument checks, improve error messages
761        * src/synth/sampler.c: make sure blocksize > 0
762        * src/tempo/beattracking.c: avoid segfault on silence (closes #24)
763        * src/tempo/tempo.c: add silence detection (closes #23), add old behavior in
764        examples/aubiotrack.c, check parameters
765        * src/*.c: fix some useless float conversion
766
767        [ Python ]
768        * python/ext/aubiomodule.c: improve documentation
769        * python/ext/py-musicutils.c: add silence_detection (closes #21),
770        level_detection, db_spl, level_lin, complete window implementation
771        * python/ext/py-source.c: add channels, add seek (closes #9)
772        * python/demos/demo_a_weighting.py: add simple demo for a_weighting
773        * python/demos/demo_sink_multi.py: add multi channel version
774        * python/demos/, python/demos/: minor improvements, improve syntax (closes #19)
775        * python/setup.py: use setuptools, add numpy to install_requires
776
777        [ Build ]
778        * waf: removed, now automatically downloaded with make, updated to 1.8.12
779        * Makefile: add target to fetch waf and basic instructions
780        * .travis.yml: added template for travis continuous integration
781        * {examples,src,tests}/wscript_build: add external libs and uselib to targets
782        * src/wscript_build: do not hardocode install path
783        * wscript, src/io/*.c: use custom defines instead of __APPLE__
784        * wscript: make fat build optional, remove iOS sdk versioning
785
786        [ General ]
787        * examples/: use outmsg to print notes (fixes #8)
788        * examples/parse_args.h: improve short documentation (closes #12)
789        * doc/*.cfg: remove html timestamps to make build reproducible (see debian bug #779216)
790        * doc/aubiocut.txt: improve documentation
791        * doc/*.rst: add sphinx documentation basis with Makefile and conf.py
792        * README.md: minor updates
793        * python.old: removed old code
794        * tests/: minor bug fixing
795
7962014-01-31 Paul Brossier <piem@aubio.org>
797
798        [ Interface ]
799        * src/io/{source_wavread,sink_wavwrite}.h: new source and sink objects to
800        read and write simple wav files when building with no external dependencies
801        * src/io/{source,sink}*.h: added close functions to explicitly close file
802        * src/io/sink*.h: added do_multi, preset_channels, preset_samplerate,
803        get_channels and get_samplerate functions
804        * src/onset/onset.h: added aubio_onset_get_threshold
805        * src/mathutils.h: add fvec_quadratic_peak_mag to find the magnitude of
806        interpolated peaks
807
808        [ Library ]
809        * src/io/source_avcodec.c: implement _seek function
810        * src/io/source_sndfile.c: fixed _seek when signal is resampled
811        * src/spectral/ooura_fft8g.c: use float when double is not needed
812        * src/io/{source,sink}_apple_audio.c: improve error messages
813        * src/spectral/phasevoc.c: optimize swapbuffers by using memcpy
814        * src/lvec.c: add missing lvec_set_sample, improve test
815        * src/tempo/beattracking.c: improve confidence values by using interpolated
816        peak magnitude and avoiding nan
817        * src/tempo/tempo_davies.c: set default novelty function to specflux
818
819        [ Python module ]
820        * python/ext/py-{sink,source}.c: add do_multi and close functions
821        * python/ext/aubio-types.h: set NPY_NO_DEPRECATED_API to version 1.7
822        * python/lib/aubio/slicing.py: new function to slice a source into a list of
823        arbitrary regions
824        * python/scripts/aubiocut: add options --cut-until-nsamples and
825        --cut-until-nsclices, thanks to Mark Suppes for requesting, sponsoring,
826        and testing this feature
827
828        [ General code ]
829        * src/aubio_priv.h: use ifdefs to avoid checking undefined defines
830        * src/**.c: add missing prototypes, avoid some declarations after statement
831        * waf, waflib: update to 1.7.15
832
8332013-12-08  Paul Brossier <piem@aubio.org>
834
835        * Overdue: After more than five years of development behind the curtain,
836        time has come to release a new version of aubio.
837
838        * General: The library has been completely revised since 0.3.2. The API has
839        seen a major clean up, and has been thoroughly tested. The following list of
840        changes is not exhaustive.
841
842        * Memory management: allocation and freeing of memory has been optimized in
843        many ways. Several memory leaks and out of bound access have been fixed.
844
845        * Optimization: the FFT, central to most algorithms, can now be computed
846        using different optimized algorithms, depending on what is available on your
847        platform (FFTW, Ooura, or vDSP). Other simple optimization tricks are
848        included. Most can be deactivated by configuring the build accordingly.
849
850        * python/: The python interface has been completely rewritten to use numpy C
851        interface, making the aubio python module order of magnitudes faster than
852        the previous version. Several demos and tests are included.
853
854        * src/: source and header files are now organized in sub-directories.
855
856        * src/io/source.h: new source readers can now use any or all of libav,
857        CoreAudio, and libsndfile. This means that aubio can now easily read most
858        uncompressed and compressed formats. Compiled with libav, aubio can also
859        read audio from video files, and over the network.
860
861        * src/io/sink.h: a new sink object lets you write wav files with any number
862        of channels, at any samplerate, using libsndfile or CoreAudio.
863
864        * src/onset, src/tempo/, src/pitch: the different methods for onset, tempo,
865        and pitch extraction have seen many bug-fixes and optimizations.
866
867        * src/spectral/specdesc.h: new onset distances and statistical measures have
868        been added.
869
870        * src/spectral/filterbank.h: new filter bank to compute the energy in any
871        custom-defined frequency bands.
872
873        * src/spectral/mfcc.h, examples/aubiomfcc.c: a standard implementation of
874        the Mel-Frequency Cepstrum Coefficients algorithm has been added.
875
876        * src/temporal/{a,c}_weighting.h: standard implementation of the C-weighting
877        and A-weighting pre-processing filters are now provided for most commons
878        sampling rates.
879
880        * src/synth/wavetable.h, src/synth/sampler.h: provide basic ways to generate
881        some sounds.
882
883        * src/fvec.h: fvec_t, the vector object central to most aubio algorithms, is
884        now single channel. This simplifies the code of each algorithm greatly.
885
886        * src/lvec.h: lvec_t provides a double precision vector, required for some
887        operations to avoid floating point overflow
888
889        * src/fmat.h: fmat_t provides a single precision matrix, useful for
890        multi-channel operations and to some algorithms such as the spectral filter
891        bank.
892
893        * examples/: several new options, including new programs, have been
894        included. Refer to the documentation for details.
895
896        * tests/: several tests and examples programs have been added. This should
897        be a good place to look at to understand how to use aubio.
898
899        * doc/web.cfg: a simplified Doxygen configuration produces a simpler html
900        documentation.
901
902        * doc/*.txt: the manpages have been rewritten for txt2man.
903
904        * Build system: the build system has been switched from autotools/automake
905        to waf. Type './waf' or see README.md for instructions on how to use waf.
906
9072006-11-10  Paul Brossier <piem@altern.org>
908        * configure.ac: check c compiler for -Wextra option
909        * examples/*: add lash support to aubioonset, aubiotrack, and aubionotes
910        * */Makefile.am: improve compilation on Mac OS X, mingw and cygwin
911        * src/{onset,tempo}.[ch]: add simple c interfaces to onset and tempo tasks
912        * src/beattracking.c: allow the use of two beat trackers simultaneously
913        * examples/tests: add test programs for most c functions
914        * src/*.c: add most missing free calls
915        * src/*.c: fix some out of array writes
916        * src/,ext/: more gcc warning fixes
917
9182006-27-06  Paul Brossier <piem@altern.org>
919        * plugins/puredata/Makefile.am: move pd help to pattern-help.pd
920                - thanks goes to Frank Barknecht
921        * ext/sndfileio.c src/aubio_priv.h: fixes memset in aubio_priv.h, remove
922                useless sfinfo.format=0 - thanks karsten wiese
923        * ext/midi/midi_alsa_seq.c: do not call pthread_ in aubio_midi_direct_output
924                - thanks karsten wiese
925        * python/aubio/task/beat.py: task beat() output seconds
926        * python/aubio/task/beat.py: ugly hack to plot beat track anyway
927        * examples/aubionotes.c: fix signed/unsigned mismatches in examples
928        * src/beattracking.c: fix signed/unsigned mismatches in beattracking
929        * src/pitchfcomb.c: fix signed/unsigned mismatches in pitchfcomb
930        * src/pitchschmitt.c: fix signed/unsigned mismatches in pitchscmitt
931        * configure.ac: use -Wextra but unused parameters, fix macos CFLAGS
932        * plugins/puredata/Makefile.am: simplify puredata Makefile.am
933        * python/aubio/Makefile.am: avoid overwriting CFLAGS
934        * examples/Makefile.am: use top_{build,src}dir instead of ../
935        * configure.ac: make configure.ac more readable
936        * python/aubio/task/cut.py: use os.path to derive default output filenames
937        * VERSION: 0.3.1
938
9392006-18-05 Paul Brossier <piem@altern.org>
940        * src/pitchyinfft.{c,h}: new pitch detection method
941        * src/beattracking.c: algorithm improved
942        * plugins/puredata/: new puredata external
943        * python/tasks: enhancements to the onset detection algorithms
944        * python/aubiocut: improved, can now slice at beats and silences
945        * python/aubiopitch: new python program to extract pitch tracks
946        * python/: plotting features for aubiocut and aubiopitch
947        * python/: interface refactored
948        * doc/: updated documentation
949        * VERSION: 0.3.0
950
9512006-18-05  Paul Brossier <piem@altern.org>
952        * src/beattracking.c: added beattracking.c
953        * various bug fixes
954        * VERSION: 0.2.0
955
9562005-29-03  Paul Brossier <piem@altern.org>
957        * python/aubio/gnuplot.py: clean up and add plotsound
958        * python/aubiocompare-onset: updated
959        * examples/aubioonset.c: fix text output when nframes<4
960        * ext/midi/midi_file.c: by default, int is unsigned on powerpc
961        * python/aubiocut, python/aubio/aubioclass.py: updated
962        * ext/midi/midi_alsa_seq.c: activated threading
963        * configure.ac,Makefile.am: added rules to check presence
964         of swig, python, puredata and docbook-to-man.
965
9662005-17-03  Paul Brossier <piem@altern.org>
967        * examples/utils.{c,h}:  corrected usedoubled and -O interactions
968        * examples/aubioonset.c: added frames>=4 check (thanks Hamish Allan)
969
9702004-12-11  Paul Brossier <piem@altern,org>
971        * swig/Makefile.am: instructions moved to python/aubio and cleaned
972        * python/aubiocut: corrected slicing on multichannel files
973        * VERSION: bumped to 0.1.8
974
9752004-12-06  Paul Brossier <piem@altern.org>
976        * examples/{midi*,testforclam}.c: removed
977        * src/{sndfile,midi*,jackio}.[ch]: moved to ext
978
9792004-12-03  Paul Brossier <piem@altern.org>
980        * src/{mathutils,pitchyin}.h: got rid of some shadowed declarations
981        * plugins/puredata: first puredata plugin attempt added
982
9832004-11-30  Paul Brossier <piem@altern.org>
984        * configure.ac: added -lmx on macosx
985        * python/aubiocut: seeks for local minima before peak
986                           added zero crossing search
987        * src/pitchyinc.c: adds draft for all-in-one faster function
988        * examples/*.c: added ladcca client (needs work)
989        * examples/aubioonset.c: cleaned up verbose stdout
990        * doc/aubio.css: updated
991
9922004-10-28  Paul Brossier <piem@altern.org>
993        * src/Makefile.am: added config.h installation
994        * VERSION: 0.1.7.1
995
9962004-10-26  Paul Brossier <piem@altern.org>:
997        * src/pitchdetection.*: moved to src/pitchmcomb.*, now includes a
998        draft driver for transparent use of mcomb or yin
999        * src/pitchmcomb.*: added from old src/pitchdetection.*
1000        * VERSION: 0.1.7
1001
10022004-10-20  Paul Brossier <piem@altern.org>:
1003        * configure.ac: made fftw3f, alsa and jack optional
1004        * src/fft.{c,h}: now uses FFTW3F_SUPPORT
1005        * src/timer.c: #if 0 on win32 version
1006
10072004-10-18  Paul Brossier <piem@altern.org>:
1008        * src/{fft,cvec,pvoc}.c: fixed fft size (N/2+1)
1009        * src/{onsetdetection,tss}.c: fixed sizes as well
1010        * src/pvoc.c: fixed resynthesis scaling factor (still missing
1011        windowing), windowing added in pvoc_rdo
1012        * src/fft.h: removed FFTW typedef
1013        * configure.ac: removed AC_ISC_POSIX to compile on mingw32
1014        * src/fft.c: removed useless fftw3.h include
1015        * src/pitchmcomb.c: removed call to vec_adapt_thres (writes out of
1016        bounds)
1017
10182004-10-17  Paul Brossier <piem@altern.org>
1019        * src/sample.c: removed static _malloc, set all 0. (fixes nan bugs)
1020        * examples/*.c: removed useless pvoc inits
1021        * src/pitchyin.c: based on de Cheveigne paper
1022
10232004-09-17  Paul Brossier <piem@altern.org>
1024        * configure.ac,src/Makefile.am: cleaned up autotools process
1025        * examples/aubio*.c: removed some useless code.
1026        * src/sample.c: removed crazy call to memset
1027
10282004-09-02  Paul Brossier <piem@altern.org>
1029        * src/sndfileio.c: removed abusive call to AUBIO_ARRAY,
1030        defined MAX_SIZE instead.
1031        * src/onsetdetection.c: rewritten free_function.
1032        * src/phasevoc.c: in aubio_pvoc_rdo, one way writing only
1033        * swig/, python/aubio: added swig wrapper, played a bit with
1034        python interface.
1035        * src/aubio.h: now includes midi_driver.h
1036
10372004-06-25  Paul Brossier <piem@altern.org>
1038        * src/peakpick.h:
1039           renamed pickparams_t to aubio_pickpeak_t
1040           disabled samer_pp (broken)
1041           added del_aubio_peakpick
1042           added aubio_peakpick_pimrt_wt (thanks mramirez)
1043        * python/aubio/onsetcompare.py: now works on huge list
1044           thanks goes to Nicolas Wack
1045        * examples/aubionotes.c: now outputs NOTEONs
1046        * configure.ac: quick hack to disable jack and alsa
1047        * examples/*usingjack*: more hacking to disable jack
1048        * README: some updates
1049
10502004-06-23  Paul Brossier <piem@altern.org>
1051        * src/*.h: added C++ ifdefs in header files
1052        * src/fft.h: removed complex.h include in header
1053        * src/hist.c: fixed out of array indexes
1054                thanks Miguel Ramirez!
1055        * src/Makefile.am: added install headers
1056        * doc/Makefile.am: removed dist-hook to update-docs
1057        * sounds/Makefile.am: added install hooks
1058        * aubio.pc.in: added aubio.pc generation for pkg-config
1059        * python: added some evaluation functions
1060        * src/aubio_priv.h: moved AUBIO_DBG to stderr
1061        * examples/utils.h: now outputs on stdout
1062        * examples/midi*.c: fixed compilation with gcc-2.95
1063        * VERSION: 0.1.4
1064
10652004-04-27  Paul Brossier <piem@altern.org>
1066        * pitchdetection.c: fixed, still not great
1067        * Makefile.am: fixed missing headers (thank you Charbel)
1068        * aubioonset,aubionotes: renamed for install (were *demo files)
1069        * First working release: 0.1.3
1070
10712004-01-31  Paul Brossier <piem@altern.org>
1072        * pitchdetection.c: working, still a bit too picky
1073        * filter.c: sizeable biquad, fixed via pitchtest.c
1074        * types.h: added file, all generic system wide types.
1075        * tss.c: added some speed improvements
1076
10772004-01-20  Paul Brossier <piem@altern.org>
1078        * peakpick.c: working real time onset detection
1079        * biquad.c: needs fixing
1080
10812004-01-10  Paul Brossier <piem@altern.org>
1082        * long time i didn't touch this file
1083        * added various objects
1084        * working onsetdetectors
1085        * various examples
1086        * splitted in a dynamic library
1087        * functions renamed (new_. del_. aubio_._do)
1088        * VERSION: 0.1.0_alpha
1089
10902003-11-04  Paul Brossier <piem@altern.org>
1091        * aubio.h: degrouping in modules
1092        * VERSION: 0.0.6_alpha
1093
10942003-11-03  Paul Brossier <piem@altern.org>
1095        * phasevoc.c: fixed memory acces
1096        * jackio.c: moving to ringbuffer type implementation
1097        * VERSION: 0.0.4_alpha
1098
10992003-11-03  Paul Brossier <piem@altern.org>
1100        * jackio.c: added jack support
1101        * aubioenc.c: fixed memory freeing bugs
1102        * VERSION: 0.0.3_alpha
1103
11042003-10-29  Paul Brossier <piem@altern.org>
1105        * aubio.h: Grouping all headers
1106        * makefile.am: Running first make dist
1107        * VERSION: 0.0.2alpha
1108 
11092003-10-18  Paul Brossier <piem@altern.org>
1110        * aubioenc.c: Working phase vocoder
1111        * VERSION: 0.0.1alpha
Note: See TracBrowser for help on using the repository browser.