Altera_Forum
Honored Contributor
15 years agoCSC Settings - 24bit RGB - 16-bit RGB
Hi,
I am trying to use the CSC in VIP to convert a video data stream from 24-bit RGB (8-bits per color) to 16-bit RGB (565/RGB) for use with a custom display peripheral. I have set the CSC for runtime control so that I can manipulate the parameters to adjust the amount of red/green/blue so that I can finetune the output display. My problem is that I cannot understand from the docs how to configure the coefficients and summands! Each setting uses a 32-bit register but I fail to understand how the fraction setting works! Basically I want to reduce red and blue to 0.125 x color and green to 0.25 x color. I planned to then adjust the summand for each to increase/decrease the amount of each color in the output picture. This does not work the way I expected in that the output changes for blue and red but not for green and then sometimes it doesn't change for any color channel. I have also noted that the CSC does not stop when I use Stop(1) before trying to edit the registers. Is there something I need to do before issuing a stop() command? Does anyone have some simple description of how the CSC regsiters work, ie how do you specify that red output should be 0.125 times the red input? I know the algorithm is Dout1 = A0 x Din1 + B0 x Din2 + C0 x Din3 +S0, etc. Any help or information would be greatly appreciated. Thanks