You can download Yaafe source code, yaafe-v?.tgz, from the project’s home page: http://yaafe.sourceforge.net.
Yaafe source code should compile on linux and MacOsX platform, and uses CMake as compilation tool.
Yaafe requires thirdparty libraries to enable specific features. Some of these library may already be available on your system.
The argtable library is required.
Depending on optional features you want to use, other librairies may be used:
To use the yaafe.py script you need Python >= 2.5, and the numpy package.
The above dependencies can be installed using the following debian/ubuntu packages:
cmake: | cmake cmake-curses-gui |
---|---|
argtable2: | libargtable2-0 libargtable2-dev |
libsndfile: | libsndfile1 libsndfile1-dev |
libmpg123: | libmpg123-0 libmpg123-dev |
lapack: | liblapack-dev |
hdf5: | libhdf5-serial-dev libhdf5-serial-1.8.4 |
fftw3: | libfftw3-3 libfftw3-dev |
To get all those packages with apt-get:
> sudo apt-get install cmake cmake-curses-gui libargtable2-0 libargtable2-dev libsndfile1 libsndfile1-dev libmpg123-0 libmpg123-dev libfftw3-3 libfftw3-dev liblapack-dev libhdf5-serial-dev libhdf5-serial-1.8.4
Once previous libraries are installed (some may have been locally installed in <lib-path>), you can compile with the following steps:
> mkdir build
> cd build
> ccmake -DCMAKE_PREFIX_PATH=<lib-path> -DCMAKE_INSTALL_PREFIX=<install-path> ..
The CMAKE_PREFIX_PATH option allows to specify a directory where Cmake looks for thirdparty libraries (lib/ and include/ directories). Additional options can also be used to define the location of a particular library: SNDFILE_ROOT, MPG123_ROOT, ARGTABLE2_ROOT, HDF5_ROOT, MATLAB_ROOT, FFTW3_ROOT.
ccmake starts an interactive gui which enables you to control various build options.
Several options can be set to control Yaafe build:
Those options can be set interactively within the ccmake gui, or can be set passing -DWITH_XXX=ON -DWITH_XXX=OFF arguments to the cmake or ccmake programs.
> make
> make install
You should find the following directories under your installation path:
INSTALL_DIR/bin/ # scripts and binaries
INSTALL_DIR/include/ # C++ headers to develop new components or integrate Yaafe in your application
INSTALL_DIR/lib/ # dynamic libraries
INSTALL_DIR/matlab/ # matlab scripts, and mex if WITH_MATLAB_MEX was enabled
INSTALL_DIR/python_packages/ # Python part of Yaafe
INSTALL_DIR/yaafe_extensions/ # Yaafe extensions dir
You must set your YAAFE_PATH environment var to the “yaafe_extensions” dir so that yaafe can find available features:
export YAAFE_PATH=$INSTALL_DIR/yaafe_extensions
To easily use Yaafe, you should set the following environment vars:
export PATH=$PATH:$INSTALL_DIR/bin
# on MacOsX replace LD_LIBRARY_PATH => DYLD_LIBRARY_PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INSTALL_DIR/lib
export PYTHONPATH=$PYTHONPATH:$INSTALL_DIR/python_packages
if you use Matlab, you can set your MATLABPATH var:
export MATLABPATH=$MATLABPATH:$INSTALL_DIR/matlab