Page 1 of 1
More OSC Obsession - Send Command Line and OSC to 2 devices?
Posted: Sun Feb 08, 2015 3:52 pm
by nizer
I am loving OSC and LXConsole. I am building all kinds of Touch OSC apps to control and adjust lights, etc. I am echoing the command line in a field and sending OSC feedback to sliders on both my iPad and iPhone. Right now the last device to connect and join gets the info as expected but the previous device no longer can. Is there a way to have this info sent to both devices, so if I move a slider on the iPad it will move the corresponding slider on the iPhone and visa versa?
As always so love this software, it is the heart of my show.
Posted: Tue Feb 10, 2015 8:01 pm
by admin
The latest build of LXConsole has an second OSC output. This allows both an iPhone and iPad running TouchOSC to control LXConsole and have the fader on the phone move both the fader on LXConsole and on the iPad.
There are some things to consider to make this work. First, the OSC out connection using Bonjour may find either the iPhone or the iPad. So, the least frustrating way to connect to both is probably to manually enter the IP address:port for both, one in the main connection and one in the second aux connection.
Also, you need to check the disable loopback protection option. Otherwise, an incoming OSC message from the phone won't get sent to the iPad, etc. The reason for loopback protection is because it is possible for some applications where an incoming message might trigger an outgoing message, that might trigger another incoming message, triggering and outgoing message, and so on. This kind of feedback loop between devices is not possible with the loopback protection on. But, that protection also prevents an incoming message from the phone to cause an outgoing message to the iPad. I did not observe a loop when testing this with an iPhone and iPad both running TouchOSC. But, keep in mind this is a possibility when loopback protection is disabled. If the app becomes unresponsive, an OSC loop is a possible cause.
OSC routing
Posted: Tue Feb 17, 2015 1:04 pm
by nizer
I am having trouble figuring out what the OSC setups and preferences fields are all doing.
There are now 3 places where OSC OUT goes. 2 in the OSC OUT preferences and another area in SetUp that has unlimited places to add OSC out destinations.
Can explain what the difference is.
My routing is: TouchOSC app into LXConsole with messages forwarded to QLab via 127.0.0.1:53000 then the second field filled in to reach my iPhone 10.0.1.2:8000. I also have my iPad and iPhone listed in the SetUp area with both port and IP.
Seems to be working now, but initially it was wonky. Thanks for clarifying I just want to feel like I have a handle on it when all hell breaks loose.
On other odd thing with OSC now
Posted: Tue Feb 17, 2015 6:34 pm
by nizer
In the past when I moved a slider in Touch OSC it would change the numbers in the channel and move the slider in the channel Controls Window.
That no longer happens although it does record the changes once I record it.
Thoughts?
Posted: Tue Feb 17, 2015 10:20 pm
by admin
Addresses in the OSC Out tab of the preferences, the OSC Out connection and the aux out connection send messages depending on the types selected with option check boxes. The main OSC out connection is capable of discovering its target IP address and port using Bonjour. Or, alternatively you can specify an address of the form a.b.c.d:port. The auxiliary OSC output requires the latter to specify its target address and port. Depending on what you select, messages are sent to the targets of both addresses if they are defined and visible to LXConsole on the network.
For example, lets say that the OSC out has an address/port showing 192.168.1.101:3000. And, the aux output has an address/port set, 192.168.102:3000. And, the "Send Sub/Master/Manual changes" option is selected. Let's further say that the Mac has an IP address of 109.168.1.103 and is on the same network as two devices that have the above IP addresses and are both listening for OSC on port 3000. And LXConsole's OSC Out connection is enabled.
When you move the Live window's master fader, LXConsole will send an OSC message with the address string "/cmd.lxconsole/master@%p" and an argument representing the level of the master fader to both the other devices.
The OSC out connections defined in the setup window are used for cue actions that send OSC messages when a cue is triggered. These actions/messages are defined in the advanced tab of the main window's drawer. The outputs defined in the setup tab are not send any of the possible message options you can enable in the preferences. Only the main and aux outputs are sent those types of messages.
OSC messages sent by cue actions require you to specify a target IP/Port for each action. For example an OSC cue action might read "192.168.1.103:53000~/cue/1/start". When the cue containing this action is triggered, it will send /cue/1/start to the computer with the IP address 192.168.1.103 and that will be received by an application listening to port 53000.
You could have a bunch of OSC actions sprinkled throughout your cues. And, if the IP address of the target changes, you'd have to edit all of those actions. Except. You don't. Because you can define named targets in the setup window.
Continuing with the above example lets say instead of "192.168.1.103:53000~/cue/1/start" the OSC action reads "QLAB~/cue/1/start" In the setup window's OSC Out tab you define an output with the name "QLAB" and the appropriate IP/port for your destination computer. Now, when the destination computer's IP address or port changes, you can simply change it in the setup tab and all the cues with actions referencing "QLAB" will send their messages to the new target.
-----
You've asked another question that should be posted in a new topic. If you do this, when others are looking for the information captured here, they may not be able to find it or may not be able to follow the changes in topic. It makes things very muddled both when trying to reply and for someone else trying to read and find information. This reply only concerns the original topic.
Posted: Mon Aug 31, 2015 12:33 pm
by Pace514
HI !
Starting to learn the wonderful world of LXCONSOLE, QLAB, Touchosc...
It is a really really cool!!!
I have 2 questions:
1- I'm able to control a channel via touchosc using "/lxchannel/nn". But what would it be for a sub? Or the master? In fact, is there a list of commands?
2- is it possible to replicate the virtual keyboard of lxconsole using touchosc?
Sorry for my English...
Pace514 from Montréal
Posted: Mon Aug 31, 2015 1:09 pm
by admin
Good questions but they are really starting a new discussion.. Rather than tacking onto an existing topic, if you create a fresh one, it may be easier for others to find and follow.
Look at the help page for the setup window. In the OSC tab there is a lot of information about actions that can be triggered through OSC. For subs use "/cmd.lxconsole/SUB-nn". For the master use "/cmd.lxconsole/master@%p". (Don't include the quotes)
There is a remote for TouchOSC that you can get by using the menu command LXConsole->Install Extras->TouchOSC Remote File. (There's one for Lemur too)