ComposeSiren is a suite of audio and MIDI plugins that synthesize sounds of sirens made by Mécanique Vivante. They also provide automatable parameters from DAW hosts synchronized to MIDI input and output. Theys allow to compose pieces for Mécanique Vivante's siren orchestra in studio by simulating them in real-time. The DAW projects can ultimately be reused to play the pieces on the orchestra during live performances by controlling the sirens from the DAW's MIDI output.
The orchestra is composed of seven MIDI siren instruments :
- two altos (called S1 and S2),
- a bass (called S3),
- a tenor (called S4),
- two sopranos (called S5 and S6),
- a piccolo (called S7).
There are actually two plugins:
- OneSiren, a simple plugin with flexible MIDI routing parameters that can simulate any siren from the orchestra.
- SirenOrchestra, a plugin that simulates the whole orchestra with its original fixed MIDI routing, and provides additional controls such as panning and volume adjustment for each simulated siren, as well as an embedded reverberation module and a master volume control.
Both are currently available in two formats: VST3 and Audio Unit, and also exist as standalone applications.
The ComposeSiren suite is developed on top of the JUCE frameworks. You can find more infos about it there: http://www.juce.com.
The plugins are built on macOS as 64-bit VST3 and Audio Unit formats, and currently tested on [Reaper][6] and Ableton Live. Upcoming windows versions are currently in the development pipeline.
Download the latest installer for your OS from the [releases page][link] and run it. This will install the VST3 versions of both plugins (as well as their Audio Unit versions on MacOS), and the corresponding standalone applications.
sudo apt-get install libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libfreetype-dev
sudo apt install cmake libxrandr-dev libxinerama-dev libxcursor-dev libfreetype6-dev libasound2-devResource path is hardcoded to point to /home/sirenateur/Documents/src/mecaviv/ComposeSiren/Resources/, so please checkout the repository in /home/sirenateur/Documents/src/mecaviv/:
cd ~/Documents
mkdir src
cd src
mkdir mecaviv
cd mecaviv
git clone https://github.com/mecaviv/ComposeSiren.git- first clone the repository with the
--recursiveoption to fetch JUCE submodule, or rungit submodule update --initafter cloning. - if at some point the
Dependencies/JUCEsubmodule is altered by some IDE, you can reset it usinggit submodule deinit -f .thengit submodule update --init
At the moment the plugin is built :
- on Mac OS 11.6.4 using Ninja (Xcode works too)
cmake -B build -G Ninja -C Config.cmake -DCMAKE_BUILD_TYPE=Releaseto setup the build systemcmake --build build --config Releaseto build the plugins and generate the installer
- on Windows 10 using Visual Studio (couldn't get Ninja to work on windows yet)
cmake -B build -G "Visual Studio 17 2022" -C Config.cmakecmake --build build --config Releasecpack --config build/CPackConfig.cmake
- on Linux or Raspberry
cmake -B builds/linux -G "Unix Makefiles"cmake --build builds/linux --config Release- no instruction for installer for now
The resulting installer (built with productbuild on mac and NSIS on windows)
is created in build/Packaging/ComposeSiren_Installer_artefacts
NB :