bc6b4ca63e1cf8d61e4a14d4fed456c86110b148
[aubio.git] / ChangeLog
1 2015-08-16 Paul Brossier <piem@aubio.org>
2
3         [ Interface ]
4
5         * src/io/source.h, src/io/source_*.h: add _get_duration
6         * src/notes/notes.h: add basic notes object
7         * src/tempo/beattracking.{c,h}: add _get_period and _get_period_s
8         * src/mathutils.h: add fvec_ishift
9         * src/fvec.{c,h}: add fvec_weighted_copy
10         * src/tempo/tempo.{c,h}: add _get_period and _get_period_s, also add tatum,
11         a subdivision of the beat period, default to 4, implement get/set_delay
12         * src/**.{c,h}: use #ifdef HAVE_FOO, not #if _HAVE_FOO, add const qualifiers
13         to unmodified pointers (see #35)
14
15         [ Library ]
16
17         * src/{fmat,fvec,mathutils}.c: optimisations (using atlas or Accelerate when
18         available) for fvec_sum, fvec_mean, fvec_shift, aubio_level_lin,
19         fvec_set_all, fvec_zeros, fvec_weight, fvec_copy, fvec_weighted_copy,
20         fmat_vecmul
21         * src/aubio_priv.h: check for atlas cblas, use cblas_xswap, vDSP_dotpr,
22         protect SQR parameters, avoid redefining MIN/MAX, define PATH_MAX and PI
23         when needed, use _isnan on windows msvc 9 to avoid linking error, more
24         windows hacks
25         * src/mathutils.c: avoid for loop initial declarations [gcc], use
26         HAVE_ATLAS, use smpl_t for constants
27         * src/fmat.c: skip asserts
28         * src/spectral/{filterbank,mfcc}.c: use accelerated fmat_vecmul
29         * src/spectral/fft.c: fftw can be used odd length sizes, not Ooura,
30         factorise double / single flags, use memcpy
31         * src/spectral/phasevoc.c: fix arguments checks, return NULL when fft
32         creation failed , apply windowing for resynthesized grain, use ishift for
33         odd windows, fix scaling factors for correct reconstruction at 50 and 75%
34         overlap
35         * src/pitch/pitch.c: allow for silence == 0, improve error messages
36         * src/pitch/pitchmcomb.c: fix candidates sorting function, really comparing
37         current to next
38         * src/notes/notes.c: equivalent to previous examples/aubionotes.c results
39         * src/onset/onset.c: simplify selection of first onset, fix for "conversion
40         from 'smpl_t' to 'uint_t', possible loss of data" with msvc
41         * src/pitch/pitchmcomb.c: scan across all spectrum
42         * src/pitch/pitchyinfft.c: use fvec_weighted_copy
43         * src/{spectral/*.c,onset/*.c,tempo/*.c}: make sure win_size > 1
44         * src/io/*.c: use custom defines for {source,sink}_apple_audio, take a copy
45         of const char* path
46         * src/io/source_avcodec.c:
47          - update to libav10, libavcodec 55.34.1
48          - avoid deprecation warning, detect if we use ffmpeg or libav version
49          - check if the uri is a network stream using av_url_split, call
50          avformat_network_init() if needed
51          - check if we still need max_analyze_duration2 (closes #53, thanks to
52          @anthonylauzon)
53         * src/io/source_{avcodec,sndfile}.c: avoid modifying input param
54         * src/io/{sink,source,utils}_apple_audio.c: fix memory leak calling
55         CFRelease (closes #26, closes #27, and closes #28)
56         * src/io/sink_apple_audio.c: disable async mode for now, factorise code
57         * src/io/source_apple_audio.c: check out of bounds _seek, set s->path, quiet
58         * src/io/source_sndfile.c: fix crash, zero-pad output vector when
59         upsampling, use sf_read_double when compiling with AUBIO_DOUBLE, approximate
60         duration when resampling
61         * src/io/sink_sndfile.c: fix for double precision
62         * src/synth/sampler.c: fix typo, keeps a copy of uri
63         * src/tempo/tempo.c: do not write novelty function in output[1]
64         * src/temporal/resampler.c: make msvc happier adding a dummy variable
65         * src/temporal/filter.c: check parameters, fix filter_do_outplace to really
66         avoid modifying input
67         * src/utils/windll.c: add dll main entry point
68
69         [ Python ]
70
71         * General:
72           - new build system, new code generator
73           - Python 3 compatibility (#33), thanks to Nils Philippsen (@nphilipp)
74           - double precision compatibility
75           - simplify memory allocations, removed unneeded malloc/free calls
76           - fix memory leak (#49), check input sizes (#63) and output sizes (#60)
77           - improve indentation, clean up unused imports and variables
78           - fix comparison to None and to False
79         * setup.py: move from python/setup.py, add option to build libaubio inside
80         python-aubio (for instance with pip), add command 'generate' with option
81         '--enable-double', build with -Wdeclaration-after-statement -Werror
82         * python/ext/aubiomodule.c: fix PyMethodDef sentinel
83         * python/ext/aubioproxy.c: factorize input checks into
84         PyAubio_IsValidVector, fix windows c89 compilation, use npy_intp, not long
85         * python/ext: rewrite and simplify, safer and improved memory usage (#49),
86         improve error strings, verify actual object creation
87         * python/ext/py-source.c: added duration, check seek is not negative
88         * python/ext/py-musicutils.c: do not overwrite PyArg_ParseTuple messages
89         * python/lib/gen_code.py: new generator, switch to using custom PyObjects
90         instead of fvec, cvec, fmat, ready for double precision (defaults to single)
91         * python/lib/aubio__init__.py: use new aubio.float_type, make sure length is
92         not zero and float_type is imported
93         * python/lib/aubio/midiconv.py: fix instance checks, make sure midi2note
94         uses midi int (#33)
95         * python/lib/aubio/slicing.py: fix samplerate
96         * python/ext/aubio-types.h: add new_py_ functions to create PyObjects
97         instead of fvec_t, apply to generated and hard-coded objects
98         * python/lib/gen_external.py: improve compiler detection, fixes build on
99         windows (#55)
100         * python/lib/moresetuptools.py: helpers for windows and macos compilations
101
102         [  Python demos ]
103
104         * python/demos/demo_reading_speed.py: new reading speed tests, external
105         packages disabled by default
106         * python/demos/demo_timestretch.py: new timescale algorithm
107         * python/demos/demo_timestretch_online.py: new timescale algorithm (online
108         version)
109         * python/demos/demo_create_test_sounds.py: add script to create simple sound
110         files to test on using sox
111         * python/demos/demo_a_weighting.py: add simple demo for a_weighting
112         * python/demos/demo_filter.py: moved from _a_weighting
113         * python/demos/demo_mfcc.py: use n_coeffs
114         * python/demos/demo_bpm_extract.py: add exception type, avoid {} as default
115         argument value
116         * python/demos/demo_pysoundcard_*: update to pysoundcard 0.5.2 (closes #42)
117         * python/scripts/aubiocut: fix usage string output
118
119         [ Python tests ]
120         * python/tests/run_all_tests,*.py: switch to nose2, fix most prospect warnings
121         * python/tests/test_fvec.py: add test_pass_to_numpy, cope with accumulated
122         errors
123         * python/tests/test_cvec.py: simplify, add more tests
124         * python/tests/test_fft.py: more tests, fft.do to clash on wrong size
125         inputs, f.rdo input size, cvec is large enough, memory tests, avoid
126         VisibleDeprecationWarning
127         * python/tests/test_filterbank.py: check for wrong values, ValueError raised
128         * python/tests/test_filter.py: add tests
129         * python/tests/test_musicutils.py: simplify, check TypeError is raised
130         * python/tests/test_mfcc.py: more tests, check for wrong input size (see #63)
131         * python/tests/test_mathutils: fix test_miditobin test, can also raise
132         NotImplementedError (darwin)
133         * python/tests/test_note2midi.py: more tests, use unicode_literals
134         * python/tests/test_phasevoc.py: add a note about ocasional crash check
135         perfect reconstruction for overlap > 75% add 50% overlap test, fix duplicate
136         test name, add wrong sized input tests
137         * python/tests/test_sink.py: remove useless many_sinks_not_closed and cruft
138         * python/tests/test_source.py: simplify, quieten, skip tests if no test sounds
139         * python/tests/test_specdesc.py: check for wrong values, skip wrong name
140         test, use correct input size (see #63)
141         * python/tests/utils.py: try reopening the file is deleting it fails on windows
142         * python/VERSION: removed, use same VERSION file for libaubio and python-aubio
143         * MANIFEST.in: move from python/, update contents
144         * nose2.cfg: add minimal config, set multiprocess always-on=false (fixes
145         coverage, pass -N to speed up the tests)
146
147         [ Tools ]
148
149         * examples/*.c: add time format option
150         * examples/{aubioonset,aubiotrack}.c: also emit midi note, thanks to
151         @topas-rec (closes #62)
152         * examples/: use outmsg to print notes (fixes #8)
153         * examples/aubionotes.c: use new aubio_notes object
154         * examples/aubiotrack.c: enable -O and -t options, fix is_beat/is_silence
155         types
156         * examples/{parse_args,utils}.h: check in config.h if getopt.h was found, or
157         build without for msvc, more windows hacks
158         * examples/utils.c: change send_noteon to accept floating point midi note number
159
160         [ Tests ]
161
162         * tests/src/io/test-source_apple_audio.c: shorten long line
163         * tests/src/io/test-source_avcodec.c: use HAVE_LIBAV, closes #10
164         * tests/src/temporal: avoid crash, clarify
165         * tests/src/tempo/test-tempo.c: tempo back to only one output
166         * tests/src/test-delnull.c: improve test, avoid segfaults
167         * tests/src/test-lvec.c: use AUBIO_LSMP_FMT
168         * tests/utils_tests.h: add VA_ARGS versions of variadic macros
169         * tests/utils_tests.h: also use custom srandom/random when compiling with
170         -std=c99
171         * tests/utils_tests.h: make sure M_PI and RAND_MAX are defined
172
173         [ Build ]
174
175         * Makefile: set waf to 1.8.22 for now, new targets create_test_sounds,
176         build_python, test_python, clean_python, build_python3, clean_python3,
177         test_pure_python, test_pure_python_wheel, (use test_pure_* targets to build
178         without libaubio), use 'HAVE_DOUBLE=1 make' to build in double precision
179         * scripts/build_apple_frameworks: add script to build macosx and ios
180         frameworks (see #34, #43)
181         * scripts/build_emscripten: add script to build with emcc and co
182         * scripts/build_mingw: add script to cross-compile using mingw
183         * scripts/get_waf.sh: added simple script to fetch latest waf
184         * scripts/setenv_local.sh: set environment to run from built source tree
185         * scripts/setenv_local.sh: update to new python-aubio build location
186         * tests/wscript_build: do not install test programs
187         * tests/wscript_build, src/wscript_build: use 'use =', simplify
188         * src/wscript_build: enable shared lib on ios, static lib on windows
189         * wscript:
190           - update --enable-foo to fail if foo is not found
191           - add -mmacosx-version-min=10.4 on darwin
192           - add '-fembed-bitcode' on ios (closes #31), min to 6.1
193           - make fat build, add option to not build with Accelerate framework
194           - add option to not build with CoreAudio/AudioToolbox
195           - add --disable-docs option
196           - add -lm detection
197           - pass HAVE_AUBIO_DOUBLE in compiler arguments
198           - first check for headers, make getopt.h and unistd.h optional
199           - check HAVE_AV* from ctx.env
200           - make msvc compiler quieter, add /MD and /D_CRT_SECURE_NO_WARNINGS
201           - check if we find atlas/cblas.h
202           - new build platform emscripten
203           - more cleanups and updates
204
205         [ Only in git ]
206
207         * .travis.yml: config for https://travis-ci.org/aubio/aubio
208         * .appveyor.yml: config for https://ci.appveyor.com/project/piem/aubio
209         * .landscape.yml: config for https://landscape.io/github/aubio/aubio
210         * conda recipes: see https://github.com/conda/conda-recipes#387
211         * .gitignore: add python/tests/sounds and .egg-info
212
213         [ General ]
214
215         * src/: remove trailing spaces, improve doxygen strings, update copyrights,
216         fix typos
217         * src/onset/onset.h: fix description of get/set_delay functions
218         * src/spectral/mfcc.h: add link to reference implementation
219         * src/spectral/filterbank_mel.h: update reference url
220         * src/musicutils.h: update link to Bernardini's paper, improve doc
221         * doc/aubiomfcc.txt: add a note about the output
222         * doc/*.cfg: update to Doxygen 1.8.8
223         * python/README.md: fix typo (thanks to Sam Alexander), document how to
224         build in a virtualenv (see #2)
225         * README.md: minor updates, link to python/README.md, switch to https
226         * VERSION: bump to 0.4.3
227
228 2015-08-01 Paul Brossier <piem@aubio.org>
229
230         [ Interface ]
231         * src/onset/onset.h: add aubio_onset_get_silence(), fix description of
232         aubio_onset_get/set_delay functions
233         * src/tempo/tempo.h: add aubio_tempo_get_silence and aubio_tempo_get_threshold
234
235         [ Library ]
236         * src/io/audio_unit.c: fix deprecation warning (closes #16)
237         * src/io/sink_apple_audio.c: avoid opening null path
238         * src/io/sink_sndfile.c: improve error messages, set nsamples after write
239         * src/io/sink_wavwrite.c: fail if samplerate is way too large, assume
240         windows is little endian to build with mingw32
241         * src/io/source_apple_audio.c: check out of bounds _seek, set s->path, quiet
242         * src/io/source_avcodec.c: update to libav10, libavcodec 55.34.1
243         * src/io/source_sndfile.c: cast to uint_t for now, clarify some variables
244         names, fix crash, zero-pad output vector when upsampling, improve seek errors and strings
245         * src/io/source_wavread.c: avoid orphan parenthesis , cast size_t to int to
246         avoid warning on win64 , improve seek errors processing , sync error message
247         * src/onset/onset.c: avoid doubled onset at start, check parameters
248         * src/pitch/pitch.c: add Hertz as valid unit string, check parameters
249         * src/pitch/pitchyin.c, src/pitch/pitchyinfft.c: avoid producing NaN on silence (closes #7)
250         * src/pitch/pitchyin.{c,h}: fix typo, developed
251         * src/spectral/phasevoc.c: fix argument checks, improve error messages
252         * src/synth/sampler.c: make sure blocksize > 0
253         * src/tempo/beattracking.c: avoid segfault on silence (closes #24)
254         * src/tempo/tempo.c: add silence detection (closes #23), add old behavior in
255         examples/aubiotrack.c, check parameters
256         * src/*.c: fix some useless float conversion
257
258         [ Python ]
259         * python/ext/aubiomodule.c: improve documentation
260         * python/ext/py-musicutils.c: add silence_detection (closes #21),
261         level_detection, db_spl, level_lin, complete window implementation
262         * python/ext/py-source.c: add channels, add seek (closes #9)
263         * python/demos/demo_a_weighting.py: add simple demo for a_weighting
264         * python/demos/demo_sink_multi.py: add multi channel version
265         * python/demos/, python/demos/: minor improvements, improve syntax (closes #19)
266         * python/setup.py: use setuptools, add numpy to install_requires
267
268         [ Build ]
269         * waf: removed, now automatically downloaded with make, updated to 1.8.12
270         * Makefile: add target to fetch waf and basic instructions
271         * .travis.yml: added template for travis continuous integration
272         * {examples,src,tests}/wscript_build: add external libs and uselib to targets 
273         * src/wscript_build: do not hardocode install path
274         * wscript, src/io/*.c: use custom defines instead of __APPLE__
275         * wscript: make fat build optional, remove iOS sdk versioning
276
277         [ General ]
278         * examples/: use outmsg to print notes (fixes #8)
279         * examples/parse_args.h: improve short documentation (closes #12)
280         * doc/*.cfg: remove html timestamps to make build reproducible (see debian bug #779216)
281         * doc/aubiocut.txt: improve documentation
282         * doc/*.rst: add sphinx documentation basis with Makefile and conf.py
283         * README.md: minor updates
284         * python.old: removed old code
285         * tests/: minor bug fixing
286
287 2014-01-31 Paul Brossier <piem@aubio.org>
288
289         [ Interface ]
290         * src/io/{source_wavread,sink_wavwrite}.h: new source and sink objects to
291         read and write simple wav files when building with no external dependencies
292         * src/io/{source,sink}*.h: added close functions to explicitly close file
293         * src/io/sink*.h: added do_multi, preset_channels, preset_samplerate,
294         get_channels and get_samplerate functions
295         * src/onset/onset.h: added aubio_onset_get_threshold
296         * src/mathutils.h: add fvec_quadratic_peak_mag to find the magnitude of
297         interpolated peaks
298
299         [ Library ]
300         * src/io/source_avcodec.c: implement _seek function
301         * src/io/source_sndfile.c: fixed _seek when signal is resampled
302         * src/spectral/ooura_fft8g.c: use float when double is not needed
303         * src/io/{source,sink}_apple_audio.c: improve error messages
304         * src/spectral/phasevoc.c: optimize swapbuffers by using memcpy
305         * src/lvec.c: add missing lvec_set_sample, improve test
306         * src/tempo/beattracking.c: improve confidence values by using interpolated
307         peak magnitude and avoiding nan
308         * src/tempo/tempo_davies.c: set default novelty function to specflux
309
310         [ Python module ]
311         * python/ext/py-{sink,source}.c: add do_multi and close functions
312         * python/ext/aubio-types.h: set NPY_NO_DEPRECATED_API to version 1.7
313         * python/lib/aubio/slicing.py: new function to slice a source into a list of
314         arbitrary regions
315         * python/scripts/aubiocut: add options --cut-until-nsamples and
316         --cut-until-nsclices, thanks to Mark Suppes for requesting, sponsoring,
317         and testing this feature
318
319         [ General code ]
320         * src/aubio_priv.h: use ifdefs to avoid checking undefined defines
321         * src/**.c: add missing prototypes, avoid some declarations after statement
322         * waf, waflib: update to 1.7.15
323
324 2013-12-08  Paul Brossier <piem@aubio.org>
325
326         * Overdue: After more than five years of development behind the curtain,
327         time has come to release a new version of aubio.
328
329         * General: The library has been completely revised since 0.3.2. The API has
330         seen a major clean up, and has been thoroughly tested. The following list of
331         changes is not exhaustive.
332
333         * Memory management: allocation and freeing of memory has been optimized in
334         many ways. Several memory leaks and out of bound access have been fixed.
335
336         * Optimization: the FFT, central to most algorithms, can now be computed
337         using different optimized algorithms, depending on what is available on your
338         platform (FFTW, Ooura, or vDSP). Other simple optimization tricks are
339         included. Most can be deactivated by configuring the build accordingly.
340
341         * python/: The python interface has been completely rewritten to use numpy C
342         interface, making the aubio python module order of magnitudes faster than
343         the previous version. Several demos and tests are included.
344
345         * src/: source and header files are now organized in sub-directories.
346
347         * src/io/source.h: new source readers can now use any or all of libav,
348         CoreAudio, and libsndfile. This means that aubio can now easily read most
349         uncompressed and compressed formats. Compiled with libav, aubio can also
350         read audio from video files, and over the network.
351
352         * src/io/sink.h: a new sink object lets you write wav files with any number
353         of channels, at any samplerate, using libsndfile or CoreAudio.
354
355         * src/onset, src/tempo/, src/pitch: the different methods for onset, tempo,
356         and pitch extraction have seen many bug-fixes and optimizations.
357
358         * src/spectral/specdesc.h: new onset distances and statistical measures have
359         been added.
360
361         * src/spectral/filterbank.h: new filter bank to compute the energy in any
362         custom-defined frequency bands.
363
364         * src/spectral/mfcc.h, examples/aubiomfcc.c: a standard implementation of
365         the Mel-Frequency Cepstrum Coefficients algorithm has been added.
366
367         * src/temporal/{a,c}_weighting.h: standard implementation of the C-weighting
368         and A-weighting pre-processing filters are now provided for most commons
369         sampling rates.
370
371         * src/synth/wavetable.h, src/synth/sampler.h: provide basic ways to generate
372         some sounds.
373
374         * src/fvec.h: fvec_t, the vector object central to most aubio algorithms, is
375         now single channel. This simplifies the code of each algorithm greatly.
376
377         * src/lvec.h: lvec_t provides a double precision vector, required for some
378         operations to avoid floating point overflow
379
380         * src/fmat.h: fmat_t provides a single precision matrix, useful for
381         multi-channel operations and to some algorithms such as the spectral filter
382         bank.
383
384         * examples/: several new options, including new programs, have been
385         included. Refer to the documentation for details.
386
387         * tests/: several tests and examples programs have been added. This should
388         be a good place to look at to understand how to use aubio.
389
390         * doc/web.cfg: a simplified Doxygen configuration produces a simpler html
391         documentation.
392
393         * doc/*.txt: the manpages have been rewritten for txt2man.
394
395         * Build system: the build system has been switched from autotools/automake
396         to waf. Type './waf' or see README.md for instructions on how to use waf.
397
398 2006-11-10  Paul Brossier <piem@altern.org>
399         * configure.ac: check c compiler for -Wextra option
400         * examples/*: add lash support to aubioonset, aubiotrack, and aubionotes
401         * */Makefile.am: improve compilation on Mac OS X, mingw and cygwin
402         * src/{onset,tempo}.[ch]: add simple c interfaces to onset and tempo tasks
403         * src/beattracking.c: allow the use of two beat trackers simultaneously
404         * examples/tests: add test programs for most c functions
405         * src/*.c: add most missing free calls
406         * src/*.c: fix some out of array writes
407         * src/,ext/: more gcc warning fixes
408
409 2006-27-06  Paul Brossier <piem@altern.org>
410         * plugins/puredata/Makefile.am: move pd help to pattern-help.pd
411                 - thanks goes to Frank Barknecht
412         * ext/sndfileio.c src/aubio_priv.h: fixes memset in aubio_priv.h, remove
413                 useless sfinfo.format=0 - thanks karsten wiese 
414         * ext/midi/midi_alsa_seq.c: do not call pthread_ in aubio_midi_direct_output
415                 - thanks karsten wiese
416         * python/aubio/task/beat.py: task beat() output seconds
417         * python/aubio/task/beat.py: ugly hack to plot beat track anyway
418         * examples/aubionotes.c: fix signed/unsigned mismatches in examples
419         * src/beattracking.c: fix signed/unsigned mismatches in beattracking
420         * src/pitchfcomb.c: fix signed/unsigned mismatches in pitchfcomb
421         * src/pitchschmitt.c: fix signed/unsigned mismatches in pitchscmitt
422         * configure.ac: use -Wextra but unused parameters, fix macos CFLAGS
423         * plugins/puredata/Makefile.am: simplify puredata Makefile.am
424         * python/aubio/Makefile.am: avoid overwriting CFLAGS
425         * examples/Makefile.am: use top_{build,src}dir instead of ../
426         * configure.ac: make configure.ac more readable
427         * python/aubio/task/cut.py: use os.path to derive default output filenames
428         * VERSION: 0.3.1
429
430 2006-18-05 Paul Brossier <piem@altern.org>
431         * src/pitchyinfft.{c,h}: new pitch detection method
432         * src/beattracking.c: algorithm improved
433         * plugins/puredata/: new puredata external
434         * python/tasks: enhancements to the onset detection algorithms
435         * python/aubiocut: improved, can now slice at beats and silences
436         * python/aubiopitch: new python program to extract pitch tracks
437         * python/: plotting features for aubiocut and aubiopitch
438         * python/: interface refactored
439         * doc/: updated documentation 
440         * VERSION: 0.3.0
441
442 2006-18-05  Paul Brossier <piem@altern.org>
443         * src/beattracking.c: added beattracking.c
444         * various bug fixes
445         * VERSION: 0.2.0
446
447 2005-29-03  Paul Brossier <piem@altern.org>
448         * python/aubio/gnuplot.py: clean up and add plotsound
449         * python/aubiocompare-onset: updated
450         * examples/aubioonset.c: fix text output when nframes<4 
451         * ext/midi/midi_file.c: by default, int is unsigned on powerpc
452         * python/aubiocut, python/aubio/aubioclass.py: updated
453         * ext/midi/midi_alsa_seq.c: activated threading
454         * configure.ac,Makefile.am: added rules to check presence
455          of swig, python, puredata and docbook-to-man.
456
457 2005-17-03  Paul Brossier <piem@altern.org>
458         * examples/utils.{c,h}:  corrected usedoubled and -O interactions
459         * examples/aubioonset.c: added frames>=4 check (thanks Hamish Allan)
460
461 2004-12-11  Paul Brossier <piem@altern,org>
462         * swig/Makefile.am: instructions moved to python/aubio and cleaned 
463         * python/aubiocut: corrected slicing on multichannel files
464         * VERSION: bumped to 0.1.8
465
466 2004-12-06  Paul Brossier <piem@altern.org>
467         * examples/{midi*,testforclam}.c: removed
468         * src/{sndfile,midi*,jackio}.[ch]: moved to ext
469
470 2004-12-03  Paul Brossier <piem@altern.org>
471         * src/{mathutils,pitchyin}.h: got rid of some shadowed declarations
472         * plugins/puredata: first puredata plugin attempt added
473
474 2004-11-30  Paul Brossier <piem@altern.org>
475         * configure.ac: added -lmx on macosx
476         * python/aubiocut: seeks for local minima before peak
477                            added zero crossing search
478         * src/pitchyinc.c: adds draft for all-in-one faster function
479         * examples/*.c: added ladcca client (needs work)
480         * examples/aubioonset.c: cleaned up verbose stdout 
481         * doc/aubio.css: updated
482
483 2004-10-28  Paul Brossier <piem@altern.org>
484         * src/Makefile.am: added config.h installation
485         * VERSION: 0.1.7.1
486
487 2004-10-26  Paul Brossier <piem@altern.org>:
488         * src/pitchdetection.*: moved to src/pitchmcomb.*, now includes a
489         draft driver for transparent use of mcomb or yin 
490         * src/pitchmcomb.*: added from old src/pitchdetection.*
491         * VERSION: 0.1.7
492
493 2004-10-20  Paul Brossier <piem@altern.org>:
494         * configure.ac: made fftw3f, alsa and jack optional
495         * src/fft.{c,h}: now uses FFTW3F_SUPPORT
496         * src/timer.c: #if 0 on win32 version
497
498 2004-10-18  Paul Brossier <piem@altern.org>:
499         * src/{fft,cvec,pvoc}.c: fixed fft size (N/2+1)
500         * src/{onsetdetection,tss}.c: fixed sizes as well
501         * src/pvoc.c: fixed resynthesis scaling factor (still missing
502         windowing), windowing added in pvoc_rdo 
503         * src/fft.h: removed FFTW typedef
504         * configure.ac: removed AC_ISC_POSIX to compile on mingw32
505         * src/fft.c: removed useless fftw3.h include
506         * src/pitchmcomb.c: removed call to vec_adapt_thres (writes out of
507         bounds)
508
509 2004-10-17  Paul Brossier <piem@altern.org>
510         * src/sample.c: removed static _malloc, set all 0. (fixes nan bugs)
511         * examples/*.c: removed useless pvoc inits
512         * src/pitchyin.c: based on de Cheveigne paper
513
514 2004-09-17  Paul Brossier <piem@altern.org>
515         * configure.ac,src/Makefile.am: cleaned up autotools process
516         * examples/aubio*.c: removed some useless code.
517         * src/sample.c: removed crazy call to memset
518
519 2004-09-02  Paul Brossier <piem@altern.org>
520         * src/sndfileio.c: removed abusive call to AUBIO_ARRAY,
521         defined MAX_SIZE instead.
522         * src/onsetdetection.c: rewritten free_function.
523         * src/phasevoc.c: in aubio_pvoc_rdo, one way writing only
524         * swig/, python/aubio: added swig wrapper, played a bit with 
525         python interface.
526         * src/aubio.h: now includes midi_driver.h
527
528 2004-06-25  Paul Brossier <piem@altern.org>
529         * src/peakpick.h: 
530            renamed pickparams_t to aubio_pickpeak_t 
531            disabled samer_pp (broken)
532            added del_aubio_peakpick
533            added aubio_peakpick_pimrt_wt (thanks mramirez) 
534         * python/aubio/onsetcompare.py: now works on huge list 
535            thanks goes to Nicolas Wack
536         * examples/aubionotes.c: now outputs NOTEONs 
537         * configure.ac: quick hack to disable jack and alsa
538         * examples/*usingjack*: more hacking to disable jack
539         * README: some updates
540
541 2004-06-23  Paul Brossier <piem@altern.org>
542         * src/*.h: added C++ ifdefs in header files
543         * src/fft.h: removed complex.h include in header
544         * src/hist.c: fixed out of array indexes 
545                 thanks Miguel Ramirez!
546         * src/Makefile.am: added install headers
547         * doc/Makefile.am: removed dist-hook to update-docs
548         * sounds/Makefile.am: added install hooks
549         * aubio.pc.in: added aubio.pc generation for pkg-config
550         * python: added some evaluation functions 
551         * src/aubio_priv.h: moved AUBIO_DBG to stderr
552         * examples/utils.h: now outputs on stdout
553         * examples/midi*.c: fixed compilation with gcc-2.95
554         * VERSION: 0.1.4
555
556 2004-04-27  Paul Brossier <piem@altern.org>
557         * pitchdetection.c: fixed, still not great
558         * Makefile.am: fixed missing headers (thank you Charbel) 
559         * aubioonset,aubionotes: renamed for install (were *demo files)
560         * First working release: 0.1.3
561
562 2004-01-31  Paul Brossier <piem@altern.org>
563         * pitchdetection.c: working, still a bit too picky
564         * filter.c: sizeable biquad, fixed via pitchtest.c
565         * types.h: added file, all generic system wide types.
566         * tss.c: added some speed improvements
567
568 2004-01-20  Paul Brossier <piem@altern.org>
569         * peakpick.c: working real time onset detection
570         * biquad.c: needs fixing
571
572 2004-01-10  Paul Brossier <piem@altern.org>
573         * long time i didn't touch this file
574         * added various objects
575         * working onsetdetectors
576         * various examples
577         * splitted in a dynamic library
578         * functions renamed (new_. del_. aubio_._do)
579         * VERSION: 0.1.0_alpha
580
581 2003-11-04  Paul Brossier <piem@altern.org>
582         * aubio.h: degrouping in modules
583         * VERSION: 0.0.6_alpha
584
585 2003-11-03  Paul Brossier <piem@altern.org>
586         * phasevoc.c: fixed memory acces
587         * jackio.c: moving to ringbuffer type implementation
588         * VERSION: 0.0.4_alpha
589
590 2003-11-03  Paul Brossier <piem@altern.org>
591         * jackio.c: added jack support
592         * aubioenc.c: fixed memory freeing bugs
593         * VERSION: 0.0.3_alpha
594
595 2003-10-29  Paul Brossier <piem@altern.org>
596         * aubio.h: Grouping all headers
597         * makefile.am: Running first make dist
598         * VERSION: 0.0.2alpha
599  
600 2003-10-18  Paul Brossier <piem@altern.org>
601         * aubioenc.c: Working phase vocoder
602         * VERSION: 0.0.1alpha