ext/ffmpeg/gstffmpegcodecmap.c: Add extra detail to the Real format caps. With this info, filesrc ! ffdemux_rm ! ffde...

Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid):
Add extra detail to the Real format caps. With this info,
filesrc ! ffdemux_rm ! ffdec_cook ! ... works, but using rmdemux
doesn't. The order of the data the demuxers output appears to be
different.
This commit is contained in:
Jan Schmidt 2006-02-19 22:40:16 +00:00
parent 1f260a84da
commit 0a9c8cced5
2 changed files with 25 additions and 1 deletions

View file

@ -1,3 +1,12 @@
2006-02-19 Jan Schmidt <thaytan@mad.scientist.com>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid):
Add extra detail to the Real format caps. With this info,
filesrc ! ffdemux_rm ! ffdec_cook ! ... works, but using rmdemux
doesn't. The order of the data the demuxers output appears to be
different.
2006-02-19 Jan Schmidt <thaytan@mad.scientist.com>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),

View file

@ -755,6 +755,11 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
/* FIXME: properties? */
caps = GST_FF_AUD_CAPS_NEW ("audio/x-pn-realaudio",
"raversion", G_TYPE_INT, version, NULL);
if (context) {
gst_caps_set_simple (caps,
"leaf_size", G_TYPE_INT, context->block_align,
"bitrate", G_TYPE_INT, context->bit_rate, NULL);
}
}
break;
@ -1410,7 +1415,17 @@ gst_ffmpeg_caps_with_codecid (enum CodecID codec_id,
context->sub_id = fourcc;
}
break;
case CODEC_ID_COOK:
case CODEC_ID_RA_288:
case CODEC_ID_RA_144:
{
gint leaf_size;
gint bitrate;
if (gst_structure_get_int (str, "leaf_size", &leaf_size))
context->block_align = leaf_size;
if (gst_structure_get_int (str, "bitrate", &bitrate))
context->bit_rate = bitrate;
}
case CODEC_ID_ALAC:
gst_structure_get_int (str, "samplesize", &context->bits_per_sample);
break;