[Bug 764749] New: playbin: switching videos without about-to-finish signal does not always work

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Apr 7 21:30:55 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=764749

            Bug ID: 764749
           Summary: playbin: switching videos without about-to-finish
                    signal does not always work
    Classification: Platform
           Product: GStreamer
           Version: 1.8.0
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-base
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: vliaskov at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Created attachment 325564
  --> https://bugzilla.gnome.org/attachment.cgi?id=325564&action=edit
testcase

Below is a testcase that tries to play through list of videos without using
about-to-finish signal. The video list loops endlessly. The about-to-finish
signal cannot be used due to application requirement (next uri is not known
immediately in the real application, and pipeline will need to be paused until
next video/uri is available). 

The testcase adds a pad probe to drop the EOS event at the end of each video,
and then calls another function (outside of streaming thread) to change
pipeline state to READY and replace the playbin uri with the next video uri.
Testcase uses vaapisink as video-sink of playbin.

The testcase successfully switches through 2-20 videos (differs on each run)
but then output goes blank/ no more video is displayed. This is reproducible
about 50% of the test runs so far, in other runs video switching is successful
for more than 30+ videos. 

Source code and backtrace of all threads during blank output/stopped switching
follows source code is here: http://pastebin.com/AdqyexYG

I will also attach the source code below. Perhaps there is an error in the
testcase, or some race in the playbin pipeline restart because gapless mode
(about-to-finish) is not used?

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list