I had the same request multiple times on the support so I wanted to share my answer. The problem is how would we control a RGBW or RGBAmber led strip, since in our video world we're working with RGB. If MadMapper plays a movie, it gets RGB values, when using a syphon input or materials (GLSL shaders) we get RGB values. How then would we control a RGBW led strip ? MadMapper offers multiple solutions to this problem.
By default MadMapper support RGBW pixels. This thread is for people who want to have a custom control on what values MadMapper sends to the 4 pixel channels (or for RGBAmber). It is for advanced users that already have experience with LED control.
If using the RGBW pixel type of MadMapper, we'll send on the 4 channels: channel 0=red component value, channel 1=green component value, channel 2=blue component value, channel 3=min(red,green,blue)
To have control what's sent on each channels, read this:
The most flexible solution is to control RGB with a video stream and W with another one (not using GLSL expressions). You can map the media on two fixtures, patched on the same DMX address (ie ArtNet universe 0 channel 1) with different fixture definitions: one fixture definition will control the RGB, the other will control the warm white channel.
For doing that, you create two fixture definitions of the same size, ie 171x1 pixels for a 171x1 RGBW strip. The first fixture definition will have pixel type of 4 channels - R, G, B, unused - and the other pixel type of 4 channels - unused, unused, unused, L (a fixture won't erase the value stored in the channel for "unused" channels), so each fixture patched on the same start address will feed part of the channels (RGB & W).
Then you can use two different movies, one for RGB, the other for W (you can then use color filters in Final Cut, Premiere or other app and do two exports).
That's an option if your setup is just to playback a movie. If you setup is more interactive or using a live video input from Syphon for instance, you might use GLSL expressions. In this case you would do something with 4 expressions. If you compute Warm White value with W = min(red*F1,min(green*F2,blue*F3)). You have to find the correct F1,F2,F3 - each between 0.0 and 1.0 - depending on white pixel color temperature. For cold white: 0.299, 0.587, 0.114. For warm white... googling fastly I found http://www.tannerhelland.com/4435/conve ... ithm-code/
Then the 4 expressions would be
channel 1: R - min(R*F1,min(G*F2,B*F3))/F1
channel 2: G - min(R*F1,min(G*F2,B*F3))/F2
channel 3: B - min(R*F1,min(G*F2,B*F3))/F3
channel 4: min(R*F1,min(G*F2,B*F3))
Any comments or suggestions welcome !
Matthieu - MM team