[Bug 758689] New: insert input-selector to resolve the issue when a unique codec is allowed for each decoder type

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Nov 25 22:59:05 PST 2015


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

            Bug ID: 758689
           Summary: insert input-selector to resolve the issue when a
                    unique codec is allowed for each decoder type
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Windows
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-base
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: r97922153 at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

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

Currently GStreamer will try to create several duplications of CODEC instances
even if the types are all the same. For some applications such as an embedded
hardware COEDC which could be accessed only by one decoding thread, it will be
an issue.

It seems that decode bin version 3 has tried to resolve this problem. But for
now, I still struggled in this issue. In order to support adaptive streaming
(DASH) which has multiple adaption sets (ex, native YouTube has dual video
tracks as well as dual audio tracks although the types are not same), it needs
a way to resolve this problem.

Here I try to insert input selector between demuxer & codec (in fact, between
the multiqueue right after demuxer & codec) to resolve this problem. It seems
to successfully achieve the requirement of a unique codec. I still work on the
task to see if do switch between tracks is O.K but would like to share my
current implementation here. I will be very appreciated if anyone has better
idea and could give me a feedback or suggestion.

A given testing DASH URL below contains dual audio tracks with the same type
(audio/mpeg, mpeg version = 4). It is a good point to start the experiment so I
worked on it.
http://marea.tilab.com:8085/content/dash/clear/multiaudio/2audio/c1/all.mpd

command = 
gst-launch-1.0 -v playbin
uri=http://marea.tilab.com:8085/content/dash/clear/multiaudio/2audio/c1/all.mpd
flags=0x56

The attached file is the detail about the patch. 

Welcome to any suggestion!

Thank you~

-- 
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