OSC changes/updates
Len Ovens <[email protected]> Thu, 14 Apr 2016 11:02:54 -0700 (PDT)
| Newsgroups | gmane.comp.audio.ardour.devel |
|---|---|
| Message-ID | <[email protected]> |
Just started working on some middleware for OSC control with Ardour. Here are some things I would like to work on in the Ardour code to make OSC use better. I would normally talk about this on IRC, but it is easier to put a clear idea of where I am going in this format. Feedback: sending /routes/list starts Ardour sending some feedback about each channel. There are: a) some things missing (such as pan or trim) b) some things that are not as useful as they could be - gain is abs only. Fader or dB would both be more useful. - SOLO is SIP only, Listen does not work. c) None of the master kinds of things get feedback turned on - master gain or mute - monitor anything - Transport controls - even though /routes/list returns PH position it is not monitored d) metering - I would suggest dB and positional metering (0-1 based on meter position in GUI) Banking: Feedback is already by server (the server that sent requests), Banking should therefore follow. Each server should have banksize and current_bank. Banksize = 0 means no banking for that server. So a controller would use banking by first sending a banksize command. Any bank type command should return an error if banksize = 0. On error, the controller should resend banksize if it wants banking. For a server receiving Banked info, all of the commands would be strip based instead of rid based. OSC code in Ardour would translate strip <=> rid for each transaction. I think this would be better than adding an /ardour/bank namespace. Effectively non-banked would be infinite bank size/bank 1. This is a far from full list of things that could help OSC. I am thinking that starting with the banking code would mean less work later on adding bank code to more functions (less work finding where it needs to be added). From what I can tell, most OSC controllers are tablet based with minimum internal smarts. Middleware could make up for that, but the person who downloads and uses a tablet app is likely to find that troublesome. So from their POV, Banking and positional control/feedback are probably most important. Comments? Maybe I am full of it :) -- Len Ovens www.ovenwerks.net