Wednesday, August 1, 2018

Controlling Ardour with OSC and Android

Now that I have a stable RPi3 running alpine linux 4.14.52-0-rpi2, jackd2 1.9.10, and ardour 5.12.0, and have the recording and playback operational; it is time to work on the remote control.  The use case I am working on is to have the RPi3 with a battery and a stereo mic in a small bag that can be placed unobtrusively in the center of a jam circle and record the session.  I want to have a small android tablet controlling the mix and transport in hand.  That will operate ardour using the OSC protocol.  

It is easy to enable OSC in Ardour, see the Ardour Manual section here. 
The more complicated part is to acquire a suitable Android app that can deal with Ardour.
Candidates include TouchOSC for Android and iPad, which looks full featured and not very expensive, and a number of other apps in various states of development or abandonment. 

As I prefer free and open source software,  I settled on ardmix, by Detlef Urban, which is a working Android app.  The app has to be built from source so my Android Studio adventure begins.

I installed and built oscchief, a very useful command line osc tool from Sebastian Ruml.  This allows me to emulate both sides of the full system, either ardour or the ardmix app.  I can see the OSC messages being sent, and send appropriate canned messages for testing and debugging.

Android development is a complex and dynamic effort.  I feel like Alice in Wonderland, 
"Now, here, you see, it takes all the running you can do to keep in the same place. If you want to get somewhere else, you must run at least twice as fast as that!"

So my implicit task list has just enlarged while I refresh my Android development skill.
I also want to add the led blinking lights to my list, as the RPi3 has a red and a green LED and I think they should indicate running (green) and recording (red).  That looks like a fun diversion when the android complexities get overwhelming.

No comments:

Post a Comment