我正在尝试将视频文件转发到我的设备上没有 X 的帧缓冲区。我正在使用gstreamer
插件fbdevsink
。
- 当我测试它时
它工作得很好。gst-launch-1.0 videotestsrc ! fbdevsink
- 但是,当我尝试使用命令打开设备上的任何视频文件时
它立即停止工作并输出gst-launch-1.0 filesrc location=right_top1.mp4 ! fbdevsink
Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstSystemClock Got EOS from element "pipeline0". Execution ended after 0:00:00.006988697 Setting pipeline to NULL ... Freeing pipeline ...
我无法弄清楚发生了什么,因为即使我添加调试(-v --gst-debug-level=2
)输出也是相同的。
如果重要的话,我正在开发带有 Yocto 操作系统的 Nvidia Jetson Nano。
你们知道如何解决或只是调试它吗?
答案1
我终于放弃gstreamer
并使用了,ffmpeg
没有任何问题。
命令如下所示:
ffmpeg -fflags nobuffer -flags low_delay -rtsp_transport tcp -stimeout 1000000 -i <RTSP_stream_addr> -pix_fmt bgra -loglevel