A plugin that loads and controls Pure Data patches.
This repository is a fork of Camomile with edits to support externals from the ELSE library.
- Issues about the support of ELSE library in Camomile are welcomed.
- Issues about Camomile itself, please fill your issue in https://github.com/pierreguillot/Camomile/issues.
- Issues about ELSE itself, please fill your issue in https://github.com/porres/pd-else/issues.
Camomile-ELSE is a plugin with Pure Data and the ELSE library of externals embedded that offers to load and to control patches inside a digital audio workstation. The plugin is available as VST, VST3, LV2 and Audio Unit for Windows, Linux and MacOS. Documentation and further information are available on the wiki pages of the official Camomile project. Downloads and some more information can be found in the wiki of Camomile-ELSE and in Camomile-ELSE releases.
Specific documentation on how to use Camomile-ELSE will be disponible soon.
The last stable release of the plugin is directly downloadable here and a list of all the releases is available here.
As for the examples given within the distribution, most of the time plugins created with Camomile must be generated. Generating plugins does not require any development skill and is pretty easy and straightforward if your read carefully the documentation. This operation requires only 6 basic actions (copy/past/rename) and, since the version 1.0.6, a script is offered for Linux and MacOS to speed up the workflow.
To use the plugins, just copy the packages/folders in the audio plugins' location. If you are not familiar with plugins and/or the digital audio workstations, please read this documentation.
At last, Camomile-ELSE don't have documented how to create plugins with it. But this part of official Camomile documentation presents how to create new plugins with Camomile which will work with Camomile-ELSE with some little differences which are:
- You need to declare else path in your pd patch with:
[declare -path else]
- To guarantee else objects will be loaded correctly, you need to instantiate all else object like
[else_object_name]
avoiding use other manner like[else/else_object_name]
.
Download Camomile-ELSE and its dependencies using git:
git clone --recursive https://github.com/emviveros/Camomile-ELSE.git
Generate the libpd project using CMake and compile the libpd library and the plugins:
- Linux
cd Camomile-ELSE
cd Dependencies/LibPdBuild/LinuxMakefile && cmake .. -DCMAKE_BUILD_TYPE=Release && cd ../../..
make
Important: JUCE requires a set of pre-installed libraries: libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libfreetype6-dev alsa libasound2-dev. Before building Camomile you can run to install everything:
sudo apt-get -qq update
sudo apt-get install -y libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libfreetype6-dev alsa libasound2-dev
- Mac
cd Camomile-ELSE
cd Dependencies/LibPdBuild/MacOSX && cmake .. -GXcode && cd ../../..
xcodebuild -workspace Camomile.xcworkspace -scheme Camomile-libpd -configuration Release
- Windows
Important: libpd requires the static pthread library for windows with multithread static runtime library (MT).
cd Camomile-ELSE
mkdir Dependencies\LibPd\build && mkdir Dependencies\LibPd\build\msvc && cd Dependencies\LibPd\build\msvc
cmake -G "Visual Studio 14 2015 Win64" -DPD_MULTI=ON -DPD_UTILS=OFF -DMSVC_STATIC_RUNTIME=ON -DMSVC_PTHREAD_LIB="pthread.lib" ../..
msbuild libpd.sln /t:libpdstatic /nologo /verbosity:quiet /p:Configuration=Release /p:Platform=x64
cd ..\..\..
msbuild Instrument/Builds/VisualStudio2015/Camomile.sln /nologo /p:Configuration=Release /p:Platform=x64
msbuild Effect/Builds/VisualStudio2015/Camomile.sln /nologo /p:Configuration=Release /p:Platform=x64
msbuild LV2/Builds/VisualStudio2015/Camomile.sln /nologo /p:Configuration=Release /p:Platform=x64
For a step by step compilation process, see: https://github.com/emviveros/Camomile-ELSE/wiki/Compiling-Camomile-ELSE-in-Windows-10
- Pure Data by Miller Puckette and others
- by the Peter Brinkmann, Dan Wilcox and others
- Camomile by Pierre Guillot
- ELSE by Alexandre Torres Porres and others
- Juce by ROLI Ltd.
- MoodyCamel by Cameron Desrochers
- LV2 PlugIn Technology by Steve Harris, David Robillard and others
- VST PlugIn Technology by Steinberg Media Technologies
- Audio Unit PlugIn Technology by Apple
- Juce LV2 interface by Filipe Coelho
- Console icons by Gregor Cresnar
- CMake by Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf
- Images of the plugin's examples are copyrighted by their respective comics publishers. Dupuis for the Bulgroz and AlmondOrgan plugins and Casterman for the Castafiore plugin. For further information, read this issue.