[英]GStreamer pipeline stops playing after fast and shaky camera movement
I'm working on a video streaming wearable device.我正在开发视频流可穿戴设备。 During the tests, it came up that the pipeline clock and stream stop while fast walking or running.
在测试过程中,发现管道时钟和流在快速行走或跑步时停止。 It's bizarre behaviour because in debug messages there are no errors about the broken pipeline, besides lost frames.
这是一种奇怪的行为,因为在调试消息中,除了丢失的帧之外,没有关于损坏的管道的错误。 It's frizzed and only restarting help.
它卷曲了,只能重新启动帮助。 May you guys guess what causes the problem?
大家猜猜是什么原因造成的问题?
The pipelines I use:我使用的管道:
streaming device:流媒体设备:
gst-launch-1.0 -vem --gst-debug=3 v4l2src device=/dev/video0 ! video/x-raw,width=640,height=480,framerate=\(fraction\)30/1 ! v4l2h264enc extra-controls=s,video_bitrate=250000 capture-io-mode=4 output-io-mode=4 ! "video/x-h264,level=(string)4" ! rtph264pay config-interval=1 ! multiudpsink clients="127.0.0.1:5008,10.123.0.2:5008"
client:客户:
udpsrc port=5008 do-timestamp=true ! application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96 ! rtpjitterbuffer latency=100 drop-on-latency=true drop-messages-interval=100000000 ! queue max-size-buffers=20000 ! rtph264depay ! h264parse ! avdec_h264 ! videoconvert ! glupload ! qmlglsink name=qmlglsink sync=false
The hardware I use is a PS3 Eye cam, and LTE modem to transmit video with a pretty low uplink of 1-2 Mbit/s, and everything running on RaspberryPi 3b+ 1GB.我使用的硬件是 PS3 Eye cam 和 LTE 调制解调器,以 1-2 Mbit/s 的相当低的上行链路传输视频,一切都在 RaspberryPi 3b+ 1GB 上运行。
For more debug info there are also pictures of the log file after last registered dropped frame and every next "cycle" sends a new query, loops over GST Element from sink to the source which is my camera and ends with max query duration (highlighted query to v4l2src)有关更多调试信息,还有上次注册丢帧后的日志文件图片,并且每个下一个“周期”发送一个新查询,从接收器到源(即我的相机)循环 GST 元素,并以最大查询持续时间结束(突出显示的查询到 v4l2src)
Do you know how to overcome this problem?你知道如何克服这个问题吗?
The problem has been resolved.这个问题已经解决。 The issue was not variable encoder bitrate.
问题不在于可变编码器比特率。 A more detailed inspection and pipeline that works for me is in this GStreamer issue page
对我有用的更详细的检查和管道在这个GStreamer 问题页面中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.