GNOME Bugzilla – Bug 784063
appsink hangs if sync is true
Last modified: 2018-11-03 11:57:21 UTC
This happens sporadically and in a slow VM (just connecting multifilesrc to appsink): thread #6: tid = 41178, 0x00007fe29b600c21 libc.so.6`__GI_ppoll(fds=0x00007fe27c043ac0, nfds=1, timeout=<unavailable>, sigmask=0x0000000000000000) + 145 at ppoll.c:50, name = 'multifilesrc0:s', stop reason = signal SIGSTOP frame #0: 0x00007fe29b600c21 libc.so.6`__GI_ppoll(fds=0x00007fe27c043ac0, nfds=1, timeout=<unavailable>, sigmask=0x0000000000000000) + 145 at ppoll.c:50 frame #1: 0x00007fe2a5e0e818 libgstreamer-1.0.so.0`gst_poll_wait + 1784 frame #2: 0x00007fe2a5e24eb1 libgstreamer-1.0.so.0`??? + 145 frame #3: 0x00007fe2a5dd3dfb libgstreamer-1.0.so.0`gst_clock_id_wait + 91 frame #4: 0x00007fe2a60dcadc libgstbase-1.0.so.0`gst_base_sink_wait_clock + 332 frame #5: 0x00007fe2a60ddf80 libgstbase-1.0.so.0`??? + 1824 frame #6: 0x00007fe2a60defb2 libgstbase-1.0.so.0`??? + 1938 frame #7: 0x00007fe2a60e0620 libgstbase-1.0.so.0`??? + 240 frame #8: 0x00007fe2a5df954f libgstreamer-1.0.so.0`??? + 1935 frame #9: 0x00007fe2a5e01483 libgstreamer-1.0.so.0`gst_pad_push + 275 frame #10: 0x00007fe2a60ea47d libgstbase-1.0.so.0`??? + 397 frame #11: 0x00007fe2a5df954f libgstreamer-1.0.so.0`??? + 1935 frame #12: 0x00007fe2a5e01483 libgstreamer-1.0.so.0`gst_pad_push + 275 frame #13: 0x00007fe2a5dea513 libgstreamer-1.0.so.0`gst_proxy_pad_chain_default + 179 frame #14: 0x00007fe2a5df954f libgstreamer-1.0.so.0`??? + 1935 frame #15: 0x00007fe2a5e01483 libgstreamer-1.0.so.0`gst_pad_push + 275 frame #16: 0x00007fe2a3eab8df libgstvideo-1.0.so.0`??? + 3167 frame #17: 0x00007fe2a3eb2110 libgstvideo-1.0.so.0`gst_video_decoder_finish_frame + 512 frame #18: 0x00007fe2833f46d3 libgstjpeg.so frame #19: 0x00007fe2a3eaa4c6 libgstvideo-1.0.so.0`??? + 422 frame #20: 0x00007fe2a3eaa97d libgstvideo-1.0.so.0`??? + 157 frame #21: 0x00007fe2a3ead173 libgstvideo-1.0.so.0`??? + 755 frame #22: 0x00007fe2a5df954f libgstreamer-1.0.so.0`??? + 1935 frame #23: 0x00007fe2a5e01483 libgstreamer-1.0.so.0`gst_pad_push + 275 frame #24: 0x00007fe2a5df954f libgstreamer-1.0.so.0`??? + 1935 frame #25: 0x00007fe2a5e01483 libgstreamer-1.0.so.0`gst_pad_push + 275 frame #26: 0x00007fe2a5dea513 libgstreamer-1.0.so.0`gst_proxy_pad_chain_default + 179 frame #27: 0x00007fe2a5df954f libgstreamer-1.0.so.0`??? + 1935 frame #28: 0x00007fe2a5e01483 libgstreamer-1.0.so.0`gst_pad_push + 275 frame #29: 0x00007fe2a60e5da5 libgstbase-1.0.so.0`??? + 1013 frame #30: 0x00007fe2a5e2be71 libgstreamer-1.0.so.0`??? + 401 frame #31: 0x00007fe29ebfd55e libglib-2.0.so.0`??? + 158 frame #32: 0x00007fe29ebfcbc5 libglib-2.0.so.0`??? + 85 frame #33: 0x00007fe29ca936ba libpthread.so.0`start_thread + 202 frame #34: 0x00007fe29b60c82d libc.so.6`__clone + 109 at clone.S:109 If I set "sync=false" for appsink, the problem is resolved. The error looks similar to this: https://lists.freedesktop.org/archives/gstreamer-bugs/2015-February/141581.html which specifies Bug #737427
Could you please attach a (compressed) GST_DEBUG=*sink:6,*dec*:6 log for when that happens?
Created attachment 355971 [details] base sink logs with wall-clock sync Fortunately the logs were not too big, thus uncompressed. This looks like the issue: basesink gstbasesink.c(2547):gst_base_sink_do_sync [appsink0] possibly waiting for clock to reach 28:08:42.757704965, adjusted 28:08:42.757704965 basesink gstbasesink.c(2129):gst_base_sink_wait_clock [appsink0] time 28:08:42.757704965, base_time 28:08:42.756871766 while 28:08:42.756871766 > 28:08:42.757704965 Also potentially related: `multifilesrc do-timestamp=true`
It's going to wait there for the clock for 28 hours, previous timestamp looks ok. Can you provide a testcase to reproduce this problem?
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/360.