This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM4378:GStreamer 中的 Alpha Overlay 在使用视频转换时会明显滞后

Guru**** 2455500 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1479943/am4378-alpha-overlay-in-gstreamer-lags-noticeably-while-using-videoconvert

器件型号:AM4378

工具与软件:

我们使用 AM4738处理器在30fps 800x480分辨率 LCD 上显示模拟备份摄像头。  图像正常、直到图像顶部显示绿色/黄色/红色备份线、导致摄像头馈送出现不可接受的延迟。  此问题已追溯到 AYUV α 转换。  当覆层不包含 AYUV 从而显示白色背景时、不会出现延迟。  当 AYUV 和所需的透明度重新插入到显示的图像中时、将返回滞后。   

非常感谢对这一问题的任何了解。  

以下是具有相关延迟指示的 gstreamer 命令

不是很落后 :/bin/gst-launch-0.10 -EV v4l2src device=/dev/video0 ! VIDEO/x-RAW-YUV, format=(fourcc)UYVY! 不一样的颜色空间! fbdevsink device=/dev/fb0

拖慢了 : gst-launch-1.0 -v v4l2src device=/dev/video0 ! 视频转换! fbdevsink device=/dev/fb0 sync=false

也很落后 :/bin/gst-launch-0.10 -EV videomixer name=mix ! 不一样的颜色空间! fbdevsink device=/dev/fb0文件 rc location=/opt/tco/M20_30_right.png! pngdec! videoscale! imagefreeze ffmpegcolor space ! "video/x-raw-yuv、format=(fourcc) AYUV"! mix. filesrc location=/opt/tco/M20_left.png ! pngdec! videoscale! imagefreeze! 不一样的颜色空间! "video/x-raw-yuv、format=(fourcc) AYUV"! mix. v4l2src device=/dev/video0 ! VIDEO/x-RAW-YUV, format=(fourcc)UYVY! 不一样的颜色空间! "video/x-raw-yuv、format=(fourcc) AYUV"! 混合。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    videoconvert 插件或类似插件主要是减缓管道的因素。 您可以尝试添加一些"队列"元素、

    gst-launch-1.0 -v v4l2src device=/dev/video0 ! 队列! 视频转换! 队列! fbdevsink device=/dev/fb0 sync=false

    此致、

    建中

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    带有队列元素的建议命令不起作用。  是否有替代视频转换的替代方案或更高效的处理器方式来显示备份线路?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    遗憾的是、AM43x 器件上没有此类配置。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是否还有其他使用 AM437x 显示备份线路的解决方案?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Brett、您好!

    一种选择是使用 GPU 对两个图像进行颜色转换和合成、然后将最后一个帧缓冲区发送到显示。 我没有 GPU 示例的示例代码、但这里可以作为替代方案。  

    此致、
    Krunal