I'm doing a very low resolution pixel mapping project with RGB fixtures.
The concept is similar to the Ambilight example. Extract colour information from a video feed and drive a set of RBG lamps, essentially amplifying the light that would be emitted by a television or monitor.
So far, everything looks really good on the grid monitor but we're not getting particularly good results from the lights. My question is whether there's a way to tweak the transfer function that converts HSI values to RGB. These are custom built fixtures and we're currently using the Generic RGB template.
Our fixture response is admittedly far from perfect. Full values of 100% on each channel do not produce anything close to pure white. There is a noticeable green deficiency, resulting in a strong magenta hue at full power. It is clear that we will need to reduce the Red and Blue gains somewhat to compensate. The dimmer curves are also quite non-linear, so we may need to adjust for that as well.
Dimmer attributes have a Max and Min value that can be assigned. If those parameters were available for RGB attributes, they could be used to scale back the stronger channels for a better colour balance at full-scale output. That still doesn't address the non-linearity of the dimmers, but it would get us closer.
One possible approach would be to convert HSI values from the media to RGB using formulas, use an additional grid as a lookup table to compensate the dimmer curves and then output corrected RGB values into a generic dimmer profile. That being said, I think it would make a lot more sense to include the compensating formulas within the fixture profile itself, if that's possible.
Is there any way to add some code to a fixture profile that would allow some scaling and/or a customized response curve? Is something like this already being done in the profiles for commercially available fixtures?