OSC Anyone want to test?
Len Ovens <[email protected]> Tue, 31 May 2016 19:18:27 -0700 (PDT)
| Newsgroups | gmane.comp.audio.ardour.devel |
|---|---|
| Message-ID | <[email protected]> |
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 /monitor/command. 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 strips. I have tried to update the manual pages for OSC, but there is a lot left to do. Still coming: /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?) /monitor/stuff Mute, Dim, mono, All solos off, whatever else I can. in the case that there is no monitor there will be no control/feedback :) Strip types 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 as well. Possible GUI settings Don't hold your breath ;) This would include saving device settings. Any testing would help. Some bugs I might know of, but most will be new to me. -- Len Ovens www.ovenwerks.net