On Sat, 28 Feb 2015, Jesse Cobra wrote:

Late to this discussion but why not a combination go zeroconf and osc for all
this discovery and control?
I have always been surprised someone has not already written an OSC to alsa 
mixer
controller...

OSC is good because it is wide open... and bad because it is wide open. No two applications seem to use OSC commands that are the same as another. OSA starts with a framework that is the same from one device/application to the next. OSC is not dead, but it is not able to do auto setup. Having used zeroconf to find an OSC server, there is no way to discover what is there to control. The user has to know that already and prepare the controller to talk to the device/application. OSC does have a query setup in development, but it has been that way for a number of years now. It seems funding for the main contributions has gone away. (this is as far as I can see http://opensoundcontrol.org/spec-1_1 ).

in OCA:
zeroconf is used to find the device, the controller/application connects, it gets a list of objects, what is controlable and the signal path through those objects. It is now possible for SW to create a GUI with controls that make sense and have labels on them. The controller can find out the value of any control's parameter that it can control. (provided the writer of the OCA server does their job) Take a look at OSC for Ardour, it is quite good, but a controller does not know how many routes there are unless the user tells the controller. Sending fader changes to route 32 out of 24 does not crash Ardour, but it gives no feedback either. This is not Ardour's fault so much as a hole in OSC. (or maybe an elevated expectation of OSC :)

So think about the OSC to ALSA mixer server and client. The server can use the standard ALSA tools to find out what all the controls are and create OSC paths for them. Cool. The client connects... it has to have a template for all the same cards alsa knows about and the client user has to tell the client which one to use. In other words the client/controller is a deddicated unit just for alsa mixing, it can do nothing else or at least needs a prewritten profile for anything it does.


--
Len Ovens
www.ovenwerks.net

_______________________________________________
Linux-audio-dev mailing list
[email protected]
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Reply via email to