O filtro aceita até 16 valores na seguinte ordem,
colorchannelmixer=rr:rg:rb:ra:gr:gg:gb:ga:br:bg:bb:ba:ar:ag:ab:aa
Cada valor pode variar de 0.0
a 1.0
O que o filtro faz é aplicar quatro equações lineares.
Suponha que uma cor de pixel RGBA de entrada seja (192,64,128,200)
e a expressão seja
colorchannelmixer=.3:.4:.3:0:.1:.54:.3:0:1:.2:.5
Assim, o valor R de saída será .3x192 + .4x64 + .3x128 + 0x200 = 121.6 => 122
O valor G de saída será .1x192 + .54x64 + .3x128 + 0x200 = 92.16 => 92
O valor da saída B será 1x192 + .2x64 + .5x128 + 0x200 = 268.8 => 255
(como ba
não está definido, o valor padrão 0 é usado. Como o resultado estende o valor máximo, ele é recortado para o valor máximo de 255
)
O valor da saída A será 0x192 + 0x64 + 0x128 + 1x200 = 200 => 200
(desde que nenhum de ar:ag:ab:aa
esteja definido, o padrão de 0:0:0:1
é usado)