mxfdemux: post error message when erroring out on unsupported essence wrapping
authorTim-Philipp Müller <tim@centricular.com>
Tue, 13 May 2014 23:23:35 +0000 (00:23 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Tue, 13 May 2014 23:25:09 +0000 (00:25 +0100)
gst/mxf/mxfdemux.c

index c2ee741..eb7fd4a 100644 (file)
@@ -861,12 +861,19 @@ gst_mxf_demux_update_essence_tracks (GstMXFDemux * demux)
         caps = NULL;
       }
 
-
-      if (etrack->handler
-          && etrack->handler->get_track_wrapping (track) !=
-          MXF_ESSENCE_WRAPPING_FRAME_WRAPPING) {
-        GST_ERROR_OBJECT (demux, "Only frame wrapping currently supported");
-        return GST_FLOW_ERROR;
+      if (etrack->handler != NULL) {
+        MXFEssenceWrapping track_wrapping;
+
+        track_wrapping = etrack->handler->get_track_wrapping (track);
+        if (track_wrapping == MXF_ESSENCE_WRAPPING_CLIP_WRAPPING) {
+          GST_ELEMENT_ERROR (demux, STREAM, NOT_IMPLEMENTED, (NULL),
+              ("Clip essence wrapping is not implemented yet."));
+          return GST_FLOW_ERROR;
+        } else if (track_wrapping == MXF_ESSENCE_WRAPPING_CUSTOM_WRAPPING) {
+          GST_ELEMENT_ERROR (demux, STREAM, NOT_IMPLEMENTED, (NULL),
+              ("Custom essence wrappings are not supported."));
+          return GST_FLOW_ERROR;
+        }
       }
 
       etrack->source_package = package;