Thanks for the Midi info. I am looking to be able to set the RGB color of the laser based on midi values from 3 notes. I want to be able to route the color information from my lighting software and pass it into Liberation so the color profile for the lasers match the general lighting color. Is there any way to do this?
You can’t do RGB as Liberation’s colour space is built on HSB (or Hue, Saturation and Brightness). There are good reasons for this (which I won’t go into right now), but it will be possible to add RGB controls in future.
In the meantime, it is possible to control colour via MIDI with HSB values, it’s a bit fiddly though!
Create 3 separate effects, each with a single Colour Change node, and a Parameter oscillator.
The first effect’s Colour Change should be set to Fix Hue, the second effect FIx Saturation, the third Fix Brightness. The Parameter node should be connected to the relevant control for that effect.
This is what the effect to change the hue looks like.
Make sure that each effect’s MX group is set to 0 to make sure it’s not part of a mutually exclusive group (right click the effect button to see the settings)
Turn on all 3 effects, then you can adjust each value using its Parameter 1 setting, which is editable via MIDI (see the top message in this Topic)
Hopefully this helps, if you want to go down this route but have trouble, let me know and I’ll send you some files.
Additional : You may want to change the brightness adjustment from “fix brightness” to “multiply brightness” - that way any original flashing or fading in the clip will be retained.
Awesome thanks Seb I’ll have a play with this and report back. As a future feature enhancement for Liberation, global color controls that are Midi mappable would be a great feature, it’s something that I use in my LED control software and is quite useful for when you want to sync colour information across different software.
@Funktioncreep I am using SoundSwitch for my general lighting control. I have written a custom nodejs Artnet receiver for SoundSwitch to pass the DMX information to. I am using a DMX fixture that sends intensity, r, g, b across 4 channels. I am then taking those DMX values and dividing it by two to convert it to the midi range (0-127), then emitting it to a virtual Midi interface I have setup (could also be the IAC bus).
Then my intention is to map those values in Liberation.
As Seb says it doesn’t support RGB yet, so I will need to transform the RGB to HSB, I’m sure I can find a library to do this.
I’ll report back how I get on, and if it’s something that seems like others might be interested I can look into sharing the code. Should be simple enough to make it easily configurable for DMX → Liberation midi.
(This system was designed as a way to record and playback shows so I’m kind of amazed that we’ve managed to hack our way around to a solution to your requirement! But I’m sorry that you’ve found a limitation. It was designed this way to avoid a feedback loop while recording)
Now I know that some of you are interested in this I’ll think about better ways for integration in the future, but honestly I think I need to focus on some of the core Liberation functions first (like timeline and MIDI controller customisation).
Also, I noticed that the effects don’t have an enable/disable midi control message, only level and parameter. I don’t seem to be able to switch them on/off via midi, only change the level and parameter values. Wondering if that is possible.
Just to update this, in the latest builds you can both send AND receive MIDI at the same time. But use with caution as you can cause a MIDI feedback loop if you’re not careful!
We’re really excited to use color control via a 3rd party app in Liberation. As a result, I’m working to get Chataigne to make the translation between OSC and Midi so we can change colors programmatically.
Here are our Chataigne Module Router settings:
As you can see, we have actual values, we’re getting from OSC (which change dynamically whenever we change colors in the 3rd party app) and mapping into channel 15:1-3. (What do we do with the level, if anything?) I think we’re doing all the right things in Chataigne, but if anyone else has used this program and has a working module router, please share a screencap of what you did..
We’re still not able to make the colors change.. Any ideas what we need to be doing to get remote colors working? (Learning Chataigne to get this far has been fun!)
When I change colors in the control app, I can see the values in the above columns change, indicating that the OSC portion of this is working, but I never see the values in the Colour Change dialog box move any.
This is leading me to think I’m getting valid data from Chataigne into Liberation, at least from the device perspective. Not sure what else to check.
You mentioned “Make sure the effect MX (mutually exclusive) group is 0 so that it doesn’t affect any other effects.” How do I go about doing this? The GUI shows the clip is in none of the GRP1-5 groups, is that it?
That sounds super frustrating, I’m sorry you’re having trouble! I think best thing would be to send me your project file and I’ll see if I can get it working this end.
@EricWatkins FWIW I have DMX > RGB > HSV > Liberation working great using chataigne.
I’m not using module routing, instead I am using a state & filter as I need to convert RGB to HSV within Chataigne first (I wrote a script to do this), and then outputting over IAC midi bus on mac.
I’m also working on a custom Liberation module for Chataigne that makes selecting effects & clips easy and plan to add all the other supported midi commands so Liberation can easily be supported via Chataigne.
I use snoize: MIDI Monitor to view the raw midi values to ensure they’re correct, and have them mapped to 3 separate effects so I can enable disable HSV selectively. So I can confirm this works.