I came across a situation where the ADV7612 does not react to a change in colorspace through an AVI infoframe. This seems to happen intermittently and not 100% reproducible every time. Following is the way we get it to fail.
- The 7612 gets a video of Color Space YCbCr and the video is good.
- Change the AVI infoframe of the source device to RGB, and sometimes the 7612 reports that the incoming video is still YCbCr. This can be read from the HDMI Map in the 7612, register offset 0x53.
I did verify that the 7612 does get the AVI infoframes correctly in its Infoframe map address but still reports the colorspace incorrectly in its HDMI map. A change in input signal (eg. resolution change) usually fixes the problem (the HDMI map corrects itself and reports the correct colorspace).
This can cause some problems in the video. We have set the input colorspace of the 7612 (register offset 0x02 in the IO map) to 0xF2. So in this setting, the input colorspace is dependent on the colorspace reported by the HDMI block (which I believe is dependent on the AVI infoframes). But as I stated above, sometimes the HDMI block reports the colorspace incorrectly. So if the source device changes the video colorspace from YCbCr to RGB and the output of the ADV7612 is set to RGB, then the ADV7612 might apply colorspace conversion to an RGB input video (thinking it is YCbCr) to convert to output RGB. This causes the video to have a light pinkish tint.
My question is does the 7612 require anything special before the video source colorspace is changed so that the 7612 can always detect change?