[Bug 700324] New: playbin hangs trying to play 4K video, and hangs again on interrupt

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue May 14 11:22:23 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=700324
  GStreamer | gst-plugins-base | 1.0.7

           Summary: playbin hangs trying to play 4K video, and hangs again
                    on interrupt
    Classification: Platform
           Product: GStreamer
           Version: 1.0.7
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: swestrup at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: 2.27/2.28


I'm using the latest git build of GStreamer as of May 13. I have attempted to
use the exact same command line as below to play other 4K videos, without any
problems.

However, I recently downloaded the 4K version of the Open source animation
'Sintel'. Its huge, but a bittorrent can be found here:
http://thepiratebay.sx/search/sintel+4k/0/99/0

When I tried to view the video in my gstreamer application (which internally
uses decodebin), I got an error:

Error: matroskademux0: GStreamer encountered a general stream error.
(matroska-demux.c(4562): gst_matroska_demux_loop ():
/GstPipeline:pipeline/GstBin:reader/GstDecodeBin:decoder/GstMatroskaDemux:matroskademux0:

As this appeared to be a negotiation failure inside decodebin, I decided to see
how playbin would handle the same file:

DISPLAY=:2 gst-launch-1.0 playbin uri=file:~/Videos/4K/Sintel-4K.mkv

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...

And it sat there like that for several minutes until I hit ^C:

^Chandling interrupt.
Interrupt: Stopping pipeline ...
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...

And at that point it hung again and I had to manually kill the process to stop
it.

I should mention that I've also run across the problem in my own application of
attempting to set a pipeline to NULL to perform a clean exit after an error
only to have it hang. This is the simplest case I've yet found where one can
demonstrate that issue.


I should

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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