Difference between revisions of "LADSPA"
m (Initial creation. Currently contains the starting template only.) |
m (Intermediate save. Sorry for this. I'm new. I'll get better, eventually.) |
||
Line 2: | Line 2: | ||
|- | |- | ||
!Download Source: | !Download Source: | ||
− | | URL | + | | URL - http://www.ladspa.org/download/ladspa_sdk_1.13.tgz |
− | + | } | |
− | |||
− | |||
− | |||
---- | ---- | ||
− | {{Package-Introduction| | + | {{Package-Introduction|LADSPA is the "Linux Audio Developer's Simple Programming API," whose goal is to provide a versatile audio plug-in capability similar to VST. It is deliberately designed to be extremely simple. As described on the project web site, "The 'S' in 'LADSPA' is meant seriously." The LADSPA development "framework" consists of just one C header file, plus the development tools you will build here. |http://www.ladspa.org}} |
---- | ---- | ||
− | + | == Common Build Instructions == | |
− | + | The build system is not autotools based. However, the makefile is so simple that you will probably want to simply edit and run the makefile manually. | |
− | + | Build the package | |
− | + | cd src | |
+ | edit makefile | ||
+ | INSTALL_PLUGINS_DIR = ... | ||
+ | INSTALL_INCLUDE_DIR = ... | ||
+ | INSTALL_BINARY_DIR = ... | ||
+ | make | ||
− | + | Install the package | |
− | + | make install | |
− | + | create multiarch wrappers for all 3 binaries | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Here is a script that automates this process, while also adding DESTDIR capability, which is missing in the original makefile: | |
− | + | cat > build.sh << "EOF" | |
+ | : ${CLFS_LIB32:="lib"} | ||
+ | : ${CLFS_LIBN32:="lib32"} | ||
+ | : ${CLFS_LIB64:="lib64"} | ||
+ | : ${CLFS_LIB:="lib"} | ||
− | + | eval CLFS_LIB='$'CLFS_LIB${USE_ARCH} && | |
− | + | eval BUILD='$'BUILD${USE_ARCH} && | |
− | + | eval LD_BUILD='$'LD_BUILD${USE_ARCH} && | |
− | + | pushd src && | |
− | ''' | + | if [ -e makefile-original ]; then |
+ | |||
+ | make clean | ||
+ | mv -f -v makefile-original makefile | ||
+ | |||
+ | fi | ||
+ | |||
+ | CLFS_LIB=${CLFS_LIB} \ | ||
+ | sed -i-original \ | ||
+ | -e 's/$(INSTALL_PLUGINS_DIR)/$(DESTDIR)$(INSTALL_PLUGINS_DIR)/g' \ | ||
+ | -e 's/$(INSTALL_INCLUDE_DIR)/$(DESTDIR)$(INSTALL_INCLUDE_DIR)/g' \ | ||
+ | -e 's/$(INSTALL_BINARY_DIR)/$(DESTDIR)$(INSTALL_BINARY_DIR)/g' \ | ||
+ | -e "s|/usr/local|/usr|g" \ | ||
+ | -e "s|/lib/|/${CLFS_LIB}/|g" \ | ||
+ | makefile && | ||
+ | |||
+ | make \ | ||
+ | DESTDIR=${DESTDIR} \ | ||
+ | CC="gcc ${BUILD}" \ | ||
+ | CPP="g++ ${BUILD}" \ | ||
+ | LD="ld ${LD_BUILD}" && | ||
+ | |||
+ | make install && | ||
+ | |||
+ | if [ "$USE_ARCH" != "" ]; then | ||
+ | |||
+ | mv -v ${DESTDIR}/usr/bin/analyseplugin ${DESTDIR}/usr/bin/analyseplugin-${USE_ARCH} && | ||
+ | mv -v ${DESTDIR}/usr/bin/applyplugin ${DESTDIR}/usr/bin/applyplugin-${USE_ARCH} && | ||
+ | mv -v ${DESTDIR}/usr/bin/listplugins ${DESTDIR}/usr/bin/listplugins-${USE_ARCH} | ||
+ | |||
+ | fi | ||
+ | |||
+ | if [ "${USE_ARCH}" == "64" ]; then | ||
+ | |||
+ | ln -sfv multiarch_wrapper ${DESTDIR}/usr/bin/analyseplugin && | ||
+ | ln -sfv multiarch_wrapper ${DESTDIR}/usr/bin/applyplugin && | ||
+ | ln -sfv multiarch_wrapper ${DESTDIR}/usr/bin/listplugins | ||
+ | |||
+ | fi | ||
+ | |||
+ | popd | ||
+ | EOF | ||
+ | |||
+ | chmod +x build.sh | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Non-Multilib == | == Non-Multilib == | ||
− | Compile the package: | + | Compile and install the package: |
− | |||
− | |||
− | |||
− | + | ./build.sh | |
− | |||
− | |||
== Multilib == | == Multilib == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
=== 32Bit === | === 32Bit === | ||
− | Compile the package: | + | Compile and install the package: |
− | + | USE_ARCH=32 ./build.sh | |
− | |||
− | |||
− | |||
− | |||
− | |||
=== N32 === | === N32 === | ||
− | Compile | + | Compile and install the package: |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | To Do: (Please Contribute. It is intended that "USE_ARCH=N32 ./build.sh" should work.) | |
=== 64Bit === | === 64Bit === | ||
− | Compile the package: | + | Compile and install the package: |
− | + | USE_ARCH=64 ./build.sh | |
− | |||
− | |||
− | + | == Configuring == | |
− | + | An environment variable, LADSPA_PATH, is required. | |
− | + | cat > /etc/profile.d/50-ladspa.sh << "EOF" | |
− | + | export LADSPA_PATH=/usr/lib/ladspa:/usr/lib32/ladspa:/usr/lib64/ladspa | |
− | |||
== Contents == | == Contents == | ||
− | |||
− | |||
{| style="text-align: left;" | {| style="text-align: left;" | ||
|-valign="top" | |-valign="top" | ||
!Installed Directories: | !Installed Directories: | ||
− | |/ | + | |/usr/lib{,32,64}/ladspa |
|-valign="top" | |-valign="top" | ||
!Installed Programs: | !Installed Programs: | ||
− | | | + | |analyseplugin, applyplugin, listplugins |
|-valign="top" | |-valign="top" | ||
!Installed Libraries: | !Installed Libraries: | ||
− | | | + | |amp.so, delay.so, filter.so, noise.so, sine.so |
|} | |} | ||
Line 143: | Line 141: | ||
{| style="text-align: left;" | {| style="text-align: left;" | ||
|-valign="top" | |-valign="top" | ||
− | ! | + | !analyseplugin, applyplugin, listplugins |
− | | | + | |are tools for inspecting and testing ladspa plug-ins. |
|-valign="top" | |-valign="top" | ||
− | ! | + | !amp.so, delay.so, filter.so, noise.so, sine.so |
− | | | + | |are sample plug-ins |
|-valign="top" | |-valign="top" | ||
− | ! | + | ! /usr/include/ladspa.h |
− | |is | + | | is the API, in its entirety. The comments in this (well-commented) header file comprise the API documentation. |
|} | |} | ||
− | [[Category:< | + | [[Category:<Programming>]] |
Revision as of 20:49, 20 July 2009
Download Source: | URL - http://www.ladspa.org/download/ladspa_sdk_1.13.tgz
} ContentsIntroduction to LADSPALADSPA is the "Linux Audio Developer's Simple Programming API," whose goal is to provide a versatile audio plug-in capability similar to VST. It is deliberately designed to be extremely simple. As described on the project web site, "The 'S' in 'LADSPA' is meant seriously." The LADSPA development "framework" consists of just one C header file, plus the development tools you will build here. Project Homepage: http://www.ladspa.org Common Build InstructionsThe build system is not autotools based. However, the makefile is so simple that you will probably want to simply edit and run the makefile manually. Build the package cd src edit makefile INSTALL_PLUGINS_DIR = ... INSTALL_INCLUDE_DIR = ... INSTALL_BINARY_DIR = ... make Install the package make install create multiarch wrappers for all 3 binaries Here is a script that automates this process, while also adding DESTDIR capability, which is missing in the original makefile: cat > build.sh << "EOF" : ${CLFS_LIB32:="lib"} : ${CLFS_LIBN32:="lib32"} : ${CLFS_LIB64:="lib64"} : ${CLFS_LIB:="lib"} eval CLFS_LIB='$'CLFS_LIB${USE_ARCH} && eval BUILD='$'BUILD${USE_ARCH} && eval LD_BUILD='$'LD_BUILD${USE_ARCH} && pushd src && if [ -e makefile-original ]; then make clean mv -f -v makefile-original makefile fi CLFS_LIB=${CLFS_LIB} \ sed -i-original \ -e 's/$(INSTALL_PLUGINS_DIR)/$(DESTDIR)$(INSTALL_PLUGINS_DIR)/g' \ -e 's/$(INSTALL_INCLUDE_DIR)/$(DESTDIR)$(INSTALL_INCLUDE_DIR)/g' \ -e 's/$(INSTALL_BINARY_DIR)/$(DESTDIR)$(INSTALL_BINARY_DIR)/g' \ -e "s|/usr/local|/usr|g" \ -e "s|/lib/|/${CLFS_LIB}/|g" \ makefile && make \ DESTDIR=${DESTDIR} \ CC="gcc ${BUILD}" \ CPP="g++ ${BUILD}" \ LD="ld ${LD_BUILD}" && make install && if [ "$USE_ARCH" != "" ]; then mv -v ${DESTDIR}/usr/bin/analyseplugin ${DESTDIR}/usr/bin/analyseplugin-${USE_ARCH} && mv -v ${DESTDIR}/usr/bin/applyplugin ${DESTDIR}/usr/bin/applyplugin-${USE_ARCH} && mv -v ${DESTDIR}/usr/bin/listplugins ${DESTDIR}/usr/bin/listplugins-${USE_ARCH} fi if [ "${USE_ARCH}" == "64" ]; then ln -sfv multiarch_wrapper ${DESTDIR}/usr/bin/analyseplugin && ln -sfv multiarch_wrapper ${DESTDIR}/usr/bin/applyplugin && ln -sfv multiarch_wrapper ${DESTDIR}/usr/bin/listplugins fi popd EOF chmod +x build.sh
Non-MultilibCompile and install the package: ./build.sh Multilib32BitCompile and install the package: USE_ARCH=32 ./build.sh N32Compile and install the package: To Do: (Please Contribute. It is intended that "USE_ARCH=N32 ./build.sh" should work.) 64BitCompile and install the package: USE_ARCH=64 ./build.sh ConfiguringAn environment variable, LADSPA_PATH, is required. cat > /etc/profile.d/50-ladspa.sh << "EOF" export LADSPA_PATH=/usr/lib/ladspa:/usr/lib32/ladspa:/usr/lib64/ladspa Contents
Short Descriptions
[[Category:<Programming>]] |
---|