[gstreamer-bugs] [Bug 570144] New: decodebin2 decodes unwanted streams

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Sun Feb 1 13:57:05 PST 2009


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=570144

  GStreamer | gst-plugins-base | Ver: git
           Summary: decodebin2 decodes unwanted streams
           Product: GStreamer
           Version: git
          Platform: Other
        OS/Version: Windows
            Status: UNCONFIRMED
          Severity: minor
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: lrn1986 at gmail.com
         QAContact: gstreamer-bugs at lists.sourceforge.net
     GNOME version: Unspecified
   GNOME milestone: Unspecified


While application may not link some pads exposed by "pad-added" signal, this
will not prevent decodebin2 from decoding data for these pads.

Because of that decoding time significantly increases, since data from unwanted
(unlinked) pads are still being decoded to a raw form.

In theory, a decoder (or a bin it is placed into) should check whether
decoder's output is required by downstream elements or not, and skip the
decoding when it is not required. In practice this doesn't happen.

Workaround: tap on "autoplug-select" signal do not allow decodebin2 to autoplug
unwanted streams any further, preventing it from attaching decoders to the
pipeline, so no decoding takes place for these streams. Whether a stream is
unwanted or not could only be decided by analyzing proposed GstElementFactory,
because GstCaps may not contain necessary information. For example, for
audio/video in mp4 container first GstCaps that is passed has zero structures
and it's name is "video/quicktime", so it could be identified as video, while
in reality it's just a container which *must* be allowed to be autoplugged for
other streams to appear.

Pipeline that exposes this bug: uridecodebin -> audioconvert -> appsink


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=570144.




More information about the Gstreamer-bugs mailing list