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