my former colleague selected the video decoder to deliver a YUY2/UYVY 4:2:2 composite format as video frame while the video input format is YV12 4:2:0.
Then I do some scaling and some colors of the genuine video turn to wrong ones. See the attached picture with screenshots from the genuine video and from the shown one by our IPP based decoder software.
What is the best way to correct this fault?
I can use the planar YV12 format from decoding until showing on the screen. I think the easiest way for a 1st step is to get a decoded frame in YV12 format and to convert this to YUY2 to left all following calls of my software unchanged.
How can I do this?
ok, can you give me a hint if there is one IPP call which converts YV12 to YUY2 or do I have to use 3-4 calls due to the planar-composite conversion? Is there any sample where can I see how I can do this kind of conversion?
Looks like there is no direct conversion. Only YUV420ToRGB->RGBToYUV422. We have developed color conversion functions for the needs of UMC codecs. It seems like there was no need of that kind.
P.S. Somewhere I've heard a phrase "The best in standards is that there are many of them".))
I thank you for this hint. Can you confirm that there is a kind of quality loss in the colors if a YV12 video is decoded as YUY2 one by the IPP's decoder?
If yes, we have two possible place where color quality is lost. First we decode a YV12 video as YUY2 one. Second we uses LCDs with 6 instead of 8bit color depth for each color in one RGB pixel.