as_pysrc

as_pysrc

This is the collection of modules for signal processing, maintained by the AS team on forge.ircam.fr

This collection is supposed to gather python modules that provide a startup collection for using python at IRCAM. The modules should work with Python 2.7.

For the moment you find here

  • basic functions for spectral domain signal processing lpc, levinson, freqz, dap,
  • spectral and time domain generators for the LF glottal pulse model,
  • many command line interfaces for svp analysis,
  • supporting functions for reading and writing of SDIF and audio files,
  • a few mathematical function related to manipulation of phase spectra
  • optimization with scaled conjugate gradient as well as root finding with fzero.

The module collection can be obtained for all users that are registered on the forge git repository via

git clone git+ssh://git@git.forge.ircam.fr/as_pysrc.git

This command checks out the master branch. Modifications are reserved to project members. If you want to actively modify these modules on the git server you would need to ask to become project member. All other users are suggested to switch locally to a new branch and apply modifications there, such that updates in the master branch can be pulled and merged easily.

Dependencies

The following python extensions and packages are used within as_pysrc

numpy, scipy, cython, execnet, pysndfile

All these are most easily installed from pypi using pip. For installing execnet this would for exemple lead to

pip install execnet

Besides these packages some parts of as_pysrc make use of the python interface for the SDIF file io. For this the python interface of the Easdif library from source forge should be installed like this

cvs -d:pserver:anonymous@sdif.cvs.sourceforge.net:/cvsroot/sdif login 
cvs -z3 -d:pserver:anonymous@sdif.cvs.sourceforge.net:/cvsroot/sdif co -P EASDIF_SDIF
cd EASDIF_SDIF
mkdir -p build_EASDIF_x86_64
cd build_EASDIF_x86_64
rm -f CMakeCache.txt
cmake -DEASDIF_DO_PYTHON:bool=on -DPYTHON:STRING=python ..
make install_python_easdif_module_globally

or if you have no right to write into your python installation

make install_python_easdif_module_locally

optional you will get a much better experience if you use

matplotlib and ipython

Linux

The python module collection has certain dependencies. A shell script that installs all requires dependencies is provided in shell_scripts/install_python_2.7.6.sh.

The current version of the shell script will install python and all modules in

/u/formes/share/packages/Python_2.7.6/$SYS

where SYS is an identifier that can be used install the python environment for different OS versions on a NFS storage device. You are not required to use this script, you can also review the script and add missing dependencies (notably SDIF) to your existing python installation.

Mac OS X

The different dependencies (besides eaSDIF), can be rather simply installed via macports and homebrew. The only exception is execnet that have to be installed via pip

Compiling extensions

After having installed all the required dependencies, you should run the

make all

in the as_pysrc toplevel directory to compile all c/c++ extensions and install them in your user site directory. After this is done you should be ready to go.

You can compile for different architectures using different python executables for the same as_pysrc directory.

For comments/complaints please use the forge issue tracker at http://forge.ircam.fr/p/as_pysrc/issues/

Powered by InDefero,
a CĂ©ondo Ltd initiative.