source: doc/requirements.rst @ 392ad1c

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5pitchshiftsamplertimestretchyinfft+
Last change on this file since 392ad1c was 7a8a07e, checked in by Paul Brossier <piem@piem.org>, 8 years ago

doc/develop.rst: add some documentation about the c-api

  • Property mode set to 100644
File size: 5.6 KB

Requirements

While aubio can be built without any external dependencies, we recommend to use at least some of the following libraries.

Platform notes

On all platforms, you will need to have installed:

  • a compiler (gcc, clang, msvc, ...)
  • python (any version >= 2.7, including 3.x)
  • a terminal to run command lines in

Linux

The following External libraries will be used if found: libav, libsamplerate, libsndfile, libfftw3.

macOS

The following system frameworks will be used on Mac OS X systems:

Note

To build a fat binary for both i386 and x86_64, use ./waf configure --enable-fat.

The following External libraries will also be checked: libav, libsamplerate, libsndfile, libfftw3.

Windows

To use a specific version of the compiler, --msvc_version. To build for a specific architecture, use --msvc_target. For instance, to build aubio for x86 using msvc 12.0, use:

waf configure --msvc_version='msvc 12.0' --msvc_target='x86'

The following External libraries will be used if found: libav, libsamplerate, libsndfile, libfftw3.

iOS

The following system frameworks will be used on iOS and iOS Simulator.

To build aubio for iOS, configure with --with-target-platform=ios. For the iOS Simulator, use --with-target-platform=iosimulator instead.

By default, aubio is built with the following flags on iOS:

CFLAGS="-fembed-bitcode -arch arm64 -arch armv7 -arch armv7s -miphoneos-version-min=6.1"

and on iOS Simulator:

CFLAGS="-arch i386 -arch x86_64 -mios-simulator-version-min=6.1"

Set CFLAGS and LINKFLAGS to change these default values, or edit wscript directly.

Build options

Some additional options can be passed to the configure step. For the complete list of options, run:

$ ./waf configure --help

Double precision

To compile aubio in double precision mode, configure with --enable-double.

To compile aubio in single precision mode, use --disable-double (default).

Fat binary

To build a fat binary on Mac OS platforms, configure with --enable-fat.

External libraries

External libraries are checked for using pkg-config. Set the PKG_CONFIG_PATH environment variable if you have them installed in an unusual location.

Note

If pkg-config is not found in PATH, the configure step will succeed, but none of the external libraries will be used.

libav

libav.org, open source audio and video processing tools.

If all of the following libraries are found, they will be used to compile aubio_source_avcodec. so that aubio_source will be able to decode audio from all formats supported by libav.

  • libavcodec
  • libavformat
  • libavutil
  • libavresample

To enable this option, configure with --enable-avcodec. The build will then failed if the required libraries are not found. To disable this option, configure with --disable-avcodec

libsndfile

libsndfile, a C library for reading and writing sampled sound files.

With libsndfile built in, aubio_source_sndfile will be built in and used by aubio_source.

To enable this option, configure with --enable-sndfile. The build will then fail if the required library is not found. To disable this option, configure with --disable-sndfile

libsamplerate

libsamplerate, a sample rate converter for audio.

With libsamplerate built in, aubio_source_sndfile will support resampling, and aubio_resample will be fully functional.

To enable this option, configure with --enable-samplerate. The build will then fail if the required library is not found. To disable this option, configure with --disable-samplerate

libfftw3

FFTW, a C subroutine for computing the discrete Fourier transform

With libfftw3 built in, aubio_fft will use FFTW to compute Fast Fourier Transform (FFT), allowing aubio to compute FFT on length that are not a power of 2.

To enable this option, configure with --enable-fftw3. The build will then fail if the required library is not found. To disable this option, configure with --disable-fftw3

External tools

If the following tools are found, additional documentations are built:

These tools are searched for in the current PATH environment variable. By default, the documentation is built only if the tools are found.

To disable the documentation, configure with --disable-docs. To build with the documentation, configure with --enable-docs.

Note: See TracBrowser for help on using the repository browser.