可能存在时间戳问题或此计算机太慢



有人用gstreamer得到这个输出吗?

我正在尝试从我的latptop到nvidia xavier的rtp流媒体

我的发件人管道是这样的

gst-launch-1.0 v4l2src ! videoconvert ! 'video/x-raw,format=(string)I420' ! x264enc ! rtph264pay ! udpsink host=127.0.0.1 port=1234

我的客户端管道是这样的

gst-launch-1.0 -vvv udpsrc port=1234 ! application/x-rtp,payload=96 ! rtph264depay ! avdec_h264 ! xvimagesink

我得到了以下输出,我的流也很慢而且滞后。

WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2902): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2902): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2902): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.

任何帮助将不胜感激。谢谢!

这些情况下的 CPU 使用率如何?我对这个平台没有经验 - 它的意图可能是在 GPU 上运行大多数东西(如视频解码和显示(。

尝试sync=false视频接收器。它可能仍然滞后,但不会丢弃任何帧。因此,也许可以通过观察此管道来获得更多的信息。

使用autovideoconvert ! autovideosink作为接收器而不是使用xvimagesink怎么样?

请考虑使用rtpbin元素,而不是手动执行 RTP 部分。垃圾箱做了很多智能缓冲等,可能会在这里有所帮助。

当然,请仔细检查问题是否发生在笔记本电脑编码器端。

sync=false 在某些情况下工作正常,但也可能导致图片滞后几分钟。通过添加带有 leaky=upstream(英语:leaky=upstream(的 queus 来改进这一点,但随后有很多丢帧,视频会断断续续。

相关内容

最新更新