multiple stream throught videomixer + rtmpsink getting freeze
Weavel
weavel37 at yahoo.fr
Thu Jun 12 07:49:25 PDT 2014
Hi Tim !
Thanks for the reply !
As you said, i tested the many things u told me.
*Does it work if you replace one of the two mix branches with a
videotestsrc? *
No, it doesn’t. I still have the video getting freeze for few seconds every
13-14 seconds. But, when i tested with both videotestsrc in mixed branches,
it does works perfectly without interruption.
*Does it work with just a single rtmpsrc feeding into a videomixer? *
Yes it does.
*Does it work if you output stuff from videomixer to e.g. videoconvert !
ximagesink?*
No it doesn't, i still got the same thing, which is video freezing every
13-14 seconds.
*Does it work if you set sync=false on the video sink? *
No, it doesn't work. It's still the same.
*Maybe check the GST_DEBUG log of videomixer and/or collectpads to see
what's going on. Especially check if the timestamps make sense.*
So, GST_DEBUG=videomixer:6 gst-launch-1.0 videomixer sink_1::xpos=50
sink_1::ypos=50 name=mix ! videoconvert ! video/x-raw, height=1080,
width=1920 ! x264enc tune=zerolatency bitrate=2000 ! flvmux ! rtmpsink
location=rtmp://myserver.com/stream1/test3 rtmpsrc name=src1
location=rtmp://myserver.com/stream1/test1 ! decodebin ! mix.sink_0 rtmpsrc
name=src2 location=rtmp://myserver.com/stream1/test2 ! decodebin !
mix.sink_1
0:00:00.034894018 14681 0x14edc40 INFO videomixer
videomixer2.c:2249:gst_videomixer2_child_proxy_init: intializing child proxy
interface
0:00:00.035131018 14681 0x14edc40 DEBUG videomixer
videomixer2.c:781:gst_videomixer2_update_qos:<GstVideoMixer2 at 0x14f60b0>
Updating QoS: proportion 0.500000, diff 0:00:00.000000000, timestamp
99:99:99.999999999
0:00:00.035271349 14681 0x14edc40 INFO videomixer
videomixer2.c:2240:gst_videomixer2_child_proxy_get_children_count:<videomixer2-0>
Children Count: 0
0:00:00.035333572 14681 0x14edc40 INFO videomixer
videomixer2.c:2240:gst_videomixer2_child_proxy_get_children_count:<videomixer2-0>
Children Count: 0
0:00:00.043682806 14681 0x14edc40 DEBUG videomixer
videomixer2.c:2102:gst_videomixer2_request_new_pad:<mix> Adding pad sink_1
0:00:00.043778924 14681 0x14edc40 INFO videomixer
videomixer2.c:2240:gst_videomixer2_child_proxy_get_children_count:<mix>
Children Count: 1
0:00:00.043850403 14681 0x14edc40 INFO videomixer
videomixer2.c:2240:gst_videomixer2_child_proxy_get_children_count:<mix>
Children Count: 1
0:00:00.052955580 14681 0x14edc40 DEBUG videomixer
videomixer2.c:2102:gst_videomixer2_request_new_pad:<mix> Adding pad sink_0
Setting pipeline to PAUSED ...
0:00:00.056746059 14681 0x14edc40 LOG videomixer
videomixer2.c:2020:gst_videomixer2_change_state:<mix> starting collectpads
Pipeline is PREROLLING ...
Redistribute latency...
0:00:02.973689899 14681 0x15980a0 DEBUG videomixer
videomixer2.c:558:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0>
video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:02.973830760 14681 0x15980a0 LOG videomixer
videomixer2.c:571:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0> src caps
video/x-raw, format=(string){ AYUV, BGRA, ARGB, RGBA, ABGR, Y444, Y42B,
YUY2, UYVY, YVYU, I420, YV12, NV12, NV21, Y41B, RGB, BGR, xRGB, xBGR, RGBx,
BGRx }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ],
framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:02.973958065 14681 0x15980a0 DEBUG videomixer
videomixer2.c:591:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0> accepted
caps video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:02.974015961 14681 0x15980a0 DEBUG videomixer
videomixer2.c:592:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0>
acceptable caps are video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[
1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ],
pixel-aspect-ratio=(fraction)1/1
0:00:02.974087930 14681 0x15980a0 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_0> Got stream-start
event on pad mix:sink_0
0:00:02.974159612 14681 0x15980a0 DEBUG videomixer
videomixer2.c:558:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0>
video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:02.974240614 14681 0x15980a0 LOG videomixer
videomixer2.c:571:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0> src caps
video/x-raw, format=(string){ AYUV, BGRA, ARGB, RGBA, ABGR, Y444, Y42B,
YUY2, UYVY, YVYU, I420, YV12, NV12, NV21, Y41B, RGB, BGR, xRGB, xBGR, RGBx,
BGRx }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ],
framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:02.974333443 14681 0x15980a0 DEBUG videomixer
videomixer2.c:591:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0> accepted
caps video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:02.974385426 14681 0x15980a0 DEBUG videomixer
videomixer2.c:592:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_0>
acceptable caps are video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[
1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ],
pixel-aspect-ratio=(fraction)1/1
0:00:02.974438385 14681 0x15980a0 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_0> Got caps event on
pad mix:sink_0
0:00:02.974474741 14681 0x15980a0 INFO videomixer
videomixer2.c:457:gst_videomixer2_pad_sink_setcaps:<mix:sink_0> Setting caps
video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:02.976922599 14681 0x15980a0 DEBUG videomixer
videomixer2.c:400:gst_videomixer2_update_converters:<mix> The output format
will now be : 2 with colorimetry : bt601 and chroma : (null)
0:00:02.976971408 14681 0x15980a0 DEBUG videomixer
videomixer2.c:439:gst_videomixer2_update_converters:<mix:sink_0> This pad
will not need conversion
0:00:02.977591636 14681 0x15980a0 INFO videomixer
videomixer2.c:1662:gst_videomixer2_src_setcaps:<mix:src> set src caps:
video/x-raw, format=(string)I420, width=(int)1920, height=(int)1080,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
Redistribute latency...
0:00:04.011123973 14681 0x145a230 DEBUG videomixer
videomixer2.c:558:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1>
video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:04.011286554 14681 0x145a230 LOG videomixer
videomixer2.c:571:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1> src caps
video/x-raw, format=(string){ AYUV, BGRA, ARGB, RGBA, ABGR, Y444, Y42B,
YUY2, UYVY, YVYU, I420, YV12, NV12, NV21, Y41B, RGB, BGR, xRGB, xBGR, RGBx,
BGRx }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ],
framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:04.011409203 14681 0x145a230 DEBUG videomixer
videomixer2.c:591:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1> accepted
caps video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:04.011460739 14681 0x145a230 DEBUG videomixer
videomixer2.c:592:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1>
acceptable caps are video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[
1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ],
pixel-aspect-ratio=(fraction)1/1
0:00:04.011531637 14681 0x145a230 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_1> Got stream-start
event on pad mix:sink_1
0:00:04.011579200 14681 0x145a230 DEBUG videomixer
videomixer2.c:558:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1>
video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:04.011642530 14681 0x145a230 LOG videomixer
videomixer2.c:571:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1> src caps
video/x-raw, format=(string){ AYUV, BGRA, ARGB, RGBA, ABGR, Y444, Y42B,
YUY2, UYVY, YVYU, I420, YV12, NV12, NV21, Y41B, RGB, BGR, xRGB, xBGR, RGBx,
BGRx }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ],
framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:04.011729168 14681 0x145a230 DEBUG videomixer
videomixer2.c:591:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1> accepted
caps video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:04.011776288 14681 0x145a230 DEBUG videomixer
videomixer2.c:592:gst_videomixer2_pad_sink_acceptcaps:<mix:sink_1>
acceptable caps are video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[
1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ],
pixel-aspect-ratio=(fraction)1/1
0:00:04.011827150 14681 0x145a230 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_1> Got caps event on
pad mix:sink_1
0:00:04.011855943 14681 0x145a230 INFO videomixer
videomixer2.c:457:gst_videomixer2_pad_sink_setcaps:<mix:sink_1> Setting caps
video/x-raw, format=(string)I420, width=(int)720, height=(int)406,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt601, framerate=(fraction)25/1
0:00:04.014846060 14681 0x145a230 DEBUG videomixer
videomixer2.c:400:gst_videomixer2_update_converters:<mix> The output format
will now be : 2 with colorimetry : bt601 and chroma : (null)
0:00:04.014894666 14681 0x145a230 DEBUG videomixer
videomixer2.c:439:gst_videomixer2_update_converters:<mix:sink_1> This pad
will not need conversion
0:00:04.014933702 14681 0x145a230 DEBUG videomixer
videomixer2.c:439:gst_videomixer2_update_converters:<mix:sink_0> This pad
will not need conversion
0:00:04.015573023 14681 0x145a230 INFO videomixer
videomixer2.c:1662:gst_videomixer2_src_setcaps:<mix:src> set src caps:
video/x-raw, format=(string)I420, width=(int)1920, height=(int)1080,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt709, framerate=(fraction)25/1
0:00:05.197998818 14681 0x15980a0 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_0> Got segment event
on pad mix:sink_0
0:00:06.258785456 14681 0x145a230 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_1> Got segment event
on pad mix:sink_1
0:00:06.259783402 14681 0x145a230 INFO videomixer
videomixer2.c:1662:gst_videomixer2_src_setcaps:<mix:src> set src caps:
video/x-raw, format=(string)I420, width=(int)1920, height=(int)1080,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
colorimetry=(string)bt709, framerate=(fraction)25/1
0:00:06.260732711 14681 0x145a230 DEBUG videomixer
videomixer2.c:1221:gst_videomixer2_collected:<mix> Sending NEWSEGMENT event
0:00:06.260771411 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.000000000
0:00:06.260801400 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.000000000
0:00:06.260821127 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.268605307 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.000000000 and duration 0:00:00.040000000
0:00:06.271248488 14681 0x145a230 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_1> Got tag event on
pad mix:sink_1
0:00:06.271499575 14681 0x15980a0 DEBUG videomixer
videomixer2.c:1910:gst_videomixer2_sink_event:<mix:sink_0> Got tag event on
pad mix:sink_0
0:00:06.271585540 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.000000000
0:00:06.271618377 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.000000000
0:00:06.271638760 14681 0x15980a0 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.289117353 14681 0x15980a0 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.040000000 and duration 0:00:00.040000000
Redistribute latency...
0:00:06.301232136 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.040000000
0:00:06.301303062 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.040000000
0:00:06.301327339 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.309313464 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.080000000 and duration 0:00:00.040000000
0:00:06.351836886 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.080000000
0:00:06.351923938 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.080000000
0:00:06.351947897 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.361231621 14681 0x15212d0 DEBUG videomixer
videomixer2.c:1400:gst_videomixer2_query_duration:<mix> Total duration in
format time: 0:00:06.208000000
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
0:00:06.362569612 14681 0x14edc40 DEBUG videomixer
videomixer2.c:1481:gst_videomixer2_query_latency:<mix> Calculated total
latency: live no, min 0:00:00.040000000, max 99:99:99.999999999
0:00:06.362711093 14681 0x14edc40 LOG videomixer
videomixer2.c:1994:gst_videomixer2_push_sink_event:<mix> Forwarding event
0x1397640 (latency)
0:00:06.362740090 14681 0x14edc40 LOG videomixer
videomixer2.c:1975:forward_event_func:<mix:sink_1> About to send event
latency
0:00:06.362797152 14681 0x14edc40 LOG videomixer
videomixer2.c:1982:forward_event_func:<mix:sink_1> Sent event 0x1397640
(latency).
0:00:06.362817162 14681 0x14edc40 LOG videomixer
videomixer2.c:1975:forward_event_func:<mix:sink_0> About to send event
latency
0:00:06.362862551 14681 0x14edc40 LOG videomixer
videomixer2.c:1982:forward_event_func:<mix:sink_0> Sent event 0x1397640
(latency).
New clock: GstSystemClock
0:00:06.365936644 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.120000000 and duration 0:00:00.040000000
0:00:06.384255432 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.120000000
0:00:06.384336044 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.120000000
0:00:06.384360784 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.392325623 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.160000000 and duration 0:00:00.040000000
0:00:06.460966702 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.160000000
0:00:06.461048048 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.160000000
0:00:06.461074627 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.469266979 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.200000000 and duration 0:00:00.040000000
0:00:06.513745364 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.200000000
0:00:06.513830426 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.200000000
0:00:06.513854565 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.521734336 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.240000000 and duration 0:00:00.040000000
0:00:06.528220980 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.240000000
0:00:06.528296399 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.240000000
0:00:06.528320103 14681 0x15980a0 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.544714271 14681 0x15980a0 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.280000000 and duration 0:00:00.040000000
0:00:06.580143317 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.280000000
0:00:06.580220520 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.280000000
0:00:06.580245866 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.588580177 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.320000000 and duration 0:00:00.040000000
0:00:06.660923892 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.320000000
0:00:06.661002105 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.320000000
0:00:06.661028528 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.669240477 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.360000000 and duration 0:00:00.040000000
0:00:06.700236337 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.360000000
0:00:06.700315486 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.360000000
0:00:06.700342219 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.708580068 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.400000000 and duration 0:00:00.040000000
0:00:06.751646149 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.400000000
0:00:06.751728965 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.400000000
0:00:06.751752614 14681 0x15980a0 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.760913506 14681 0x15980a0 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.440000000 and duration 0:00:00.040000000
0:00:06.792142446 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.440000000
0:00:06.792372372 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.440000000
0:00:06.792466881 14681 0x15980a0 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.800374539 14681 0x15980a0 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.480000000 and duration 0:00:00.040000000
0:00:06.852410228 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.480000000
0:00:06.852491707 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.480000000
0:00:06.852517169 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.858542693 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.520000000 and duration 0:00:00.040000000
0:00:06.896457788 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.520000000
0:00:06.896558123 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.520000000
0:00:06.896597082 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.902471755 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.560000000 and duration 0:00:00.040000000
0:00:06.940894373 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.560000000
0:00:06.940975652 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.560000000
0:00:06.940999168 14681 0x15980a0 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.948793230 14681 0x15980a0 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.600000000 and duration 0:00:00.040000000
0:00:06.986674894 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.600000000
0:00:06.986750279 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.600000000
0:00:06.986775856 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:06.995137380 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.640000000 and duration 0:00:00.040000000
0:00:07.044204233 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.640000000
0:00:07.044276598 14681 0x15980a0 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.640000000
0:00:07.044299824 14681 0x15980a0 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:07.050007569 14681 0x15980a0 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.680000000 and duration 0:00:00.040000000
0:00:07.094600868 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.680000000
0:00:07.094675072 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.680000000
0:00:07.094698050 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:07.102391041 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.720000000 and duration 0:00:00.040000000
0:00:07.131898500 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.720000000
0:00:07.131989115 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.720000000
0:00:07.132022096 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
0:00:07.137477186 14681 0x145a230 LOG videomixer
videomixer2.c:1308:gst_videomixer2_collected:<mix> Pushing buffer with ts
0:00:00.760000000 and duration 0:00:00.040000000
0:00:07.183744127 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_1> Taking new buffer
with start time 0:00:00.760000000
0:00:07.183824387 14681 0x145a230 DEBUG videomixer
videomixer2.c:959:gst_videomixer2_fill_queues:<mix:sink_0> Taking new buffer
with start time 0:00:00.760000000
0:00:07.183847467 14681 0x145a230 LOG videomixer
videomixer2.c:1156:gst_videomixer2_do_qos:<mix> no observation yet, process
frame
etc..
The collectpads seems correct to me, as for the timestamp. I can note that
the pushing buffer with ts is getting more and more late compare to the
launching code as the video goes on. (10 seconds between them at the begin,
1 minute around 4-5 minutes)
*You could also try to add queues before videomixer to provide some more
buffering. *
Done. It's better, but even with more buffering it does still freeze after a
certain amount of time (around 1m30).
And it’s getting worse when i add a third feeding source.
This is what i’m getting now :
GST_DEBUG=videomixer:6 gst-launch-1.0 videomixer sink_1::xpos=200
sink_1::ypos=200 sink_2::xpos=800 sink_2::ypos=800 name=mix ! queue !
videoconvert ! video/x-raw, height=1080, width=1920 ! x264enc
tune=zerolatency bitrate=4000 ! flvmux name=flvmux ! rtmpsink
location=rtmp://myserver.com/stream1/stream sync=false rtmpsrc name=src1
location=rtmp://myserver.com/stream1/src1 ! decodebin name=dec1 ! queue !
mix.sink_0 rtmpsrc name=src2 location=rtmp://myserver.com/stream1/src2 !
decodebin name=dec2 ! queue ! mix.sink_1 rtmpsrc name=src3
location=rtmp://myserver.com/stream1/src3 ! decodebin name=dec3 ! queue !
mix.sink_2 dec1. ! queue ! audioconvert ! add. dec2. ! queue ! audioconvert
! add. dec3. ! queue ! audioconvert ! add. adder name=add ! audioresample !
flvmux.
I am now getting AV desync.
I made a code to regroupe all the feeding source together into the same
clock pipeline, but i still have freeze.
I'm attempting to use multiqueue, because input/output selectors are not
suitable to my project.
Regards, Weavel
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/multiple-stream-throught-videomixer-rtmpsink-getting-freeze-tp4667355p4667465.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
More information about the gstreamer-devel
mailing list