流光 rtsp 服务器第二个和后续客户端在几秒钟后断开连接

问题描述

我使用共享工厂创建了 gst-rtsp-server gst_rtsp_media_set_shared(media,TRUE); 允许多个客户端连接。

然后我使用这个测试管道来检查服务器如何与少数客户端一起工作:

gst-launch-1.0 -v rtspsrc location=rtsp://127.0.0.1:5759/vd latency=0  protocols=GST_RTSP_LOWER_TRANS_TCP ! application/x-rtp,encoding-name=H264,payload=96 ! rtph264depay ! h264parse ! tee name=t t. ! queue ! avdec_h264 direct-rendering=FALSE ! videoconvert ! d3dvideosink sync=false

使用一个客户端一切正常,但是当我作为第二个客户端连接时,它会工作几秒钟,然后冻结(d3dvideosink 上没有出现新帧并且执行时间不更新),并且在 5-10 秒后断开连接。这就是我在终端中看到的:

/GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0/GstRtpBin:manager/GstRtpSession:rtpsession0: stats = application/x-rtp-session-stats,rtx-drop-count=(uint)0,sent-nack-count=(uint)0,recv-nack-count=(uint)0,source-stats=(GValueArray)< "application/x-rtp-source-stats\,\ ssrc\=\(uint\)517675450\,\ internal\=\(boolean\)false\,\ validated\=\(boolean\)true\,\ received-bye\=\(boolean\)false\,\ is-csrc\=\(boolean\)false\,\ is-sender\=\(boolean\)false\,\ seqnum-base\=\(int\)-1\,\ clock-rate\=\(int\)90000\,\ octets-sent\=\(guint64\)0\,\ packets-sent\=\(guint64\)0\,\ octets-received\=\(guint64\)5192271\,\ packets-received\=\(guint64\)4949\,\ bytes-received\=\(guint64\)5390231\,\ bitrate\=\(guint64\)3288913\,\ packets-lost\=\(int\)-1\,\ jitter\=\(uint\)415\,\ sent-pli-count\=\(uint\)0\,\ recv-pli-count\=\(uint\)0\,\ sent-fir-count\=\(uint\)0\,\ recv-fir-count\=\(uint\)0\,\ sent-nack-count\=\(uint\)0\,\ recv-nack-count\=\(uint\)0\,\ recv-packet-rate\=\(uint\)4235\,\ have-sr\=\(boolean\)true\,\ sr-ntptime\=\(guint64\)16467594665571962480\,\ sr-rtptime\=\(uint\)2449176275\,\ sr-octet-count\=\(uint\)54907582\,\ sr-packet-count\=\(uint\)52512\,\ sent-rb\=\(boolean\)true\,\ sent-rb-fractionlost\=\(uint\)0\,\ sent-rb-packetslost\=\(int\)-1\,\ sent-rb-exthighestseq\=\(uint\)55564\,\ sent-rb-jitter\=\(uint\)415\,\ sent-rb-lsr\=\(uint\)2786683528\,\ sent-rb-dlsr\=\(uint\)704929\,\ have-rb\=\(boolean\)false\,\ rb-fractionlost\=\(uint\)0\,\ rb-packetslost\=\(int\)0\,\ rb-exthighestseq\=\(uint\)0\,\ rb-jitter\=\(uint\)0\,\ rb-lsr\=\(uint\)0\,\ rb-dlsr\=\(uint\)0\,\ rb-round-trip\=\(uint\)0\;","application/x-rtp-source-stats\,\ ssrc\=\(uint\)3404924287\,\ internal\=\(boolean\)true\,\ clock-rate\=\(int\)-1\,\ octets-received\=\(guint64\)0\,\ packets-received\=\(guint64\)0\,\ bytes-received\=\(guint64\)0\,\ bitrate\=\(guint64\)0\,\ packets-lost\=\(int\)0\,\ jitter\=\(uint\)0\,\ recv-packet-rate\=\(uint\)0\,\ have-sr\=\(boolean\)false\,\ sr-ntptime\=\(guint64\)0\,\ sr-rtptime\=\(uint\)0\,\ sr-octet-count\=\(uint\)0\,\ sr-packet-count\=\(uint\)0\;" >,rtx-cou/GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0/GstRtpBin:manager/GstRtpSession:rtpsession0: stats = application/x-rtp-session-stats,rtx-count=(uint)0,recv-rtx-req-count=(uint)0,sent-rtx-req-count=(uint)0;
/GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0/GstRtpBin:manager/GstRtpSession:rtpsession0: stats = application/x-rtp-session-stats,sent-rtx-req-count=(uint)0;

Got EOS from element "pipeline0".

Execution ended after 0:00:39.694382000

在这里没有看到任何错误,所以我无法理解出了什么问题...有人知道我做错了什么吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)