diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | gst-libs/gst/riff/riff-media.c | 4 | ||||
-rw-r--r-- | gst-libs/gst/riff/riff-read.c | 3 |
3 files changed, 16 insertions, 0 deletions
@@ -1,3 +1,12 @@ +2005-01-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net> + + * gst-libs/gst/riff/riff-media.c: + (gst_riff_create_video_caps_with_data): + Add extradata to huffyuv (fixes #165013). + * gst-libs/gst/riff/riff-read.c: + (gst_riff_read_strf_vids_with_data): + Fix extradata extraction if it is in the chunk size. + 2005-01-25 Edward Hervey <bilboed@bilboed.com> Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net> diff --git a/gst-libs/gst/riff/riff-media.c b/gst-libs/gst/riff/riff-media.c index 4a1807d0..b93ff869 100644 --- a/gst-libs/gst/riff/riff-media.c +++ b/gst-libs/gst/riff/riff-media.c @@ -94,6 +94,10 @@ gst_riff_create_video_caps_with_data (guint32 codec_fcc, case GST_MAKE_FOURCC ('H', 'F', 'Y', 'U'): caps = gst_caps_new_simple ("video/x-huffyuv", NULL); + if (strf) { + gst_caps_set_simple (caps, "bpp", + G_TYPE_INT, (int) strf->bit_cnt, NULL); + } if (codec_name) *codec_name = g_strdup ("Huffman Lossless Codec"); break; diff --git a/gst-libs/gst/riff/riff-read.c b/gst-libs/gst/riff/riff-read.c index fbbbae26..21cdbbca 100644 --- a/gst-libs/gst/riff/riff-read.c +++ b/gst-libs/gst/riff/riff-read.c @@ -600,6 +600,9 @@ gst_riff_read_strf_vids_with_data (GstRiffRead * riff, if (len > 0) { *extradata = gst_buffer_create_sub (buf, strf->size, len); } + } else if (strf->size > sizeof (gst_riff_strf_vids)) { + *extradata = gst_buffer_create_sub (buf, + sizeof (gst_riff_strf_vids), strf->size - sizeof (gst_riff_strf_vids)); } /* debug */ |