API for control surfaces?

10 replies [Last post]
person
User offline. Last seen 5 years 4 weeks ago. Offline
Joined: 2007-09-23
Posts:

Does anyone know whether there an easy way to interface with a control surface independently (ie. writing scripts/python to set/get parameters), or if documentation exists anywhere? Or whom should I be asking? The only place I've seen control surfaces on Linux mentioned is in connection to Ardour, so I thought the people here would know best.

Thanks heaps

person
User offline. Last seen 5 years 4 weeks ago. Offline
Joined: 2007-09-23
Posts:

Hmm... I wonder if the easiest way would be to write something that receives/posts MIDI events with the controller. Then you'd just need to know what messages the thing uses...

paul
paul's picture
User offline. Last seen 18 hours 42 min ago. Offline
Joined: 2006-03-16
Posts:

Your question is remarkably unclear - I can't tell if you are asking about how to create a control surface, or how to make Ardour respond to a control surface.

Assuming the latter, you can control most of Ardour using OSC. There is no documentation on this, you have to read the source code (libs/surfaces/osc).

Assuming the former, there's now way to really answer this without knowing a lot more about the goals you have for the control surface.

duffrecords
duffrecords's picture
User offline. Last seen 37 weeks 3 days ago. Offline
Joined: 2008-05-20
Posts:

person, if you want to see what MIDI messages your controller sends, see my response to this thread. There is a feature in Ardour which lets you trace Ardour's MIDI input/output in a terminal.

If you decide to investigate OSC and create a more advanced interface to map a control surface to Ardour, let us know; I could certainly use something like that.

person
User offline. Last seen 5 years 4 weeks ago. Offline
Joined: 2007-09-23
Posts:

I was under the impression that "control surface" was an unambiguous term, but I am guessing this is not the case nowadays from paul's response. I was referring to things like the BCF2000 (http://en.wikipedia.org/wiki/Audio_Control_Surface) but paul mentioning "creating a control surface" makes it sound like there are software components also sharing the name. Sorry for my ignorance about this.

duffrecords: Thanks! I'm still not sure if I want to shell out for the hardware just to experiment with this idea I've had (I'd like to control things other than MIDI devices with hardware faders and knobs), but I'm just scoping out how realistic it is at the moment.

paul
paul's picture
User offline. Last seen 18 hours 42 min ago. Offline
Joined: 2006-03-16
Posts:

People do build their own control surfaces (google for MIDI box). I was not clear (and I'm still not really clear) on whether you are thinking about taking an existing control surface and using the messages it sends to do something, or whether you want to build a control surface from scratch.

maxbreakwell
User offline. Last seen 3 weeks 3 days ago. Offline
Joined: 2009-07-18
Posts:

Hello Paul,

Where can I find that source code (libs/surfaces/osc) on a mac?

Thanks

seablade
User offline. Last seen 2 hours 11 min ago. Offline
Joined: 2007-01-22
Posts:

The same place you would find the source code on any system, you would check it out from Ardour's SVN.

Seablade

maxbreakwell
User offline. Last seen 3 weeks 3 days ago. Offline
Joined: 2009-07-18
Posts:

Thanks for the advice seablade however I'm still not sure what you mean by that. So far, what I've done was to right click on Ardour.app and select "show package contents", then go through everything I could find there looking for any code related to OSC commands, but I haven't had any luck yet.

paul
paul's picture
User offline. Last seen 18 hours 42 min ago. Offline
Joined: 2006-03-16
Posts:
@maxbreakwell: i'm confused. you seem to know what source code is. Ardour.app is an application bundle: compiled, ready to run. There is no source code in Ardour.app. You either need the source tar ball from http://ardour.org/download or to use subversion as described at http://ardour.org/download_full
maxbreakwell
User offline. Last seen 3 weeks 3 days ago. Offline
Joined: 2009-07-18
Posts:

OK Cool!

I did need to download the tarball version. Thanks for the help!

--Max