OSC ... how to implement a simple solution?
Posted: Mon Jun 08, 2015 5:24 pm
Hi guys. I'm trying to create an OSC solution here and keep running down corridors and then slamming into walls.
What I want to do
I want to control Reaktor with TouchOSC, and also see one or two informative strings about Ableton Live's status.
So I want to connect to Live, and to Reaktor with OSC.
What works
Reaktor works fine. I have a performance patch in Reaktor successfully connected to TouchOSC which works great and Reaktor is very easy to set up with OSC / TouchOSC. I also have the old version of LiveControl (the TouchOsc one) which is a little sluggish but for my purposes it also works great to grab LiveAPI bits and pieces.
What I intended to do was improve my own Reaktor TouchOSC interface with a few pieces out of the old LiveControl implementation and combine the two. So I'd have my Reaktor sequencer tab, and spice it up with one or two names, strings and parameters from LiveAPI.
Both of these work well in isolation. But combining them is a giant PITA
What doesn't work
Ableton Live obviously doesn't implement OSC natively and so it relies on a few bridging components to implement OSC. In the case of LiveControl(v1) that means a standalone executable which acts as an OSC bridge connected to a Live (python) remotescript. That's fine.
The problem is that TouchOsc can only send out on one port (eg "5000"), not a range ("5000-6000"). And the Livecontrol executable monopolises this through the Bonjour service. Meaning that now Reaktor is locked out. It's either LiveControl OR Reaktor.
What I tried
I decided to try some other Ableton OSC solutions, there's one called LiveGrabber, which is a bit more granular. But for some reason it cannot detect Java on my system and so its Bonjour fails to start. It cant connect to OSC.
I then tried to open up the Max editor and spent a little time looking at the internals, and wondering where the core-level OSC components are for Max. (perhaps I could build a simple socket?) As far as I can tell from internet information there is not a core OSC implementation, it requires an "external" or perhaps two. It certainly requires Max to be able to find my Java.
My assumptions:
It may be that my recent update of Java actually uninstalled the JRE in MAx as detected as unsecure.
Or, It may be that Max and OSC is really a no-go area in Live, or some other thing.
I hope for an elegant solution which doesn't involve words like "recompile the kernel" (Linux based joke)
so...
does anyone have any actual experience of implementing a nice simple OSC solution?
What I'd like is something a simple as the one in Reaktor, which is as simple as "activate OSC, the press OSC learn, DONE!"
So, like the Left, not the right!

but so far I have spent three days trying various M4L abandonware which doesn't work. So I'm a bit stumped.
I'm not exactly enticed into purchasing more flakyware from 3rdparty M4L suppliers due to the poor implementation which seems to exist.
What I want to do
I want to control Reaktor with TouchOSC, and also see one or two informative strings about Ableton Live's status.
So I want to connect to Live, and to Reaktor with OSC.
What works
Reaktor works fine. I have a performance patch in Reaktor successfully connected to TouchOSC which works great and Reaktor is very easy to set up with OSC / TouchOSC. I also have the old version of LiveControl (the TouchOsc one) which is a little sluggish but for my purposes it also works great to grab LiveAPI bits and pieces.
What I intended to do was improve my own Reaktor TouchOSC interface with a few pieces out of the old LiveControl implementation and combine the two. So I'd have my Reaktor sequencer tab, and spice it up with one or two names, strings and parameters from LiveAPI.
Both of these work well in isolation. But combining them is a giant PITA
What doesn't work
Ableton Live obviously doesn't implement OSC natively and so it relies on a few bridging components to implement OSC. In the case of LiveControl(v1) that means a standalone executable which acts as an OSC bridge connected to a Live (python) remotescript. That's fine.
The problem is that TouchOsc can only send out on one port (eg "5000"), not a range ("5000-6000"). And the Livecontrol executable monopolises this through the Bonjour service. Meaning that now Reaktor is locked out. It's either LiveControl OR Reaktor.
What I tried
I decided to try some other Ableton OSC solutions, there's one called LiveGrabber, which is a bit more granular. But for some reason it cannot detect Java on my system and so its Bonjour fails to start. It cant connect to OSC.
I then tried to open up the Max editor and spent a little time looking at the internals, and wondering where the core-level OSC components are for Max. (perhaps I could build a simple socket?) As far as I can tell from internet information there is not a core OSC implementation, it requires an "external" or perhaps two. It certainly requires Max to be able to find my Java.
My assumptions:
It may be that my recent update of Java actually uninstalled the JRE in MAx as detected as unsecure.
Or, It may be that Max and OSC is really a no-go area in Live, or some other thing.
I hope for an elegant solution which doesn't involve words like "recompile the kernel" (Linux based joke)
so...
does anyone have any actual experience of implementing a nice simple OSC solution?
What I'd like is something a simple as the one in Reaktor, which is as simple as "activate OSC, the press OSC learn, DONE!"
So, like the Left, not the right!

but so far I have spent three days trying various M4L abandonware which doesn't work. So I'm a bit stumped.
I'm not exactly enticed into purchasing more flakyware from 3rdparty M4L suppliers due to the poor implementation which seems to exist.
