Gstreamer video sink: bad color depth, color banding?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Gstreamer video sink: bad color depth, color banding?

跳至解决方案
2,684 次查看
david_kosir
Contributor II

We are trying Sabre Lite (i.MX6Q) with provided Ubuntu image (3.0.35_4.1.0 kernel), connected to HDTV with HDMI, 1920x1080@60,if=RGB24.

Gstreamer pipeline we used is simple and its reproducible with h264 or mpeg2 videos (probably any video but we didn't test others).

gst-launch-0.10 filesrc location=path/to/file typefind=true ! aiurdemux ! queue max-size-time=0 max-size-buffers=0 ! vpudec ! mfw_v4lsink

I've taken photos that show the problem and attached them. Please notice background color gradient and ignore bad photo quality as it was taken by phone.

Best description would be that video sink has poor color depth, there is effect of color banding.

Same video, when played on PC, doesn't have such issues.

We have tired to find root of the problem, as for now we have managed to conclude that it is not display or decoder problem:

We have tested 3 different TV models and one monitor, and all display same issue.

We have dumped raw video (after decoder) to file and played it on PC, there where no such issues.

While writing this, we have added bpp=32 to 1920x1080@60,if=RGB24 boot arguments and it looks a better, but still not good as same video displayed on PC monitor or TV decoder.

That might lead us to root of the problem.

Also, there are topics that touched this problem but never received proper answers:

GStreamer i.MX6 Multi-Overlay

Color banding in video using mfw_isink with GStreamer

Any ideas?

0 项奖励
1 解答
1,573 次查看
EricNelson
Senior Contributor II

Hi David and Karina,

This is an old issue and it would really be nice to get the fixes up-streamed.

     https://community.freescale.com/thread/220507

The short answer is that you're seeing the default alpha-blending of the video overlay. Notice the text bleeding through the video in Photo 1.

We have patches floating around, but didn't apply them when we built the image above. On that image, we didn't apply the patches. We simply used the Freescale-supplied binaries.

We have a newer image that contains the latest gstreamer plugins here, but we also didn't apply the patches here:

     http://boundarydevices.com/rapping-raring/

Note that the patches aren't really needed when you're using your own application, since you can call the FB ioctls directly to configure color-keying and blending levels for the YUV overlay.

在原帖中查看解决方案

0 项奖励
4 回复数
1,574 次查看
karina_valencia
NXP Apps Support
NXP Apps Support

EricNelson can you help on this case?

0 项奖励
1,574 次查看
EricNelson
Senior Contributor II

Hi David and Karina,

This is an old issue and it would really be nice to get the fixes up-streamed.

     https://community.freescale.com/thread/220507

The short answer is that you're seeing the default alpha-blending of the video overlay. Notice the text bleeding through the video in Photo 1.

We have patches floating around, but didn't apply them when we built the image above. On that image, we didn't apply the patches. We simply used the Freescale-supplied binaries.

We have a newer image that contains the latest gstreamer plugins here, but we also didn't apply the patches here:

     http://boundarydevices.com/rapping-raring/

Note that the patches aren't really needed when you're using your own application, since you can call the FB ioctls directly to configure color-keying and blending levels for the YUV overlay.

0 项奖励
1,574 次查看
david_kosir
Contributor II

Thank you Eric,its much clearer now.

0 项奖励
1,574 次查看
karina_valencia
NXP Apps Support
NXP Apps Support

Thank  Eric  for  your  quick  answer on this case.

0 项奖励