Table of Contents

Packaging LADSPA libraries in jMax Phoenix packages

How you can see in this page there are various way to use LADSPA plugins in jMax.

If you want to invest a little time to transform once for all a LADSPA library in a jMax library, so that you can package this library with your application and for example to distribute it on the Internet, the following give you the precise steps to do.

First, compile the LADSPA library

Well, in the following we assume you have the library compiled in the good format and filename for your environment. How to compile it depends on the library. Being LADSPA plugins, there is no compile time dependency with jMax, of course.

Build a directory Structure

For the sake of simplicity, let's assume your package will be called moog-emulator, and that include a couples of LADSPA libraries, oscillators.so and filter.so (the file extension will be different on Windows and Mac, for example).

You should build by hand the following directory structure:

moog-emulator/
             /lib
             /help
             /doc

Put your two libraries in the lib directory.

Build the package description file

jMax comes with a small command line tool to generate a package description file starting directly from the shared libraries.

In this example, you would use it like this:

mdc>cd moog-emulator
mdc> jmax-ladspa moog-emulator lib/oscillators.so lib/filters.so > moog-emulator.jpkd

Than, you may take a look to the produced file, in order for example to rename the objects (by default they have the LADSPA plugin label as jMax object name, but this is not mandatory), to set an image or an icon for specific objects (use a MiniMoog photo for the oscillator, for example), and possibly add references to the help patches if you really really really want to write them.

The jmax-ladspa program is installed in the bin directory of the jmax distribution.

Make the help patches

You should really really write some help patches for the plugins inside the libraries, but that not mandatory. But you really should. The should be called objectName-help.jmax. For each library, you should write a help summary patch, including an instance of each object in the library, so to

If you have done all this work (did i mentioned the help patches ?) it would be a great idea to send the package to the jMax developers team, so that we can put it in the main package repository for jmax, so that everybody can automatically use it from jMax Phoenix.