summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--gst/qtdemux/qtdemux.c8
2 files changed, 13 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index cba83828a..8fbc7b8f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2005-08-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+ * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak),
+ (qtdemux_video_caps):
+ Handle quicktime-RLE.
+
2005-08-13 David Schleef <ds@schleef.org>
* ext/polyp/polypsink.c: (stream_state_callback),
diff --git a/gst/qtdemux/qtdemux.c b/gst/qtdemux/qtdemux.c
index be75424f0..94e66c8f3 100644
--- a/gst/qtdemux/qtdemux.c
+++ b/gst/qtdemux/qtdemux.c
@@ -2143,6 +2143,11 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
+ } else if (QTDEMUX_FOURCC_GET (stsd->data + 16 + 4) ==
+ GST_MAKE_FOURCC ('r', 'l', 'e', ' ')) {
+ gst_caps_set_simple (stream->caps,
+ "depth", G_TYPE_INT, QTDEMUX_GUINT16_GET (stsd->data + offset + 82),
+ NULL);
}
}
@@ -2799,7 +2804,8 @@ qtdemux_video_caps (GstQTDemux * qtdemux, guint32 fourcc,
_codec ("H.264 / AVC");
return gst_caps_from_string ("video/x-h264");
case GST_MAKE_FOURCC ('r', 'l', 'e', ' '):
- /* Run-length encoding */
+ _codec ("Run-time length encoding");
+ return gst_caps_from_string ("video/x-rle, layout=(string)quicktime");
case GST_MAKE_FOURCC ('s', 'm', 'c', ' '):
case GST_MAKE_FOURCC ('k', 'p', 'c', 'd'):
default: