[Bug 755098] New: Smooth Streaming's media type does not match

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Sep 16 01:16:07 PDT 2015


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

            Bug ID: 755098
           Summary: Smooth Streaming's media type does not match
    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: ---

In gsturidecodebin.c, adaptive_media is judaged by following type:


/* media types that use adaptive streaming */
static const gchar *adaptive_media[] = {
  "application/x-hls", "application/x-smoothstreaming-manifest",
  "application/dash+xml", NULL
};

But in gsttypefindfunctions.c
Smooth Streaming is as below:

static GstStaticCaps mss_manifest_caps =
GST_STATIC_CAPS ("application/vnd.ms-sstr+xml");

If we compare the flow betweeen DASH & MSS, from the graph dump we could see 
DASH does NOT have Queue2 but MMS has.
It is because the following logic:

  if (decoder->is_adaptive) {
    src_elem = typefind;  ==> DASH
  } else {
    if (do_download) {
      elem_name = "downloadbuffer";
    } else {
      elem_name = "queue2";  ==> MSS
    }
  ... 

However, MSS indeed is a kind of "adaptive streaming" source.

It is because the media type mis-match.

We could fix it either by:

/* media types that use adaptive streaming */
static const gchar *adaptive_media[] = {
  "application/x-hls", /*"application/x-smoothstreaming-manifest",*/
  "application/dash+xml", "application/vnd.ms-sstr+xml", NULL
}; 
or replace "application/vnd.ms-sstr+xml" by
"application/x-smoothstreaming-manifest".

It potentially mis-judge MSS as a "NON-adaptive-streaming" type.

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