After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 741723 - Occasional failure to terminate a pipeline with uridecodebin on a matroska file
Occasional failure to terminate a pipeline with uridecodebin on a matroska file
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-12-18 16:18 UTC by Vincent Penquerc'h
Modified: 2018-11-03 14:56 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Vincent Penquerc'h 2014-12-18 16:18:35 UTC
This pipeline terminates about two thirds of the time:

gst-launch-1.0 uridecodebin uri=file:///tmp/mewmew-vorbis-ssa.mkv ! audioconvert ! fakesink

I'm not sure it's matroskademux, as this one seems to always terminate:

gst-launch-1.0 filesrc location=/tmp/mewmew-vorbis-ssa.mkv ! matroskademux ! vorbisparse ! fakesink

However, with an Ogg/Vorbis file, the pipeline always terminates.

Test file:
http://streams.videolan.org/samples/Matroska/mewmew/mewmew-vorbis-ssa.mkv
Comment 1 Vincent Penquerc'h 2015-03-17 11:39:38 UTC
I can not reproduce the issue now...
Comment 2 Vincent Penquerc'h 2015-03-17 11:48:06 UTC
Actually I can. Just very rarely now.
Comment 3 Vincent Penquerc'h 2015-03-17 11:52:45 UTC
A bit of a scary backtrace, attaching to the process as it's stuck in PLAYING.

(gdb) thread apply all bt


Comment 4 Vincent Penquerc'h 2016-04-14 14:47:42 UTC
Still happens. Rarer as more logs get enabled.
Comment 5 Vincent Penquerc'h 2016-09-23 09:22:18 UTC
With a loop doing this over and over again, I've seen it happen after minutes of runtime (about 1 second per run), just as I was writing a post saying "doesn't happen anymore". Adding logs make it go away.

Thread 26 (Thread 0x7f86b6f19700 (LWP 25278))

  • #0 syscall
  • #1 g_cond_wait
  • #2 gst_task_func
    at gsttask.c line 319
  • #3 g_thread_pool_thread_proxy
  • #4 g_thread_proxy
  • #5 start_thread
  • #6 clone

Thread 24 (Thread 0x7f86b4c64700 (LWP 25280))

  • #0 syscall
  • #1 g_cond_wait
  • #2 gst_task_func
    at gsttask.c line 319
  • #3 g_thread_pool_thread_proxy
  • #4 g_thread_proxy
  • #5 start_thread
  • #6 clone

Thread 23 (Thread 0x7f86a7fff700 (LWP 25281))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 22 (Thread 0x7f86a75ba700 (LWP 25282))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 21 (Thread 0x7f86a66dc700 (LWP 25283))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 20 (Thread 0x7f86a5cc6700 (LWP 25284))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 19 (Thread 0x7f86a54c5700 (LWP 25285))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 18 (Thread 0x7f86a4cc4700 (LWP 25286))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 17 (Thread 0x7f868ffff700 (LWP 25287))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 16 (Thread 0x7f868f7fe700 (LWP 25288))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 15 (Thread 0x7f868effd700 (LWP 25289))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 14 (Thread 0x7f868e7fc700 (LWP 25290))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 13 (Thread 0x7f868dffb700 (LWP 25291))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 12 (Thread 0x7f868d7fa700 (LWP 25292))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 11 (Thread 0x7f868cff9700 (LWP 25293))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 10 (Thread 0x7f866bfff700 (LWP 25294))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 9 (Thread 0x7f866b7fe700 (LWP 25295))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 8 (Thread 0x7f866affd700 (LWP 25296))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 7 (Thread 0x7f866a7fc700 (LWP 25297))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Thread 6 (Thread 0x7f8669ffb700 (LWP 25298))

  • #0 syscall
  • #1 g_cond_wait
  • #2 _gst_data_queue_wait_non_empty
    at gstdataqueue.c line 553
  • #3 gst_data_queue_pop
    at gstdataqueue.c line 595
  • #4 gst_multi_queue_loop
    at gstmultiqueue.c line 1769
  • #5 gst_task_func
    at gsttask.c line 334
  • #6 g_thread_pool_thread_proxy
  • #7 g_thread_proxy
  • #8 start_thread
  • #9 clone

Comment 6 GStreamer system administrator 2018-11-03 14:56:38 UTC
-- 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-good/issues/148.