Related article : Jacquot, M. "Gestion des flux de messages entre applications grâce à un plugin de serveur OSC dans le processus compositionnel électroacoustique et mixte", in Proceedings of Journées d'Informatique Musicale (JIM 2013), Saint-Denis, 2013, pp. 39-44.Vst to OSC (& the coming soon RTAS to OSC) is a small plugin written using Julian Storer's C++ framework Juce and Ross Bencina's OSC lib : OSCpack.
Its purpose is to enable OSC communication between apps and more specifically to be able to use OSC automation from your DAW. For example, you can control a Max or Processing patch directly from the plugin host, which can be very handy to synchronize sound and images or to integrate a Max patch in your workflow as if you were (still) able to export your Max patch to VST.
In my opinion, there are numerous reasons to prefer OSC rather than MIDI : the most important one for me is that instead of using cryptic CC numbers and try to remember what they are supposed to control, you can use a beautifully url formatted message ex : to control the Volume and FxMorph sliders of the 4th distortion module (called "Dist-2-2") of my NoiseMaker Max patch, the MIDI version would be :
- CC 45 value ←nonsense
- CC 79 value ←nonsense
while the OSC version would be :
- /NoiseMaker/Dist2-2/Vol value ←cristal clear
- /NoiseMaker/Dist2-2/FxMorph value ←cristal clear
The other utility is that the values range with MIDI is integer between 0 & 127, with OSC you can have floating point values in any range you want...
When you load the plugin in your host, it will be already setup like this :
- Destination IP : 127.0.0.1
- Port : 7000
- Main Pattern : empty
and every controller is setup like this
- End Patern : empty
- Min : 0
- Max : 127
- Steps : 1
You may encounter difficulties to enter text in the fields, the reason is every DAW handles keystrokes differently, and a lot simply intercept them :
In Cockos REAPER : it should work out of the box, the single problem may be conflicts with the DAW hotkeys eg : entering a space triggers the playing of your project. To circumvent this, simply check in your FX window : FX > "Send all keyboard input to plug-in".
In Ableton LIVE : The keystrokes are intercepted by default, you have to create a file called Options.txt containing the line "_EnsureKeyMessagesForPlugins". More details here.
Download the VST
Download the Source Code
/* * Copyright (C) 2013 Matthieu Jacquot * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU Library General Public License as published * by the Free Software Foundation; either version 2 of the License. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public * License for more details. * * You should have received a copy of the GNU Library General Public License * along with this library; if not, write to the Free Software Foundation, * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * */
I'll update every source code file when i have time :)
DO YOU HAVE A QUESTION OR REMARK?
Let's discuss this on twitter : @Err0r_500