1 | 2018-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 | |
---|
77 | 2018-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 | |
---|
164 | 2017-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 | |
---|
231 | 2017-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 | |
---|
290 | 2017-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 | |
---|
509 | 2016-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 | |
---|
737 | 2015-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 | |
---|
796 | 2014-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 | |
---|
833 | 2013-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 | |
---|
907 | 2006-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 | |
---|
918 | 2006-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 | |
---|
939 | 2006-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 | |
---|
951 | 2006-18-05 Paul Brossier <piem@altern.org> |
---|
952 | * src/beattracking.c: added beattracking.c |
---|
953 | * various bug fixes |
---|
954 | * VERSION: 0.2.0 |
---|
955 | |
---|
956 | 2005-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 | |
---|
966 | 2005-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 | |
---|
970 | 2004-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 | |
---|
975 | 2004-12-06 Paul Brossier <piem@altern.org> |
---|
976 | * examples/{midi*,testforclam}.c: removed |
---|
977 | * src/{sndfile,midi*,jackio}.[ch]: moved to ext |
---|
978 | |
---|
979 | 2004-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 | |
---|
983 | 2004-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 | |
---|
992 | 2004-10-28 Paul Brossier <piem@altern.org> |
---|
993 | * src/Makefile.am: added config.h installation |
---|
994 | * VERSION: 0.1.7.1 |
---|
995 | |
---|
996 | 2004-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 | |
---|
1002 | 2004-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 | |
---|
1007 | 2004-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 | |
---|
1018 | 2004-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 | |
---|
1023 | 2004-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 | |
---|
1028 | 2004-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 | |
---|
1037 | 2004-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 | |
---|
1050 | 2004-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 | |
---|
1065 | 2004-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 | |
---|
1071 | 2004-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 | |
---|
1077 | 2004-01-20 Paul Brossier <piem@altern.org> |
---|
1078 | * peakpick.c: working real time onset detection |
---|
1079 | * biquad.c: needs fixing |
---|
1080 | |
---|
1081 | 2004-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 | |
---|
1090 | 2003-11-04 Paul Brossier <piem@altern.org> |
---|
1091 | * aubio.h: degrouping in modules |
---|
1092 | * VERSION: 0.0.6_alpha |
---|
1093 | |
---|
1094 | 2003-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 | |
---|
1099 | 2003-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 | |
---|
1104 | 2003-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 | |
---|
1109 | 2003-10-18 Paul Brossier <piem@altern.org> |
---|
1110 | * aubioenc.c: Working phase vocoder |
---|
1111 | * VERSION: 0.0.1alpha |
---|