LiveOSC2 + O-S-C

It would be possible to "merge" the calls from the remote script known as "LiveOSC2" with the interfaces developed in O-S-C? This could open up a range of possibilities for Ableton users in the community.

LiveOSC2 is detected correctly as Control Surface on Ableton 10. In the configuration file LO2OSC.py the default ports used are:

remotehost = '127.0.0.1', remoteport = 9000, localhost = '127.0.0.1', localport = 9001

I tried the same ports I use on the O-S-C server and it seemed logical that it didn't work. I'm not sure if the relationship of the doors prevents any chance of "merging".

Here the link with the calls of the first version (compatible until Ableton 9): LiveOSC/OSCAPI.txt at master · hanshuebner/LiveOSC · GitHub

Here the link with the latest version, compatible with Ableton 10 and with the addition of new calls: GitHub - gabrielebarbieri/LiveOSC2: New version of LiveOSC for Live 9

I don't use live nor liveosc so I can't test it, but

remoteport = 9000

means liveosc will send feedback to port 9000. O-S-C listens on port 8080 by default, change either of these to make them match.

remotehost = '127.0.0.1'

If the O-S-C server is not running on the same computer as liveosc, you'll need to adjust this. (localhost = '127.0.0.1' should not be modified however)

localport = 9001

means liveosc listens on port 9001 for commands defined in OSCAPI.txt. O-S-C widgets that must communicate with live osc will have to send to "127.0.0.1:9001" (either by setting their target property or with the server's "send" option).

Liveosc may be strict regarding the argument types (float vs int), in which case you'll need to explicitly configure widgets to send integers when needed (that's done by setting typeTags to i).

1 Like

It works! Some calls yes, others not ... I will perform more tests to find out why and return with the information :raised_hands:

Interesting to join O-S-C and LiveOSC2 as control surface in Ableton.

Example 1: Using a fader to control the master volume:
address: / live / master / volume
preArgs: 1
target: 127.0.0.1:9001

To obtain a lighting in / out effect when the fader is moved, just use a Led with the following properties:
address: / live / master / volume
preArgs: 0

Example 2: A button to play clip 1 of track 1 of Ableton:
address: / live / clip / play
preArgs: [0, 0]
target: 127.0.0.1:9001

Another stop button for the same clip:
address: / live / clip / stop
preArgs: [0, 0]
target: 127.0.0.1:9001

To obtain an effect, it lights up when the clip is played and goes out when the clip is stopped, just add a led with the following properties pointing to the action related to the track:
range: {"min": -2, "max": 0}
address: / live / track / state
preArgs: 0

Some other things I haven't been able to find out yet. In the LiveOsc.py file there are some "listeners". I am not very familiar, but, I believe if they are dynamic feedbacks, for example:

def meter_level_changestate (self, track):
if self.check_md (2):
lvl = float (track.output_meter_level)
self.oscEndpoint.send ('/ live / master / meterlevel', lvl)

AND

def meter_changestate (self, tid, track, lr, r = 0):
if r == 2:
if self.check_md (2):
if lr == 0:
self.oscEndpoint.send ('/ live / master / meter', (0, float (track.output_meter_left)))
else:
self.oscEndpoint.send ('/ live / master / meter', (1, float (track.output_meter_right)))

I tried different combinations using an input widget to check if the master volume values ​​followed the meter register using the property "value: OSC {/ track / meter}, but it didn't work.

hi, how did you managed to get liveosc2 working with ableton 11 ?

I'm still at Ableton 10. The last Ableton 11 release notes came with at least 3 pages with bug fixes. When there is a more stable version I will migrate

i get an port error everytime i try to open up liveosc, but I use a M4L device. what code do you use inside open stage control to update the fader value ?

To update encoders and faders, I use Clyphx Pro.

I used LiveOsc to perform only a few tests, according to that topic. It takes some knowledge in Python to move on (something I haven't had time to study yet)

did you manage to get this working for ableton 11?

I answered that question above (I don't think you saw it).

I have not yet upgraded to Ableton 11 because I have seen bug complaints and CPU overhead. I decided to wait a little longer until a really stable version came out. In the meantime, I am still extremely satisfied with 10.

If you are referring to LiveOsc for Ableton 11, you may need to convert the script to Pynthon 3. There are tools that can do this, but I haven't tested anything yet on this path.

If you are referring to Clyphx Pro, an alpha version (still in testing) is in progress for compatibility with Ableton 11.

These compatibility problems are happening because Ableton 9.7 and 10 run on Python 2.x ... whereas Ableton 11 runs on Python 3.

i did update live osc to python 3 but it gives a weird port error where i can't run the script bcs ableton says the port is already in use. but when i change the port in the LiveOSC script it just keeps changing the port in use in the Ableton error. Did you have a similar issue in the past with this ?

Using Ableton 10, following these guidelines, I was able to use LiveOsc without any problems.

So i did this and this does work with Ableton 10,
how did you get osc data back from 10? like selecting another track and let it update the value automaticly?

With Clyphx Pro.

[Beta] OSC Output from ClyphX Pro | nativeKONTROL Forum

Again this doesn't work with ableton 11 i don't want some custom remote script, those don't work with ableton 11

just a quick note - I have picked up open stage control for the first time few days ago with the intention of controlling ableton - I have started building up my interface and my conclusion after few days is that you can get most of the functionality by cobining several remote scripts.

I have started by using a template for LaunchControlXL I found here (using the LaunchcontrolXL remote script. Then I added LiveOSC2 remote script (after reading this thread) and ClyphX remote script - some of the commands on these 2 overlap but still I found that few things only work using one or the other.
In addition I use midikey2key and sendkey to triger ableton shortcuts and macros (for example to add specific VSTi plugin to a new midi track) and I also send CC data directly to ableton through a separate midi port.
All in all I have 8 virtual midi ports on LoopMidi (4 ins and 4 outs) and I think combining all this can get me at least 90% remote functionality