[Ardour-Dev] OSC Anyone want to test?
len at ovenwerks.net
Tue May 31 19:18:27 PDT 2016
New OSC has moved to Master in git. This is OSC for Ardour 5 and beyond.
For legacy OSC programs... remove any /ardour and replace any /routes or
/route with /strip
Almost all old commands are there in this form.
Lots of new feedback aimed at simple OSC surfaces (tablet based). The
feedback matches the command. For example /master/mute "f" 1 will turn on
master's mute and Ardour will send /master/mute "f" 1 to the surface if
the mute is turned on by the GUI, midi or another OSC surface.
Ardour will accept both /path and /path f where f is 1 for press and 0 for
release (0 is ignored). (thanks to TouchOSC)
Feedback is turned on with /set_surface iiii where the third i is the
feedback setting or /set_surface/feedback i where i is a bitset that
determines what parts of feedback are sent to the surface. If your surface
only sends floats that is ok, Ardour will read them as an Int.
One of the bits will tell Ardour to send strip info in the
/strip/command/id f manner for surfaces that don't understand anything
else. (Ardour will also take commands input the same way) The old method
of /strip/command id value will of course still work. (for
builders/programmers of surfaces, the old way is also much easier to deal
with at the receiving end)
Changes: faders have only two types of math (right now), /strip/gain is in
dB and /strip/fader is in position where 1023 is 100% (+6 dB), 800 is 78%
(0dB) and 0 is -inf (AKA -193). So if you are using gainabs you will want
to change it to one of those two. gain allows exact settings (to the
limits of 32bit floats) and fader gives a position that matches the fader
position in the GUI.
Positional gain: I am thinking of making it either 2 - 1025 or 0-1 float.
If the incoming value is less than 2 it will be treated as 0.0 - 1.0 fader
position and 2 and up will be -2/1023 to get the same number. My personal
preference would be to just do 0.0 to 1.0 for all position numbers.
dealing with the master and monitor strip has changed. They are no longer
318/319 but can be accessed directly as /master/command and
Some feedback with no commands are new. /timecode, /bar_beat, /heartbeat,
/strip/name, /session_name, /strip/meter (3 maths), /strip/signal (active
if the signal is at least -40dB), /record_tally (to power one of those
lighted "do not enter" signs)
The five main transport commands (rew,ffwd, stop, play, and record) have
feedback... more to come.
Banking is new. The code is set up so that everything is banked even if
banking is not set up (in which case the bank size is infinite).
/set_surface (or /set_surface/bank_size) will allow the surface to tell
Ardour how many strips in a bank. So there are of course /bank_up and
/bank_down commands. I still have some work to do on this, the right end
of the surface is "odd" and bank_up past the end fills all strips.
All feedback/banking/settings is on a per surface basis. Two devices with
different bank sizes ,fader maths and path styles have been in use here
for my testing. They do not have to be in sync. One can control strips
10-16 while the other is working on strips 24-48. When I get strip types
working one could be looking at busses and VCAs only and the other input
I have tried to update the manual pages for OSC, but there is a lot left
/strip/select and /selected/command parameter
This is still at the thinking stage. I am not sure how I
will set this. GUI selection becomes a pain when using
groups (select one in a group and all are... which one
did I select?)
Mute, Dim, mono, All solos off, whatever else I can.
in the case that there is no monitor there will be
no control/feedback :)
The settings are there, but not used yet.
more manual updates
it would be nice to have commands that have been in the
code since Ardour 3 actually documented... speaking of
Ardour 3, the listed menu actions are that far out of date
Possible GUI settings
Don't hold your breath ;) This would include saving
Any testing would help. Some bugs I might know of, but most will be new to
More information about the Ardour-Dev