rtspsrc: long and regular pauses when streaming from wifi action cams

philippe renon philippe_renon at yahoo.fr
Thu Nov 3 22:28:48 UTC 2016


This pipeline will pause for ~3s every 10s when streaming from a wifi cam (tested with 2 different cam brands).

rtspsrc location=rtsp://192.x.x.x/AmbaStreamTest latency=30 ! decodebin ! timeoverlay ! autovideosink

This issue is *not* reproducible with gst-launch or the mobile applications dedicated to the particular cams.
I am using an msys2 build of gstreamer 1.10.0 and the pipeline is run within a Qt 5.6.1 app.I tried decodebin3 and fakesink : same pauses...One of the cam streams h265, the other one jpeg.

In the Qt application, I tried to mimic what is done in gst-launch to the notable exceptions that:1/ I use the video overlay API
2/ All bus events are handled synchronously (!)
This includes latency events, overlay events, etc...

Log level 3 yields this repeating pattern of rendering, then a freeze until skew warnings followed by decreasing timestamp warnings:
Note that the pause/freeze happens exactly every 10 seconds.

0:00:06.696025748  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.506932347
0:00:06.729396586  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.540299043
0:00:06.762759977  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.573665740
0:00:06.796128643  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.607032436
0:00:06.829490482  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.640399131
0:00:06.863000955  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.673765827
0:00:06.896212610  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.707132523
0:00:06.929581586  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.740499218
0:00:06.963065994  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:06.773865913
0:00:10.009519675  5096   17982b00 WARN         rtpjitterbuffer rtpjitterbuffer.c:570:calculate_skew: delta - skew: 0:00:03.076607262 too big, reset skew
0:00:10.068884294  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.256601394 < 0:00:10.323816277)
0:00:10.128340451  5096   17982b00 WARN         rtpjitterbuffer rtpjitterbuffer.c:570:calculate_skew: delta - skew: 0:00:01.922682282 too big, reset skew
0:00:10.258822277  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.233469552 < 0:00:10.891049599)
0:00:10.275259457  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.265360892 < 0:00:10.891049599)
0:00:10.306632898  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.296691913 < 0:00:10.891049599)
0:00:10.340349720  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.327394202 < 0:00:10.891049599)
0:00:10.378309886  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.357797606 < 0:00:10.891049599)
0:00:10.415688241  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.387509904 < 0:00:10.891049599)
0:00:10.441272737  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.416511180 < 0:00:10.891049599)
0:00:10.471885323  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.445257516 < 0:00:10.891049599)
0:00:10.520637703  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.473325486 < 0:00:10.891049599)
0:00:10.539163818  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.500763046 < 0:00:10.891049599)
0:00:10.577593467  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.528117597 < 0:00:10.891049599)
0:00:10.605983069  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.554982983 < 0:00:10.891049599)
0:00:10.642451626  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.581471561 < 0:00:10.891049599)
0:00:10.677846857  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.608154940 < 0:00:10.891049599)
0:00:10.715108540  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.634675952 < 0:00:10.891049599)
0:00:10.738431263  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.661180636 < 0:00:10.891049599)
0:00:10.786688404  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.688138936 < 0:00:10.891049599)
0:00:10.807724842  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.715290786 < 0:00:10.891049599)
0:00:10.843468229  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.742765600 < 0:00:10.891049599)
0:00:10.875957506  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.770932558 < 0:00:10.891049599)
0:00:10.906384224  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.799541281 < 0:00:10.891049599)
0:00:10.948233062  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.828660596 < 0:00:10.891049599)
0:00:10.977393758  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.858487781 < 0:00:10.891049599)
0:00:11.015278211  5096   17982a70 WARN            videodecoder gstvideodecoder.c:2767:gst_video_decoder_prepare_finish_frame:<avdec_h264-0> decreasing timestamp (0:00:10.888815991 < 0:00:10.891049599)
0:00:13.069642666  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:12.880490649
0:00:13.103571422  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:12.913857316
0:00:13.136318869  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:12.947223982
0:00:13.169681329  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:12.980590649
0:00:13.203539647  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:13.013957316
0:00:13.236428280  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:13.047323982
0:00:13.269793843  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:13.080690649
0:00:13.303543867  5096   17982a70 INFO            d3dvideosink d3dhelpers.c:1905:d3d_render_buffer:<autovideosink0-actual-sink-d3dvideo> Render 0:00:13.114057316
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20161103/f31b3a48/attachment-0001.html>


More information about the gstreamer-devel mailing list