From f36f2fc3b6d85f945a9612aaba6e49d983f76878 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Sun, 14 Aug 2005 16:43:37 +0000 Subject: gst/qtdemux/qtdemux.c: Handle quicktime-RLE. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak), (qtdemux_video_caps): Handle quicktime-RLE. --- ChangeLog | 6 ++++++ gst/qtdemux/qtdemux.c | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index cba83828..8fbc7b8f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2005-08-14 Ronald S. Bultje + + * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak), + (qtdemux_video_caps): + Handle quicktime-RLE. + 2005-08-13 David Schleef * ext/polyp/polypsink.c: (stream_state_callback), diff --git a/gst/qtdemux/qtdemux.c b/gst/qtdemux/qtdemux.c index be75424f..94e66c8f 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: -- cgit v1.2.1