[gstreamer-bugs] [Bug 317872] New: Cannot demux ASF/WMV files with auxillary (non-audio/video) streams

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Mon Oct 3 14:41:20 PDT 2005


Do not reply to this via email (we are currently unable to handle email
responses and they get discarded).  You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=317872
 GStreamer | gst-plugins | Ver: 0.8.x

           Summary: Cannot demux ASF/WMV files with auxillary (non-
                    audio/video) streams
           Product: GStreamer
           Version: 0.8.x
          Platform: Other
        OS/Version: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: gstreamer at demonseed.net
         QAContact: gstreamer-bugs at lists.sourceforge.net
                CC: all-bugs at bugzilla.gnome.org


Please describe the problem:
The ASF file format makes provisions for streams that do not contain audio or
video.  These contain additional content such as text or scripting commands
(e.g. open a url in web browser).

When encountering such a stream GStreamer regards it as a fatal error.  Instead,
it should print a warning and continue on to the next stream.

Steps to reproduce:
Try playing this video:
  http://www.demonseed.net/gstasfdemux-jsnfix-sample.wmv




Actual results:
Without the patch the video will not play and a fatal error will be reported.

Expected results:
The video will play correctly.

Does this happen every time?
yes.

Other information:
Patch against gst-plugins-0.8.11/gst/asfdemux/gstasfdemux.c

--- gstasfdemux.c 2005-06-14 12:38:01.000000000 -0400
+++ gstasfdemux-FIXED.c 2005-09-28 18:39:12.000000000 -0400
@@ -1189,9 +1189,8 @@
         return FALSE;
       break;
     default:
-      GST_ELEMENT_ERROR (asf_demux, STREAM, WRONG_TYPE, (NULL),
-          ("unknown asf stream (id %08x)", (guint) stream_id));
-      return FALSE;
+      GST_WARNING ("unknown asf stream (id %08x)", (guint) stream_id);
+      gst_bytestream_flush (asf_demux->bs, *obj_size - 24 - sizeof(object));
   }

   return TRUE;
@@ -1252,7 +1251,8 @@

   switch (obj_id) {
     case ASF_OBJ_STREAM:
-      return gst_asf_demux_process_stream (asf_demux, &obj_size);
+      gst_asf_demux_process_stream (asf_demux, &obj_size);
+      return TRUE;
     case ASF_OBJ_DATA:
       gst_asf_demux_process_data (asf_demux, &obj_size);
       /* This is the last object */

------- You are receiving this mail because: -------
You are the assignee for the bug.
You are the QA contact for the bug.




More information about the Gstreamer-bugs mailing list