qtdemux: read saio aux_info_type as a FOURCC
authorPhilippe Normand <philn@igalia.com>
Wed, 21 Oct 2015 14:21:45 +0000 (16:21 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Wed, 24 Feb 2016 08:54:23 +0000 (10:54 +0200)
https://bugzilla.gnome.org/show_bug.cgi?id=756897

gst/isomp4/qtdemux.c

index ea6c488..20618a6 100644 (file)
@@ -3165,6 +3165,7 @@ qtdemux_parse_saio (GstQTDemux * qtdemux, QtDemuxStream * stream,
   guint32 entry_count;
   guint32 off_32;
   guint64 off_64;
+  const guint8 *aux_info_type_data = NULL;
 
   g_return_val_if_fail (qtdemux != NULL, FALSE);
   g_return_val_if_fail (stream != NULL, FALSE);
@@ -3178,8 +3179,11 @@ qtdemux_parse_saio (GstQTDemux * qtdemux, QtDemuxStream * stream,
     return FALSE;
 
   if (flags & 0x1) {
-    if (!gst_byte_reader_get_uint32_be (br, &aux_info_type))
+
+    if (!gst_byte_reader_get_data (br, 4, &aux_info_type_data))
       return FALSE;
+    aux_info_type = QT_FOURCC (aux_info_type_data);
+
     if (!gst_byte_reader_get_uint32_be (br, &aux_info_type_parameter))
       return FALSE;
   } else if (stream->protected) {