(solved) Control another application with QLC + through OSC

Ask a generic question about the usage of QLC+, not related to a particular operating system
Post Reply
User avatar
andres robles
Posts: 187
Joined: Tue May 17, 2016 7:41 am
Location: Spain
Real Name: Andres Robles

Hi all
I have some doubts with the OSC add-on:

Case of use:
The idea is the following:
We want to do simple videomapping in some small concerts (Projecting fire in the drum of the battery, in the saucers ..ect)

For this we use Qlc + for the control of luminaires and MapMap to create the masks with their videos ...

MapMap accepts OSC commands, only configure listening port and ip address.
Qlc + is able to receive orders and send OSC orders

The problem is that the OSC commands that MapMap accepts are somewhat complex,
with qlc we can receive OSC commands and send a feedback with value 0-255

In our case we have an akai apcmini to control qlc and we would like that from CV we can control MapMap

We made an OSC profile with the mapmap parameters, but I understand that this only serves to identify and give a human readable name to the commands of an OSC controller, we do not find the way for a CV button to send an OSC comment to MapMap an example of comments would be the following:


Examples
Change opacity of paint named "movie.mov" to 0.1 (10%):
/ mapmap / paint / opacity, sf movie.mov 0.1
Change opacity of all paints whose name begins by "movie-" to 0.5 (50%):
/ mapmap / paint / opacity, sf "movie- *" 0.5
Rewind all .mov paints:
/ mapmap / paint / rewind, s "* .mov"
Set all mappings that begin with "mesh-" followed by a single digit to single mode:
/ mapmap / mapping / alone, s "mesh- [0-9]" 1
Playback
Pause: / mapmap / pause
Play: / mapmap / play
Rewind / reset: / mapmap / rewind
Quit: / mapmap / quit

Does anyone know how to do this?

The solution we found was to use system script to start MapMap with x project, so that Qlc can open MapMap with a specific project at any time, this is not ideal, if the project is large it can take too long to start, and each Once you call MapMap with a script, a new instance starts, we still have to figure out how to close it from a script ... even so, it's not the best solution.

Then the question would be, can complex comments be sent from Qlc ​​+ to another application to be controlled?

If yes, how?

As S.O we use gnu / linux (ubuntustudio, debian ...) although I guess it will be the same in all S.O.

Regards and thank you very much in advance.
Last edited by andres robles on Mon Nov 26, 2018 10:22 pm, edited 1 time in total.
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

I think you can.

1) create a custom input profile. Manually enter the OSC paths that MapMap accepts and use the embedded converter (configuration dialog of the OSC plugin) to get channel numbers from OSC paths. Example: /mapmap/paint/opacity --> 33198
2) assign the profile to universe and set OSC as feedback
3) create some dimmers, one for each OSC feature that you need to control
4) create a Scene for each dimmer channel
5) in your VC create some buttons, enable a specific startup intensity and assign the created Scenes
6) manually assign the various OSC channels to each button

In theory, whenever you press a button, a OSC message with the path you need should be sent to MapMap
User avatar
andres robles
Posts: 187
Joined: Tue May 17, 2016 7:41 am
Location: Spain
Real Name: Andres Robles

Thanks Massimo for the quick response.
I will try to try that method and if it works I will comment it in case someone serves it.
thank you!!
User avatar
andres robles
Posts: 187
Joined: Tue May 17, 2016 7:41 am
Location: Spain
Real Name: Andres Robles

Well it seems that does not work, or I can not do well, I think the problem is that qlc only sends feedback with values ​​0-255, with the profile only I get qlc understand that means an entry osc ..., I can not send the value 33198 as feedback ...
Normally (I think I understand) in the options menu of a button / slider in the external control assignment, or automatically detect or choose entry, if you choose and have a profile that indicates the map of the peripheral, QLC ends waiting for an order from that controller external, and can send values ​​0-255 to that controller, but not send a calculated by the tool "osc calculator" ....

I can think of several "possible and crazy options possibly impossible"
The foundation of all lighting applications is to send DMX
Which create DMX universes, it would be interesting to be able to create universes destined to control other applications through OSC protocols, system script,
In the end have control of other common applications in concerts (players, ect)

It also occurred to me that it would be great to have a tool similar to the fixture editor that would allow creating "fixtures" to control programs (resolume, MapMap ... Audacious ....) and assign them to the universe of "control" ....


Maybe with the current options it is possible and I still can not understand how to do it, soon I will share the profile that I am creating with the calculations of the commands to try to control mapmap through OSC
User avatar
andres robles
Posts: 187
Joined: Tue May 17, 2016 7:41 am
Location: Spain
Real Name: Andres Robles

Hello again, in the end I got it, MapMap receives orders from QLC + through OSC,
Attached photo with configuration in inputs / outputs, I just have to finish the profile properly and I think it will work. Thank you very much for the help and the clarifications, if I can create a profile that works correctly I will share it in case it can be useful.
Thank you so much for everything.
Attachments
ejemplo MapMap.png
conf qlc osc.png
User avatar
andres robles
Posts: 187
Joined: Tue May 17, 2016 7:41 am
Location: Spain
Real Name: Andres Robles

Hi all!! And finally I got it !! this is wonderful.... :D
After hundreds of configurations and modifications in the OSC profile, I only managed to execute 4 basic commands and they worked ... (play, pause, rewind ..)

Which discouraged me a lot ... seemed that mapmap did not understand the orders ...
I tried to contact the mapmap developers to try to find a solution, and they kindly offered to help me and give me the information I needed ... special thanks to Alexandre Quessy

In the end I discovered a method to send OSC commands by script, I only needed some extra libraries:
The txosc library for python. It contains osc-send
* The oscsend utility
* The liblo C library
In this way I can fully control the video projection or videomapping with QLC +.

I share the profile for mapmap and the project that I'm creating for a music group with which I'm a sound technician and sometimes I take
some lights and a projector .....

The profile at the end is not necessary, although it would be another functional solution, but only a few commands work ... I share it in case someone needs it, and the project I share it in case someone wants to see the structure of the OSC messages using a script system, in this way you can control any application that receives OSC commands .....
a greeting
Attachments
mapmap-v0.5.qxi
Perfil for MapMap
(907 Bytes) Downloaded 135 times
Blueband.qxw
project with script
(135.04 KiB) Downloaded 164 times
SPS
Posts: 63
Joined: Fri Apr 05, 2019 9:51 am
Real Name: Paul Misset

great learning experience!

Thank you
Post Reply