[gstreamer-bugs] [Bug 591919] New: mpeg2dec doesn't handle pixel-aspect-ratio change

bugzilla at gnome.org bugzilla at gnome.org
Sat Aug 15 16:30:05 PDT 2009


http://bugzilla.gnome.org/show_bug.cgi?id=591919

           Summary: mpeg2dec doesn't handle pixel-aspect-ratio change
    Classification: Desktop
           Product: GStreamer
           Version: 0.10.12
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-ugly
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: tom78999 at gmail.com
         QAContact: gstreamer-bugs at lists.sourceforge.net
      GNOME target: ---
     GNOME version: ---


--- Comment #0 from Thomas Green <tom78999 at gmail.com> 2009-08-15 23:30:03 UTC ---
Created an attachment (id=140851)
cropped log showing steps leading up to error

I have a couple of DVDs that seem to change the pixel-aspect-ratio (as reported
by mpeg2dec) whilst playing. It changes the pixel-aspect-ratio from 256/135 to
64/45 and always produces a not-negotiated error.

What seems to happen is that the new caps are set on the src pad and a buffer
is allocated with the new caps. But the buffer that is actually pushed to the
pad (in function handle_slice()) still has the original pixel-aspect-ratio for
some reason!?

The pad picks up the discrepancy between the caps it has been set and the caps
of the buffer and attempts to set the caps on the pad to match the buffer...
which fails (because the pad has fixed caps?).

Setting the src pad as non-fixed seems to hack around it and allow the playback
to continue normally, but I'm sure there is some root cause that must be fixed
instead.

Partial log from the following pipeline is attached:

gst-launch-0.10 dvdreadsrc device=DONNIE_DARKO.iso title=2 ! dvddemux name=dvd
dvd.current_video ! queue ! mpeg2dec ! progressreport update-freq=1 ! fakesink
--gst-debug=GST_CAPS:4,GST_PADS:4,mpeg2dec:4

-- 
Configure bugmail: http://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