Mod ladspa

From FreeSWITCH Wiki
Jump to: navigation, search

mod_ladspa is a module that allow to use Linux Audio Developer's Simple Plugin API inside freeswitch in realtime.

Contents

Quick Install

These are basic instruction to get thing running quickly on CentOS 5 64bit:

See also: mod_soundtouch.

CentOS 5 64Bit

sudo yum -y install ladspa-devel

If ladspa-devel isn't found you need to install the epel repo for CentOS


rpm -ivh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
sudo yum -y install ladspa-devel
cd /usr/src
wget http://web.mit.edu/tbaran/www/autotalent-0.2.tar.gz
wget ftp://ftp.pbone.net/mirror/www-ccrma.stanford.edu/planetccrma/mirror/centos/linux/planetccrma/5/x86_64/ladspa-tap-plugins-0.7.0-5.el5.ccrma.x86_64.rpm
wget ftp://ftp.pbone.net/mirror/atrpms.net/sl5-x86_64/atrpms/stable/libgsm1-1.0.13-2.el5.x86_64.rpm
wget ftp://ftp.pbone.net/mirror/download.fedora.redhat.com/pub/fedora/epel/5/x86_64/fftw3-3.2.2-3.el5.x86_64.rpm
wget ftp://ftp.pbone.net/mirror/www-ccrma.stanford.edu/planetccrma/mirror/centos/linux/planetccrma/5/x86_64/ladspa-swh-plugins-0.4.15-11.el5.ccrma.x86_64.rpm
rpm -ivh ladspa-tap-plugins-0.7.0-5.el5.ccrma.x86_64.rpm
rpm -ivh libgsm1-1.0.13-2.el5.x86_64.rpm
rpm -ivh fftw3-3.2.2-3.el5.x86_64.rpm
rpm -ivh ladspa-swh-plugins-0.4.15-11.el5.ccrma.x86_64.rpm
tar xfvz autotalent-0.2.tar.gz 
cd autotalent-0.2
make install

Next you can set the plug-in directory

export LADSPA_PATH=/usr/lib64/ladspa

Then you can use: listplugins to get a listing of all the plug-ins.

CentOS 5 32bit

CentOS 5 32bit is similar:

sudo yum -y install ladspa-devel
cd /usr/src
wget http://web.mit.edu/tbaran/www/autotalent-0.2.tar.gz
wget ftp://ftp.pbone.net/mirror/www-ccrma.stanford.edu/planetccrma/mirror/centos/linux/planetccrma/5/i386/ladspa-tap-plugins-0.7.0-5.el5.ccrma.i386.rpm
wget ftp://ftp.pbone.net/mirror/atrpms.net/sl5-i386/atrpms/stable/libgsm1-1.0.13-2.el5.i386.rpm
wget ftp://ftp.pbone.net/mirror/download.fedora.redhat.com/pub/fedora/epel/5/i386/fftw3-3.2.2-3.el5.i386.rpm
wget ftp://ftp.pbone.net/mirror/www-ccrma.stanford.edu/planetccrma/mirror/centos/linux/planetccrma/5/i386/ladspa-swh-plugins-0.4.15-11.el5.ccrma.i386.rpm
rpm -ivh ladspa-tap-plugins-0.7.0-5.el5.ccrma.i386.rpm
rpm -ivh libgsm1-1.0.13-2.el5.i386.rpm
rpm -ivh fftw3-3.2.2-3.el5.i386.rpm
rpm -ivh ladspa-swh-plugins-0.4.15-11.el5.ccrma.i386.rpm
tar xfvz autotalent-0.2.tar.gz 
cd autotalent-0.2
make install

Check for the existence of /usr/lib64/ladspa. If it exists then do this: (ON 32bit Platform only)

mv /usr/lib64/ladspa/* /usr/lib/ladspa
rm -fr /usr/lib64/ladspa

Debian 5 32bit

Setup for debian-based distros:

apt-get install ladspa-sdk tap-plugins swh-plugins libgsm1 libfftw3-3 autotalent

Verify and get a listing of all the plug-ins with:

export LADSPA_PATH=/usr/lib/ladspa
listplugins | grep autotalent

Other OSs

possible replacements for the 4 rpms:

ladspa-tap-plugins-0.7.0-5.el5.ccrma -> [1]
libgsm1-1.0.13-2.el5 -> [2]
fftw3-3.2.2-3.el5 -> [3]
ladspa-swh-plugins-0.4.15-11.el5.ccrma -> [4]

After Installation

Then you just compile the mod_ladspa module, install it and load it. Look in conf/dialplan/default/00_ladspa.xml for an example of using some if the basic ladspa plugins. To see all the plugins then list the contents of your /usr/lib/ladspa or /usr/lib64/ladspa directory.

Enjoy singing like Cher!