a library for audio and music analysis

Overview

aubio

Travis build status Appveyor build status Commits since last release

Documentation DOI

aubio is a library to label music and sounds. It listens to audio signals and attempts to detect events. For instance, when a drum is hit, at which frequency is a note, or at what tempo is a rhythmic melody.

Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio.

aubio provide several algorithms and routines, including:

  • several onset detection methods
  • different pitch detection methods
  • tempo tracking and beat detection
  • MFCC (mel-frequency cepstrum coefficients)
  • FFT and phase vocoder
  • up/down-sampling
  • digital filters (low pass, high pass, and more)
  • spectral filtering
  • transient/steady-state separation
  • sound file read and write access
  • various mathematics utilities for music applications

The name aubio comes from audio with a typo: some errors are likely to be found in the results.

Python module

A python module for aubio is provided. For more information on how to use it, please see the file python/README.md and the manual .

Tools

The python module comes with the following command line tools:

  • aubio extracts informations from sound files
  • aubiocut slices sound files at onset or beat timestamps

Additional command line tools are included along with the library:

  • aubioonset outputs the time stamp of detected note onsets
  • aubiopitch attempts to identify a fundamental frequency, or pitch, for each frame of the input sound
  • aubiomfcc computes Mel-frequency Cepstrum Coefficients
  • aubiotrack outputs the time stamp of detected beats
  • aubionotes emits midi-like notes, with an onset, a pitch, and a duration
  • aubioquiet extracts quiet and loud regions

Documentation

The latest version of the documentation can be found at:

https://aubio.org/documentation

Build Instructions

aubio compiles on Linux, Mac OS X, Windows, Cygwin, and iOS.

To compile aubio, you should be able to simply run:

make

To compile the python module:

./setup.py build

See the manual for more information about installing aubio.

Citation

Please use the DOI link above to cite this release in your publications. For more information, see also the about page in aubio manual.

Homepage

The home page of this project can be found at: https://aubio.org/

License

aubio is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Contributing

Patches are welcome: please fork the latest git repository and create a feature branch. Submitted requests should pass all continuous integration tests.

Comments
  • Recognizing VS 2017 / msvc 14.10, static vs shared libs, MD/MT

    Recognizing VS 2017 / msvc 14.10, static vs shared libs, MD/MT

    I am currently trying to create a vcpkg port for aubio and I am having various problems:

    • msvc 14.10 (=VS2017) is not recognized, maybe because of a new path-logic? CL is now at: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\bin\HostX64\x64\CL.exe;

    • a problem I have not understood yet is an error-message that aubio.lib was created twice. Might it be, that the export lib and the static lib are created with the same filename so that one overwrites the other?

    • I would like to find a way to make one build compile shared libs only, and another separate build compile static libs only. Is that possible, e.g. with a configure option?

    • also it seems that the dll is not installed in the bin directory. Only the exe's are.

    • finally I would also like to be able to control static vs dynamic CRT linkage (MD/MT) through the build configuration. Is that possible?

    Thank you in advance for any help.

    opened by bagong 74
  • Aubio on Pypy?

    Aubio on Pypy?

    Hi, It looks liike waf build works on pypy, the python bindings themselves do not build because of the error below, I wonder how possible it is to get this working with pypy?

    I guess at worst it could be reimplementing using cffi, on the other hand it might just be tweaking the bindings a bit ..

    $ ./setup.py build
    running build
    running build_py
    running build_ext
    building 'aubio._aubio' extension
    cc -O2 -fPIC -Wimplicit -DUSE_LOCAL_AUBIO=1 -Iext -I/mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include -Igen -I../src -I../build/src -I/mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include -c ext/aubiomodule.c -o build/temp.linux-x86_64-2.7/ext/aubiomodule.o
    ext/aubiomodule.c: In function ‘init_aubio’:
    ext/aubiomodule.c:215:3: warning: implicit declaration of function ‘_import_array’ [-Wimplicit-function-declaration]
       err = _import_array ();
       ^
    cc -O2 -fPIC -Wimplicit -DUSE_LOCAL_AUBIO=1 -Iext -I/mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include -Igen -I../src -I../build/src -I/mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include -c ext/aubioproxy.c -o build/temp.linux-x86_64-2.7/ext/aubioproxy.o
    cc -O2 -fPIC -Wimplicit -DUSE_LOCAL_AUBIO=1 -Iext -I/mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include -Igen -I../src -I../build/src -I/mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include -c ext/ufuncs.c -o build/temp.linux-x86_64-2.7/ext/ufuncs.o
    In file included from /usr/include/numpy/ufuncobject.h:4:0,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/npy_math.h: In function ‘__npy_inff’:
    /usr/include/numpy/npy_math.h:26:17: error: unknown type name ‘npy_uint32’
         const union { npy_uint32 __i; float __f;} __bint = {0x7f800000UL};
                     ^
    /usr/include/numpy/npy_math.h: In function ‘__npy_nanf’:
    /usr/include/numpy/npy_math.h:32:17: error: unknown type name ‘npy_uint32’
         const union { npy_uint32 __i; float __f;} __bint = {0x7fc00000UL};
                     ^
    /usr/include/numpy/npy_math.h: In function ‘__npy_pzerof’:
    /usr/include/numpy/npy_math.h:38:17: error: unknown type name ‘npy_uint32’
         const union { npy_uint32 __i; float __f;} __bint = {0x00000000UL};
                     ^
    /usr/include/numpy/npy_math.h: In function ‘__npy_nzerof’:
    /usr/include/numpy/npy_math.h:44:17: error: unknown type name ‘npy_uint32’
         const union { npy_uint32 __i; float __f;} __bint = {0x80000000UL};
                     ^
    In file included from ext/aubio-types.h:18:0,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ufuncobject.h: At top level:
    /usr/include/numpy/ufuncobject.h:29:17: error: unknown type name ‘NpyAuxData’
                     NpyAuxData *innerloopdata);
                     ^
    /usr/include/numpy/ufuncobject.h:41:17: error: unknown type name ‘NpyAuxData’
                     NpyAuxData *innerloopdata);
                     ^
    /usr/include/numpy/ufuncobject.h:73:33: error: unknown type name ‘NPY_CASTING’
                                     NPY_CASTING casting,
                                     ^
    /usr/include/numpy/ufuncobject.h:118:29: error: unknown type name ‘PyUFunc_StridedInnerLoopFunc’
                                 PyUFunc_StridedInnerLoopFunc **out_innerloop,
                                 ^
    /usr/include/numpy/ufuncobject.h:119:29: error: unknown type name ‘NpyAuxData’
                                 NpyAuxData **out_innerloopdata,
                                 ^
    /usr/include/numpy/ufuncobject.h:127:29: error: unknown type name ‘PyUFunc_MaskedStridedInnerLoopFunc’
                                 PyUFunc_MaskedStridedInnerLoopFunc **out_innerloop,
                                 ^
    /usr/include/numpy/ufuncobject.h:128:29: error: unknown type name ‘NpyAuxData’
                                 NpyAuxData **out_innerloopdata,
                                 ^
    /usr/include/numpy/ufuncobject.h:197:9: error: unknown type name ‘PyUFunc_TypeResolutionFunc’
             PyUFunc_TypeResolutionFunc *type_resolver;
             ^
    /usr/include/numpy/ufuncobject.h:210:9: error: unknown type name ‘PyUFunc_InnerLoopSelectionFunc’
             PyUFunc_InnerLoopSelectionFunc *inner_loop_selector;
             ^
    /usr/include/numpy/ufuncobject.h:214:9: error: unknown type name ‘PyUFunc_MaskedInnerLoopSelectionFunc’
             PyUFunc_MaskedInnerLoopSelectionFunc *masked_inner_loop_selector;
             ^
    /usr/include/numpy/ufuncobject.h:221:9: error: unknown type name ‘npy_uint32’
             npy_uint32 *op_flags;
             ^
    /usr/include/numpy/ufuncobject.h:228:9: error: unknown type name ‘npy_uint32’
             npy_uint32 iter_flags;
             ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:59:6: error: nested redefinition of ‘enum NPY_TYPES’
     enum NPY_TYPES {    NPY_BOOL=0,
          ^
    /usr/include/numpy/ndarraytypes.h:59:6: error: redeclaration of ‘enum NPY_TYPES’
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:50:6: note: originally defined here
     enum NPY_TYPES {    NPY_BOOL=0,
          ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:59:21: error: redeclaration of enumerator ‘NPY_BOOL’
     enum NPY_TYPES {    NPY_BOOL=0,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:50:21: note: previous definition of ‘NPY_BOOL’ was here
     enum NPY_TYPES {    NPY_BOOL=0,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:60:21: error: redeclaration of enumerator ‘NPY_BYTE’
                         NPY_BYTE, NPY_UBYTE,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:51:21: note: previous definition of ‘NPY_BYTE’ was here
                         NPY_BYTE, NPY_UBYTE,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:60:31: error: redeclaration of enumerator ‘NPY_UBYTE’
                         NPY_BYTE, NPY_UBYTE,
                                   ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:51:31: note: previous definition of ‘NPY_UBYTE’ was here
                         NPY_BYTE, NPY_UBYTE,
                                   ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:61:21: error: redeclaration of enumerator ‘NPY_SHORT’
                         NPY_SHORT, NPY_USHORT,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:52:21: note: previous definition of ‘NPY_SHORT’ was here
                         NPY_SHORT, NPY_USHORT,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:61:32: error: redeclaration of enumerator ‘NPY_USHORT’
                         NPY_SHORT, NPY_USHORT,
                                    ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:52:32: note: previous definition of ‘NPY_USHORT’ was here
                         NPY_SHORT, NPY_USHORT,
                                    ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:62:21: error: redeclaration of enumerator ‘NPY_INT’
                         NPY_INT, NPY_UINT,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:53:21: note: previous definition of ‘NPY_INT’ was here
                         NPY_INT, NPY_UINT,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:62:30: error: redeclaration of enumerator ‘NPY_UINT’
                         NPY_INT, NPY_UINT,
                                  ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:53:30: note: previous definition of ‘NPY_UINT’ was here
                         NPY_INT, NPY_UINT,
                                  ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:63:21: error: redeclaration of enumerator ‘NPY_LONG’
                         NPY_LONG, NPY_ULONG,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:54:21: note: previous definition of ‘NPY_LONG’ was here
                         NPY_LONG, NPY_ULONG,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:63:31: error: redeclaration of enumerator ‘NPY_ULONG’
                         NPY_LONG, NPY_ULONG,
                                   ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:54:31: note: previous definition of ‘NPY_ULONG’ was here
                         NPY_LONG, NPY_ULONG,
                                   ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:64:21: error: redeclaration of enumerator ‘NPY_LONGLONG’
                         NPY_LONGLONG, NPY_ULONGLONG,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:55:21: note: previous definition of ‘NPY_LONGLONG’ was here
                         NPY_LONGLONG, NPY_ULONGLONG,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:64:35: error: redeclaration of enumerator ‘NPY_ULONGLONG’
                         NPY_LONGLONG, NPY_ULONGLONG,
                                       ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:55:35: note: previous definition of ‘NPY_ULONGLONG’ was here
                         NPY_LONGLONG, NPY_ULONGLONG,
                                       ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:65:21: error: redeclaration of enumerator ‘NPY_FLOAT’
                         NPY_FLOAT, NPY_DOUBLE, NPY_LONGDOUBLE,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:56:21: note: previous definition of ‘NPY_FLOAT’ was here
                         NPY_FLOAT, NPY_DOUBLE, NPY_LONGDOUBLE,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:65:32: error: redeclaration of enumerator ‘NPY_DOUBLE’
                         NPY_FLOAT, NPY_DOUBLE, NPY_LONGDOUBLE,
                                    ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:56:32: note: previous definition of ‘NPY_DOUBLE’ was here
                         NPY_FLOAT, NPY_DOUBLE, NPY_LONGDOUBLE,
                                    ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:65:44: error: redeclaration of enumerator ‘NPY_LONGDOUBLE’
                         NPY_FLOAT, NPY_DOUBLE, NPY_LONGDOUBLE,
                                                ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:56:44: note: previous definition of ‘NPY_LONGDOUBLE’ was here
                         NPY_FLOAT, NPY_DOUBLE, NPY_LONGDOUBLE,
                                                ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:66:21: error: redeclaration of enumerator ‘NPY_CFLOAT’
                         NPY_CFLOAT, NPY_CDOUBLE, NPY_CLONGDOUBLE,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:57:21: note: previous definition of ‘NPY_CFLOAT’ was here
                         NPY_CFLOAT, NPY_CDOUBLE, NPY_CLONGDOUBLE,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:66:33: error: redeclaration of enumerator ‘NPY_CDOUBLE’
                         NPY_CFLOAT, NPY_CDOUBLE, NPY_CLONGDOUBLE,
                                     ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:57:33: note: previous definition of ‘NPY_CDOUBLE’ was here
                         NPY_CFLOAT, NPY_CDOUBLE, NPY_CLONGDOUBLE,
                                     ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:66:46: error: redeclaration of enumerator ‘NPY_CLONGDOUBLE’
                         NPY_CFLOAT, NPY_CDOUBLE, NPY_CLONGDOUBLE,
                                                  ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:57:46: note: previous definition of ‘NPY_CLONGDOUBLE’ was here
                         NPY_CFLOAT, NPY_CDOUBLE, NPY_CLONGDOUBLE,
                                                  ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:67:21: error: redeclaration of enumerator ‘NPY_OBJECT’
                         NPY_OBJECT=17,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:58:21: note: previous definition of ‘NPY_OBJECT’ was here
                         NPY_OBJECT=17,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:68:21: error: redeclaration of enumerator ‘NPY_STRING’
                         NPY_STRING, NPY_UNICODE,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:59:21: note: previous definition of ‘NPY_STRING’ was here
                         NPY_STRING, NPY_UNICODE,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:68:33: error: redeclaration of enumerator ‘NPY_UNICODE’
                         NPY_STRING, NPY_UNICODE,
                                     ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:59:33: note: previous definition of ‘NPY_UNICODE’ was here
                         NPY_STRING, NPY_UNICODE,
                                     ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:69:21: error: redeclaration of enumerator ‘NPY_VOID’
                         NPY_VOID,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:60:21: note: previous definition of ‘NPY_VOID’ was here
                         NPY_VOID,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:74:21: error: redeclaration of enumerator ‘NPY_DATETIME’
                         NPY_DATETIME, NPY_TIMEDELTA, NPY_HALF,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:65:21: note: previous definition of ‘NPY_DATETIME’ was here
                         NPY_DATETIME, NPY_TIMEDELTA, NPY_HALF,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:74:35: error: redeclaration of enumerator ‘NPY_TIMEDELTA’
                         NPY_DATETIME, NPY_TIMEDELTA, NPY_HALF,
                                       ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:65:35: note: previous definition of ‘NPY_TIMEDELTA’ was here
                         NPY_DATETIME, NPY_TIMEDELTA, NPY_HALF,
                                       ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:74:50: error: redeclaration of enumerator ‘NPY_HALF’
                         NPY_DATETIME, NPY_TIMEDELTA, NPY_HALF,
                                                      ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:65:50: note: previous definition of ‘NPY_HALF’ was here
                         NPY_DATETIME, NPY_TIMEDELTA, NPY_HALF,
                                                      ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:76:21: error: redeclaration of enumerator ‘NPY_NTYPES’
                         NPY_NTYPES,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:67:21: note: previous definition of ‘NPY_NTYPES’ was here
                         NPY_NTYPES,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:77:21: error: redeclaration of enumerator ‘NPY_NOTYPE’
                         NPY_NOTYPE,
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:68:21: note: previous definition of ‘NPY_NOTYPE’ was here
                         NPY_NOTYPE,
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:78:21: error: redeclaration of enumerator ‘NPY_CHAR’
                         NPY_CHAR,      /* special flag */
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:69:21: note: previous definition of ‘NPY_CHAR’ was here
                         NPY_CHAR,      /* special flag */
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:79:21: error: redeclaration of enumerator ‘NPY_USERDEF’
                         NPY_USERDEF=256,  /* leave room for characters */
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:70:21: note: previous definition of ‘NPY_USERDEF’ was here
                         NPY_USERDEF=256,  /* leave room for characters */
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:82:21: error: redeclaration of enumerator ‘NPY_NTYPES_ABI_COMPATIBLE’
                         NPY_NTYPES_ABI_COMPATIBLE=21
                         ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:73:21: note: previous definition of ‘NPY_NTYPES_ABI_COMPATIBLE’ was here
                         NPY_NTYPES_ABI_COMPATIBLE=21
                         ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:423:3: error: conflicting types for ‘PyArray_Dims’
     } PyArray_Dims;
       ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:45:3: note: previous declaration of ‘PyArray_Dims’ was here
     } PyArray_Dims;
       ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:21:23: error: conflicting types for ‘PyObject’
     #define PyArray_Descr PyObject
                           ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:86:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/object.h:35:3: note: previous declaration of ‘PyObject’ was here
     } PyObject;
       ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:20:23: error: conflicting types for ‘PyObject’
     #define PyArrayObject PyObject
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:21:23: note: previous declaration of ‘PyObject’ was here
     #define PyArray_Descr PyObject
                           ^
    In file included from /usr/include/numpy/ndarrayobject.h:17:0,
                     from /usr/include/numpy/arrayobject.h:4,
                     from /usr/include/numpy/ufuncobject.h:231,
                     from ext/aubio-types.h:18,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/ndarraytypes.h:738:9: error: unknown type name ‘npy_int32’
             npy_int32 month, day, hour, min, sec, us, ps, as;
             ^
    /usr/include/numpy/ndarraytypes.h:744:9: error: unknown type name ‘npy_int32’
             npy_int32 sec, us, ps, as;
             ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:46:23: error: conflicting types for ‘_PyPyArray_NDIM’
     #define _PyArray_NDIM _PyPyArray_NDIM
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:46:23: note: previous declaration of ‘_PyPyArray_NDIM’ was here
     #define _PyArray_NDIM _PyPyArray_NDIM
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:506:17: note: in expansion of macro ‘_PyArray_NDIM’
     PyAPI_FUNC(int) _PyArray_NDIM(PyObject *arg0);
                     ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:158:23: error: conflicting types for ‘_PyPyArray_DATA’
     #define _PyArray_DATA _PyPyArray_DATA
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:158:23: note: previous declaration of ‘_PyPyArray_DATA’ was here
     #define _PyArray_DATA _PyPyArray_DATA
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:498:20: note: in expansion of macro ‘_PyArray_DATA’
     PyAPI_FUNC(void *) _PyArray_DATA(PyObject *arg0);
                        ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:188:30: error: expected identifier or ‘(’ before ‘char’
     #define PyArray_BYTES(arr) ((char *)PyArray_DATA(arr))
                                  ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:158:23: error: expected ‘)’ before ‘_PyPyArray_DATA’
     #define _PyArray_DATA _PyPyArray_DATA
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:475:22: error: conflicting types for ‘_PyPyArray_DIM’
     #define _PyArray_DIM _PyPyArray_DIM
                          ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:475:22: note: previous declaration of ‘_PyPyArray_DIM’ was here
     #define _PyArray_DIM _PyPyArray_DIM
                          ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:499:24: note: in expansion of macro ‘_PyArray_DIM’
     PyAPI_FUNC(Py_ssize_t) _PyArray_DIM(PyObject *arg0, Py_ssize_t arg1);
                            ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:233:25: error: conflicting types for ‘_PyPyArray_STRIDE’
     #define _PyArray_STRIDE _PyPyArray_STRIDE
                             ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:233:25: note: previous declaration of ‘_PyPyArray_STRIDE’ was here
     #define _PyArray_STRIDE _PyPyArray_STRIDE
                             ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:509:24: note: in expansion of macro ‘_PyArray_STRIDE’
     PyAPI_FUNC(Py_ssize_t) _PyArray_STRIDE(PyObject *arg0, Py_ssize_t arg1);
                            ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:239:24: error: conflicting types for ‘_PyPyArray_FLAGS’
     #define _PyArray_FLAGS _PyPyArray_FLAGS
                            ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:239:24: note: previous declaration of ‘_PyPyArray_FLAGS’ was here
     #define _PyArray_FLAGS _PyPyArray_FLAGS
                            ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:501:17: note: in expansion of macro ‘_PyArray_FLAGS’
     PyAPI_FUNC(int) _PyArray_FLAGS(PyObject *arg0);
                     ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:265:27: error: conflicting types for ‘_PyPyArray_ITEMSIZE’
     #define _PyArray_ITEMSIZE _PyPyArray_ITEMSIZE
                               ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:265:27: note: previous declaration of ‘_PyPyArray_ITEMSIZE’ was here
     #define _PyArray_ITEMSIZE _PyPyArray_ITEMSIZE
                               ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:504:17: note: in expansion of macro ‘_PyArray_ITEMSIZE’
     PyAPI_FUNC(int) _PyArray_ITEMSIZE(PyObject *arg0);
                     ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:299:23: error: conflicting types for ‘_PyPyArray_TYPE’
     #define _PyArray_TYPE _PyPyArray_TYPE
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:299:23: note: previous declaration of ‘_PyPyArray_TYPE’ was here
     #define _PyArray_TYPE _PyPyArray_TYPE
                           ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:513:17: note: in expansion of macro ‘_PyArray_TYPE’
     PyAPI_FUNC(int) _PyArray_TYPE(PyObject *arg0);
                     ^
    In file included from ext/aubio-types.h:14:0,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/numpy/arrayobject.h:147:54: error: expected ‘)’ before ‘&’ token
     #define PyArray_CHKFLAGS(m, flags) (PyArray_FLAGS(m) & (flags))
                                                          ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /usr/include/numpy/__ufunc_api.h: In function ‘_import_umath’:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:410:31: warning: initialization from incompatible pointer type [enabled by default]
     #define PyImport_ImportModule PyPyImport_ImportModule
                                   ^
    ext/ufuncs.c: In function ‘add_ufuncs’:
    ext/ufuncs.c:95:3: warning: passing argument 1 of ‘PyPyModule_GetDict’ from incompatible pointer type [enabled by default]
       dict = PyModule_GetDict(m);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:473:26: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define PyModule_GetDict PyPyModule_GetDict
                              ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:243:24: note: in expansion of macro ‘PyModule_GetDict’
     PyAPI_FUNC(PyObject *) PyModule_GetDict(PyObject *arg0);
                            ^
    ext/ufuncs.c:95:8: warning: assignment from incompatible pointer type [enabled by default]
       dict = PyModule_GetDict(m);
            ^
    ext/ufuncs.c:99:3: warning: passing argument 1 of ‘PyPyDict_SetItemString’ from incompatible pointer type [enabled by default]
       PyDict_SetItemString(dict, "unwrap2pi", f);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:220:30: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define PyDict_SetItemString PyPyDict_SetItemString
                                  ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:91:17: note: in expansion of macro ‘PyDict_SetItemString’
     PyAPI_FUNC(int) PyDict_SetItemString(PyObject *arg0, const char *arg1, PyObject *arg2);
                     ^
    ext/ufuncs.c:99:3: warning: passing argument 3 of ‘PyPyDict_SetItemString’ from incompatible pointer type [enabled by default]
       PyDict_SetItemString(dict, "unwrap2pi", f);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:220:30: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define PyDict_SetItemString PyPyDict_SetItemString
                                  ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:91:17: note: in expansion of macro ‘PyDict_SetItemString’
     PyAPI_FUNC(int) PyDict_SetItemString(PyObject *arg0, const char *arg1, PyObject *arg2);
                     ^
    ext/ufuncs.c:100:3: warning: passing argument 1 of ‘PyPy_DecRef’ from incompatible pointer type [enabled by default]
       Py_DECREF(f);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:274:19: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define Py_DecRef PyPy_DecRef
                       ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:472:18: note: in expansion of macro ‘Py_DecRef’
     PyAPI_FUNC(void) Py_DecRef(PyObject *arg0);
                      ^
    ext/ufuncs.c:106:3: warning: passing argument 1 of ‘PyPyDict_SetItemString’ from incompatible pointer type [enabled by default]
       PyDict_SetItemString(dict, "freqtomidi", g);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:220:30: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define PyDict_SetItemString PyPyDict_SetItemString
                                  ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:91:17: note: in expansion of macro ‘PyDict_SetItemString’
     PyAPI_FUNC(int) PyDict_SetItemString(PyObject *arg0, const char *arg1, PyObject *arg2);
                     ^
    ext/ufuncs.c:106:3: warning: passing argument 3 of ‘PyPyDict_SetItemString’ from incompatible pointer type [enabled by default]
       PyDict_SetItemString(dict, "freqtomidi", g);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:220:30: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define PyDict_SetItemString PyPyDict_SetItemString
                                  ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:91:17: note: in expansion of macro ‘PyDict_SetItemString’
     PyAPI_FUNC(int) PyDict_SetItemString(PyObject *arg0, const char *arg1, PyObject *arg2);
                     ^
    ext/ufuncs.c:107:3: warning: passing argument 1 of ‘PyPy_DecRef’ from incompatible pointer type [enabled by default]
       Py_DECREF(g);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:274:19: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define Py_DecRef PyPy_DecRef
                       ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:472:18: note: in expansion of macro ‘Py_DecRef’
     PyAPI_FUNC(void) Py_DecRef(PyObject *arg0);
                      ^
    ext/ufuncs.c:113:3: warning: passing argument 1 of ‘PyPyDict_SetItemString’ from incompatible pointer type [enabled by default]
       PyDict_SetItemString(dict, "miditofreq", h);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:220:30: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define PyDict_SetItemString PyPyDict_SetItemString
                                  ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:91:17: note: in expansion of macro ‘PyDict_SetItemString’
     PyAPI_FUNC(int) PyDict_SetItemString(PyObject *arg0, const char *arg1, PyObject *arg2);
                     ^
    ext/ufuncs.c:113:3: warning: passing argument 3 of ‘PyPyDict_SetItemString’ from incompatible pointer type [enabled by default]
       PyDict_SetItemString(dict, "miditofreq", h);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:220:30: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define PyDict_SetItemString PyPyDict_SetItemString
                                  ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:91:17: note: in expansion of macro ‘PyDict_SetItemString’
     PyAPI_FUNC(int) PyDict_SetItemString(PyObject *arg0, const char *arg1, PyObject *arg2);
                     ^
    ext/ufuncs.c:114:3: warning: passing argument 1 of ‘PyPy_DecRef’ from incompatible pointer type [enabled by default]
       Py_DECREF(h);
       ^
    In file included from /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/Python.h:81:0,
                     from ext/aubio-types.h:1,
                     from ext/ufuncs.c:2:
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_macros.h:274:19: note: expected ‘struct PyObject *’ but argument is of type ‘struct PyObject *’
     #define Py_DecRef PyPy_DecRef
                       ^
    /mnt/data/home/stu/.virtualenvs/shoebot-pgi-pypy/include/pypy_decl.h:472:18: note: in expansion of macro ‘Py_DecRef’
     PyAPI_FUNC(void) Py_DecRef(PyObject *arg0);
                      ^
    error: command 'cc' failed with exit status 1
    
    
    pending 
    opened by stuaxo 38
  • Help required using Aubio in Swift iOS project

    Help required using Aubio in Swift iOS project

    Hi, I'm new to both iOS(swift) and to aubio. I just want to implement a simple functionality of pitch detection in my app, by passing an audio file to aubio, and have it return the pitch value in Hz with timestamp. While I've been able to do this with the command line using 'aubiopitch', I've no idea how to do it in iOS(swift). Right now I've included the aubio framework inside my app and included the Accelerate framework, and created a bridging header to include the header files. Can somebody please help me out with a basic implementation of the above said functionality?

    opened by rkgi10 37
  • Segmentation fault: 11 on demo_tempo.py

    Segmentation fault: 11 on demo_tempo.py

    I'm on a 2013 MacBook Pro Retina with 8 GB of RAM, I'm not familiar with C or its implementation. I'm unable to get the demo_tempo working due to a segmentation fault.

    using the command python demo_tempo.py <file>.mp3

    Perhaps I am using it incorrectly? It also occurs if I use a .wav, or add in the samplerate as a parameter.

    Thanks,

    Caleb

    opened by caleb-allen 27
  • memory leak or no garbage collection?

    memory leak or no garbage collection?

    Hi,

    I'm trying to use aubio to calculate bpms for bunch of files in a row. After thorough investigation I've found out that problem is either in the depths of aubio module or in failing python garbage collection. Consider the following code (python 2.7, was taken from example):

    from aubio import tempo, source
    import time
    
    # tempo detection delay, in samples
    # default to 4 blocks delay to catch up with
    
    # this emulates 10 files
    for _ in xrange(0, 10):
        win_s = 512                 # fft size
        hop_s = win_s / 2        # hop size
    
        samplerate = 0
        s = source('test.wav', samplerate, hop_s)
        samplerate = s.samplerate
        o = tempo("default", win_s, hop_s, samplerate)
    
        # list of beats, in samples
        beats = []
    
        # total number of frames read
        total_frames = 0
    
       # actual leaking is inside loop
        while True:
            samples, read = s()
            is_beat = o(samples)
            if is_beat:
                this_beat = o.get_last_s()
                beats.append(this_beat)
            total_frames += read
            if read < hop_s: break
    
        print _
        time.sleep(3)
    
    time.sleep(4)
    

    I've added sleeps to make it handy for spotting on growing memory percentage. On my system (4G of ram), this script goes from 1.2% to 12%. As for python garbage collection, setting all used variables in loop and after it to None, deleting them and adding gc.collect() does not help, memory continue to grow.

    opened by lyssdod 27
  • Using aubio 0.4.5 in a Windows environment

    Using aubio 0.4.5 in a Windows environment

    Dear Sir or Madam,

    I recently downloaded aubio 0.4.5 for Windows (64-bit architecture), with ffmpeg build. I would like to explore the pitch detection functionality. But I am new to aubio, C and Python. I am not sure where to begin if I want to analyse audio!

    Google searches seem to imply that aubio is run through the command line, but I'm not sure exactly how to use the command line and aubio to analyse an audio file.

    I would appreciate it if you could point me in the right direction, so I can actually start using aubio!

    Yours faithfully,

    Caleb Owusu-Yianoma

    opened by calebkoy 25
  • Forever loop while getting tempo on iPhone 5

    Forever loop while getting tempo on iPhone 5

    Hello,

    I got this issue while i was trying to get tempo value of a song. I have tried to do this on arm64 devices like iPhone6, iPhone6+, it doesn't happen. It just appear in iPhone5, i guest it may be cpu arch problem, because iphone 5 is 32 bit CPU, while iPhone 6 and 6+ is 64 bit CPU. I do some debugging and found cause of problem come from beattracking.c, this line:

    phase = fvec_quadratic_peak_pos (bt->phout, maxindex);

    Value of the phase variable after this calculation is nan. Later, the beat value is calculated on phase value, so beat become nan too. And here is the loop that can not break because beat + bp is always nan

      while (beat + bp < 0) {
        beat += bp;
      }
    
    

    My question is: How to fix this problem?

    Thanks,

    opened by tiennth 20
  • simplify emscripten

    simplify emscripten

    wscript :

    • use waf/extra/c_emscripten and simplify manually set flags
    • use node to test js files

    add get_waf_emscripten.sh to setup waf with emscripten

    opened by MartinHN 19
  • Failed opening 'filename' (could not find 'fmt' in RIFF header)

    Failed opening 'filename' (could not find 'fmt' in RIFF header)

    Hi there,

    I just cloned the aubio git repository to try the different onset and pitch detection techniques on some of my own recordings. I am using the python library.

    However, on this audio file (and on any other audio file I have tried), I get the following error:

    (aubio) [email protected]:~/aubio/python/demos$ python demo_onset_plot.py 3stSTRING.WAV 
    Traceback (most recent call last):
      File "demo_onset_plot.py", line 19, in <module>
        s = source(filename, samplerate, hop_s)
    RuntimeError: AUBIO ERROR: source_wavread: Failed opening 3stSTRING.WAV (could not find 'fmt ' in RIFF header)
    
    

    I have also tried with Python3 with no success.

    opened by pavlos163 19
  • Aubio with line-in/microphone in realtime from python ?

    Aubio with line-in/microphone in realtime from python ?

    Is it possible to use aubio with realtime audio in python - whether that's aubio interfacing with something like pulseaudio, or setting up all the audio in python, with e.g. pysoundcard (the new version of pyaudio) ?

    https://github.com/bastibe/PySoundCard

    opened by stuaxo 19
  • Error while trying to install aubio

    Error while trying to install aubio

    Hi, I am facing an error when I try to install aubio through pip

    Can somebody help me, please?

    > pip install aubio
    Collecting aubio
      Using cached https://files.pythonhosted.org/packages/cd/80/302d89240603e5347c7f8026c8b02c59f8dfaec66c91a743d82de7c86006/aubio-0.4.9.tar.gz
    Requirement already satisfied: numpy in c:\users\gabriel.monteiro\appdata\local\programs\python\python37\lib\site-packages (from aubio) (1.16.3)
    Building wheels for collected packages: aubio
      Building wheel for aubio (setup.py) ... error
      ERROR: Complete output from command 'c:\users\gabriel.monteiro\appdata\local\programs\python\python37\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\GABRIE~1.MON\\AppData\\Local\\Temp\\pip-install-es8ltb5c\\aubio\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\GABRIE~1.MON\AppData\Local\Temp\pip-wheel-uor_bb_m' --python-tag cp37:
      ERROR: running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-3.7
      creating build\lib.win-amd64-3.7\aubio
      copying python\lib\aubio\cmd.py -> build\lib.win-amd64-3.7\aubio
      copying python\lib\aubio\cut.py -> build\lib.win-amd64-3.7\aubio
      copying python\lib\aubio\midiconv.py -> build\lib.win-amd64-3.7\aubio
      copying python\lib\aubio\slicing.py -> build\lib.win-amd64-3.7\aubio
      copying python\lib\aubio\__init__.py -> build\lib.win-amd64-3.7\aubio
      running build_ext
      error: [WinError 2] O sistema não pode encontrar o arquivo especificado
      checking for aubio = 0.4.9
      Running "pkg-config --libs --cflags aubio = 0.4.9" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      Info: aubio 0.4.9 was not found by pkg-config
      Info: looking for *optional* additional packages
      checking for libavcodec
      Running "pkg-config --libs --cflags libavcodec" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      checking for libavformat
      Running "pkg-config --libs --cflags libavformat" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      checking for libavutil
      Running "pkg-config --libs --cflags libavutil" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      checking for libswresample
      Running "pkg-config --libs --cflags libswresample" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      checking for libavresample
      Running "pkg-config --libs --cflags libavresample" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      checking for sndfile
      Running "pkg-config --libs --cflags sndfile" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      checking for samplerate
      Running "pkg-config --libs --cflags samplerate" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
      Info: libaubio was not installed or built locally with waf, adding src/
      Running command: cl.exe -E -DAUBIO_UNSTABLE=1 -Isrc src\aubio.h
      ----------------------------------------
    
    >   ERROR: Failed building wheel for aubio
      Running setup.py clean for aubio
    Failed to build aubio
    Installing collected packages: aubio
      Running setup.py install for aubio ... error
        ERROR: Complete output from command 'c:\users\gabriel.monteiro\appdata\local\programs\python\python37\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\GABRIE~1.MON\\AppData\\Local\\Temp\\pip-install-es8ltb5c\\aubio\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\GABRIE~1.MON\AppData\Local\Temp\pip-record-rje46fyw\install-record.txt' --single-version-externally-managed --compile:
        ERROR: running install
        running build
        running build_py
        running build_ext
        error: [WinError 2] O sistema não pode encontrar o arquivo especificado
        checking for aubio = 0.4.9
        Running "pkg-config --libs --cflags aubio = 0.4.9" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        Info: aubio 0.4.9 was not found by pkg-config
        Info: looking for *optional* additional packages
        checking for libavcodec
        Running "pkg-config --libs --cflags libavcodec" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        checking for libavformat
        Running "pkg-config --libs --cflags libavformat" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        checking for libavutil
        Running "pkg-config --libs --cflags libavutil" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        checking for libswresample
        Running "pkg-config --libs --cflags libswresample" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        checking for libavresample
        Running "pkg-config --libs --cflags libavresample" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        checking for sndfile
        Running "pkg-config --libs --cflags sndfile" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        checking for samplerate
        Running "pkg-config --libs --cflags samplerate" failed: FileNotFoundError(2, 'O sistema não pode encontrar o arquivo especificado', None, 2, None)
        Info: libaubio was not installed or built locally with waf, adding src/
        Running command: cl.exe -E -DAUBIO_UNSTABLE=1 -Isrc src\aubio.h
        ----------------------------------------
    
    > ERROR: Command "'c:\users\gabriel.monteiro\appdata\local\programs\python\python37\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\GABRIE~1.MON\\AppData\\Local\\Temp\\pip-install-es8ltb5c\\aubio\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\GABRIE~1.MON\AppData\Local\Temp\pip-record-rje46fyw\install-record.txt' --single-version-externally-managed --compile" failed with error code 1 in C:\Users\GABRIE~1.MON\AppData\Local\Temp\pip-install-es8ltb5c\aubio\
    
    compilation 
    opened by gabrielmonteiroflex 17
  • Failed install with pip on Windows 10

    Failed install with pip on Windows 10

    Trying to install aubio on Windows 10 with pypi fails:

    > pip install aubio
    Collecting aubio
      Using cached aubio-0.4.9.tar.gz (479 kB)
    Requirement already satisfied: numpy in c:\users\developer\devel\picard\.venv\lib\site-packages (from aubio) (1.24.1)
    Building wheels for collected packages: aubio
      Building wheel for aubio (setup.py) ... error
      ERROR: Command errored out with exit status 1:
       command: 'c:\users\developer\devel\picard\.venv\scripts\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Developer\\AppData\\Local\\Temp\\pip-install-_kv_f244\\aubio_e0708ada9190468da13049c40126fdb1\\setup.py'"'"'; __file__='"'"'C:\\Users\\Developer\\AppData\\Local\\Temp\\pip-install-_kv_f244\\aubio_e0708ada9190468da13049c40126fdb1\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\Developer\AppData\Local\Temp\pip-wheel-4xjiactl'
           cwd: C:\Users\Developer\AppData\Local\Temp\pip-install-_kv_f244\aubio_e0708ada9190468da13049c40126fdb1\
      Complete output (77 lines):
      running bdist_wheel
      running build
      running build_py
      Generating grammar tables from C:\Program Files\Python38\lib\lib2to3\Grammar.txt
      Writing grammar tables to C:\Program Files\Python38\lib\lib2to3\Grammar3.8.10.final.0.pickle
      Writing failed: [Errno 13] Permission denied: 'C:\\Program Files\\Python38\\lib\\lib2to3\\Grammar3.8.10.final.0.pickle'
      Generating grammar tables from C:\Program Files\Python38\lib\lib2to3\PatternGrammar.txt
      Writing grammar tables to C:\Program Files\Python38\lib\lib2to3\PatternGrammar3.8.10.final.0.pickle
      Writing failed: [Errno 13] Permission denied: 'C:\\Program Files\\Python38\\lib\\lib2to3\\PatternGrammar3.8.10.final.0.pickle'
      creating build
      creating build\lib.win-amd64-3.8
      creating build\lib.win-amd64-3.8\aubio
      copying python\lib\aubio\cmd.py -> build\lib.win-amd64-3.8\aubio
      copying python\lib\aubio\cut.py -> build\lib.win-amd64-3.8\aubio
      copying python\lib\aubio\midiconv.py -> build\lib.win-amd64-3.8\aubio
      copying python\lib\aubio\slicing.py -> build\lib.win-amd64-3.8\aubio
      copying python\lib\aubio\__init__.py -> build\lib.win-amd64-3.8\aubio
      running build_ext
      Traceback (most recent call last):
        File "<string>", line 1, in <module>
        File "C:\Users\Developer\AppData\Local\Temp\pip-install-_kv_f244\aubio_e0708ada9190468da13049c40126fdb1\setup.py", line 70, in <module>
          distrib = setup(name='aubio',
        File "c:\users\developer\devel\picard\.venv\lib\site-packages\setuptools\__init__.py", line 162, in setup
          return distutils.core.setup(**attrs)
        File "C:\Program Files\Python38\lib\distutils\core.py", line 148, in setup
          dist.run_commands()
        File "C:\Program Files\Python38\lib\distutils\dist.py", line 966, in run_commands
          self.run_command(cmd)
        File "C:\Program Files\Python38\lib\distutils\dist.py", line 985, in run_command
          cmd_obj.run()
        File "c:\users\developer\devel\picard\.venv\lib\site-packages\wheel\bdist_wheel.py", line 325, in run
          self.run_command("build")
        File "C:\Program Files\Python38\lib\distutils\cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "C:\Program Files\Python38\lib\distutils\dist.py", line 985, in run_command
          cmd_obj.run()
        File "C:\Program Files\Python38\lib\distutils\command\build.py", line 135, in run
          self.run_command(cmd_name)
        File "C:\Program Files\Python38\lib\distutils\cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "C:\Program Files\Python38\lib\distutils\dist.py", line 985, in run_command
          cmd_obj.run()
        File "C:\Program Files\Python38\lib\distutils\command\build_ext.py", line 340, in run
          self.build_extensions()
        File "C:\Program Files\Python38\lib\distutils\command\build_ext.py", line 449, in build_extensions
          self._build_extensions_serial()
        File "C:\Program Files\Python38\lib\distutils\command\build_ext.py", line 474, in _build_extensions_serial
          self.build_extension(ext)
        File "C:\Users\Developer\AppData\Local\Temp\pip-install-_kv_f244\aubio_e0708ada9190468da13049c40126fdb1\python\lib\moresetuptools.py", line 191, in build_extension
          extension.sources += generate_external(header, output_path, overwrite = False,
        File "C:\Users\Developer\AppData\Local\Temp\pip-install-_kv_f244\aubio_e0708ada9190468da13049c40126fdb1\python\lib\gen_external.py", line 271, in generate_external
          c_declarations = get_c_declarations(header, usedouble=usedouble)
        File "C:\Users\Developer\AppData\Local\Temp\pip-install-_kv_f244\aubio_e0708ada9190468da13049c40126fdb1\python\lib\gen_external.py", line 101, in get_c_declarations
          cpp_output = get_cpp_output(header=header, usedouble=usedouble)
        File "C:\Users\Developer\AppData\Local\Temp\pip-install-_kv_f244\aubio_e0708ada9190468da13049c40126fdb1\python\lib\gen_external.py", line 129, in get_cpp_output
          % err_output.decode('utf8'))
      UnicodeDecodeError: 'utf-8' codec can't decode byte 0x81 in position 62: invalid start byte
      checking for aubio = 0.4.9
      Running "pkg-config --libs --cflags aubio = 0.4.9" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      Info: aubio 0.4.9 was not found by pkg-config
      Info: looking for *optional* additional packages
      checking for libavcodec
      Running "pkg-config --libs --cflags libavcodec" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      checking for libavformat
      Running "pkg-config --libs --cflags libavformat" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      checking for libavutil
      Running "pkg-config --libs --cflags libavutil" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      checking for libswresample
      Running "pkg-config --libs --cflags libswresample" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      checking for libavresample
      Running "pkg-config --libs --cflags libavresample" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      checking for sndfile
      Running "pkg-config --libs --cflags sndfile" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      checking for samplerate
      Running "pkg-config --libs --cflags samplerate" failed: FileNotFoundError(2, 'Das System kann die angegebene Datei nicht finden', None, 2, None)
      Info: libaubio was not installed or built locally with waf, adding src/
      Running command: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.33.31629\bin\HostX86\x64\cl.exe -E -DAUBIO_UNSTABLE=1 -Isrc src\aubio.h
      ----------------------------------------
      ERROR: Failed building wheel for aubio
      Running setup.py clean for aubio
    Failed to build aubio
    

    The trouble seems to be at UnicodeDecodeError: 'utf-8' codec can't decode byte 0x81 in position 62: invalid start byte.

    opened by phw 0
  • Using command line options in Python

    Using command line options in Python

    I couldn't find any thing about this in docs: is it possible to use options available for the command line in the Python side too? I am particularly interested in aubioonset's options (e.g. threshhold, using jack etc.)

    Thank you!

    opened by amirteymuri 0
  • Bar detection?

    Bar detection?

    I use aubio in lighting control software (glight), where I use it for real-time beat detection and moving lights to the beats. This works really well. I'm now looking to extend this to "bar" detection, i.e. to include knowledge of when a bar starts and how many beats are in bar. Is this possible with aubio? If not, would this be an interesting feature request?

    opened by aroffringa 0
  • Add an aubiolevel CLI tool to compute the sound pressure level

    Add an aubiolevel CLI tool to compute the sound pressure level

    Aubio enables users to compute the sound pressure level of a buffer using miscutils.h, but there is no way to get that information from CLI tools right now.

    This adds support for a standalone CLI tool so that extracting sound pressure level information does not require building a program against the library.


    I have created this for my own needs and figure it could useful for the upstream as well.

    opened by delthas 0
Releases(0.4.9)
  • 0.4.9(Feb 27, 2019)

    Version 0.4.9 includes:

    • src/: improve overall stability, fixing potential crashes and memory leaks on invalid arguments (closes gh-216); improve library messages and reporting of system errors
    • tests/: major clean-up (closes gh-219), check return codes, increase code coverage
    • python/tests/: switch to pytest (closes gh-163), check emitted warnings
    • python/: add pages to manual with brief descriptions of classes

    Special thanks to Guoxiang Niu (@niugx) for reporting the following vulnerabilities, fixed with this release:

    • CVE-2018-19800 prevent a possible buffer overflow in new_aubio_tempo
    • CVE-2018-19801 prevent a null-pointer dereference in new_aubio_filterbank
    • CVE-2018-19802 prevent a null-pointer dereference in new_aubio_onset

    Also many thanks to @dvzrv, @romanbsd, @Bee-HN, @Lord-Kamina, and everyone who helped reporting the issues solved with this release.

    Source code(tar.gz)
    Source code(zip)
  • 0.4.8(Nov 22, 2018)

    Version 0.4.8 includes:

    • src/notes: new option release_drop (gh-203)
    • src/spectral: new parameters added to filterbank and mfcc (gh-206)
    • python/lib: start documenting module (gh-73, debian #480018), improve build for
      win-amd64 (gh-154, gh-199, gh-208)
    • src fixes: prevent crash when using fft sizes unsupported by vDSP (gh-207),
      prevent saturation when down-mixing a multi-channel source (avcodec/ffmpeg)

    Thanks to @mj15003, @OneDirection9, @notalentgeek, @ulyssesp, @MaxHastings, @baozix, and everyone who reported and helped tracking down these issues.

    Source code(tar.gz)
    Source code(zip)
  • 0.4.7(Sep 23, 2018)

    Version 0.4.7 includes:

    • src/io/, src/notes/, src/pitch: prevent crashes on corrupted files
    • src/spectral/dct.h: add dct type II object with optimised versions
    • examples/: fix jack midi output, improve messages when jack disabled
    • python/: add dct support, minor bug fixes tests and demos
    • wscript: improve support for BLAS/ATLAS

    Many thanks to @jcowgill, @WIZARDISHUNGRY, @ancorcruz, @cyclopsian, and @fCorleone for their patches, bug reports, and comments, and to everyone who contributed to this release.

    See full ChangeLog for the detail.

    Source code(tar.gz)
    Source code(zip)
  • 0.4.6(Oct 4, 2017)

    Version 0.4.6 includes:

    • yinfast, a new version of the YIN pitch detection algorithm, that uses spectral convolution to compute the same results as the original yin, but with a cost O(N log(N)), making it much faster than the plain implementation (O(N^2))

    • Intel IPP optimisations (thanks to Eduard Mueller), available for Linux, MacOS, Windows, and Android

    • improved support for emscripten (thanks to Martin Hermant), which compiles the aubio library as a javascript module and lets you run aubio's algorithms directly from within a web-page.

    0.4.6 also comes with several bug fixes and improvements.

    Many thanks to Eduard Mueller (@emuell), Martin Hermant (@MartinHN), Hannes Fritz (@hztirf), Stuart Axon (@stuaxo), Jörg (@7heW4yne), ssj71 (@ssj71), Andreas Borg (@borg), Rob (@mlrobsmt) and everyone else for their valuable contributions and input.

    Source code(tar.gz)
    Source code(zip)
  • 0.4.5(Apr 10, 2017)

    A new version of aubio, 0.4.5, is available.

    This version features:

    • a new aubio python command line tool to extract information from sound files
    • improved default parameters for onset detection, using adaptive spectral whitening and compression
    • support for libswresample

    New options --miditap-note and --miditap-velo have been added to aubioonset and aubiotrack to adjust the note and velocity of the midi note emitted by onsets and beats.

    0.4.5 also comes with a bunch of fixes, including improved documentation, build system fixes, and platform compatibility.

    Many thanks to Martin Hermant (@MartinHN), Sebastian Böck (@superbock), Travis Seaver (@tseaver) and others for their help and contributions.

    More info at aubio.org

    Source code(tar.gz)
    Source code(zip)
  • 0.4.4(Mar 28, 2017)

    This version features a new logging module that allows redirecting errors, warnings, and other messages coming from libaubio. As usual, these messages are printed to stderr or stdout by default.

    Another new feature is the --minioi option added to aubioonset, which lets you adjust the minimum Inter-Onset Interval (IOI) separating two consecutive events. This makes it easier to reduce the number of doubled detections.

    New demos have been added to the python/demos folder, including one using the pyaudio module to read samples from the microphone in real time.

    More info at aubio.org

    Source code(tar.gz)
    Source code(zip)
  • 0.4.3(Mar 28, 2017)

    This version features a complete rewrite of the python module, making it faster and more memory efficient than any previous version. It also adds compatibility for Python 3.x.

    The build system has been improved so that python-aubio can now be installed with pip using a simple command:

    $ pip install aubio
    

    0.4.3 also comes with a number of improvements and several optimisations, so you should see both the library and the python module run significantly faster. Many computations have been vectorised, using either Atlas/cblas or the Accelerate framework, depending on the host platform.

    More info on aubio.org

    Source code(tar.gz)
    Source code(zip)
Frescobaldi LilyPond Editor

README for Frescobaldi Homepage: http://www.frescobaldi.org/ Main author: Wilbert Berendsen Frescobaldi is a LilyPond sheet music text editor. It aims

Frescobaldi 600 Dec 29, 2022
🎵 A music bot for discord servers!

music bot A music bot for Discord Servers Features Play songs in your discord server Get the lyrics without going on a web explorer Commands Command P

1 Jul 25, 2022
Sparse Beta-Divergence Tensor Factorization Library

NTFLib Sparse Beta-Divergence Tensor Factorization Library Based off of this beta-NTF project this library is specially-built to handle tensors where

Stitch Fix Technology 46 Jan 08, 2022
Klangbecken: The RaBe Endless Music Player

Klangbecken Klangbecken is the minimalistic endless music player for Radio Bern RaBe based on liquidsoap. It supports configurable and editable playli

Radio Bern RaBe 8 Oct 09, 2021
Port Hitsuboku Kumi Chinese CVVC voicebank to deepvocal. / 筆墨クミDeepvocal中文音源

Hitsuboku Kumi (筆墨クミ) is a UTAU virtual singer developed by Cubialpha. This project ports Hitsuboku Kumi Chinese CVVC voicebank to deepvocal. This is the first open-source deepvocal voicebank on Gith

8 Apr 26, 2022
DeepMusic is an easy to use Spotify like app to manage and listen to your favorites musics.

DeepMusic is an easy to use Spotify like app to manage and listen to your favorites musics. Technically, this project is an Android Client and its ent

Labrak Yanis 1 Jul 12, 2021
Implementation of "Slow-Fast Auditory Streams for Audio Recognition, ICASSP, 2021" in PyTorch

Auditory Slow-Fast This repository implements the model proposed in the paper: Evangelos Kazakos, Arsha Nagrani, Andrew Zisserman, Dima Damen, Slow-Fa

Evangelos Kazakos 57 Dec 07, 2022
python script for getting mp3 files from yaoutube playlist

mp3-from-youtube-playlist python script for getting mp3 files from youtube playlist. Do your non-tech brown relatives ask you for downloading music fr

Shuhan Mirza 7 Oct 19, 2022
Datamoshing with FFmpeg

ffmosher Datamoshing with FFmpeg Drag and drop video onto mosh.bat to create a datamoshed video. To datamosh an image, please ensure the file is in a

18 Sep 11, 2022
Official implementation of A cappella: Audio-visual Singing VoiceSeparation, from BMVC21

Y-Net Official implementation of A cappella: Audio-visual Singing VoiceSeparation, British Machine Vision Conference 2021 Project page: ipcv.github.io

Juan F. Montesinos 12 Oct 22, 2022
A python script that can play .mp3 URLs upon the ringing or motion detection of a Ring doorbell. The sound plays through Sonos speakers.

Ring x Sonos A python script that plays .mp3 files whenever a doorbell is rung or a doorbell detects motion. Features Music! Authors @braden Running T

braden 0 Nov 12, 2021
Generating a structured library of .wav samples with Python.

sample-library Scripts for generating a structured sample library with Python Requires Docker about Samples are written to wave files in lib/. Differe

Ben Mangold 1 Nov 11, 2021
Accompanying code for our paper "Point Cloud Audio Processing"

Point Cloud Audio Processing Krishna Subramani1, Paris Smaragdis1 1UIUC Paper For the necessary libraries/prerequisites, please use conda/anaconda to

Krishna Subramani 17 Nov 17, 2022
Jarvis From Basic to Advance - make a voice assistant similar to JARVIS (in iron man movie)

JARVIS (Basic to Advance) This was my attempt to make a voice assistant similar to JARVIS (in iron man movie) Let's be honest, it's not as intelligent

codesempai 17 Dec 25, 2022
GNU Radio – the Free and Open Software Radio Ecosystem

GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used wit

GNU Radio 4.1k Jan 06, 2023
PyAbsorp is a python module that has the main focus to help estimate the Sound Absorption Coefficient.

This is a package developed to be use to find the Sound Absorption Coefficient through some implemented models, like Biot-Allard, Johnson-Champoux and

Michael Markus Ackermann 8 Oct 19, 2022
A Python wrapper for the high-quality vocoder "World"

PyWORLD - A Python wrapper of WORLD Vocoder Linux Windows WORLD Vocoder is a fast and high-quality vocoder which parameterizes speech into three compo

Jeremy Hsu 583 Dec 15, 2022
Audio Retrieval with Natural Language Queries: A Benchmark Study

Audio Retrieval with Natural Language Queries: A Benchmark Study Paper | Project page | Text-to-audio search demo This repository is the implementatio

21 Oct 31, 2022
Simple discord bot by @merive 🤖

Parzibot Powerful and Useful Discord Bot on Python. The source code of the bot is available to everyone. Parzibot uses English language. This is free

merive_ 3 Dec 28, 2022
Voice package for Pycord adding extra features.

VoiceIO Voice package for Pycord adding extra features. Example Down bellow is an example of what you can currently do. import voiceio process = voic

pycord 1 Dec 24, 2021