gst/asfdemux/gstasfdemux.c: - fix a mem leak and always propagate tags

Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c:
- fix a mem leak and always propagate tags
- add WMV3 to known video codecs (but no decoder yet)
- replace "surplus data" at end of audio header for what
it is : codec specific data
- fix a typo
This commit is contained in:
Stéphane Loeuillet 2004-05-16 22:18:11 +00:00
parent fc37d26f33
commit f6ec1783ad
2 changed files with 14 additions and 9 deletions

View file

@ -1,3 +1,12 @@
2004-05-16 Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
* gst/asfdemux/gstasfdemux.c:
- fix a mem leak and always propagate tags
- add WMV3 to known video codecs (but no decoder yet)
- replace "surplus data" at end of audio header for what
it is : codec specific data
- fix a typo
2004-05-16 Arwed v. Merkatz <v.merkatz@gmx.net>
reviewed by: Ronald Bultje <rbultje@ronald.bitfreak.net>

View file

@ -423,13 +423,8 @@ _read_obj_data_packet (GstASFDemux * asf_demux, asf_obj_data_packet * object)
static gboolean
_read_stream_audio (GstASFDemux * asf_demux, asf_stream_audio * audio)
{
return (_read_uint16 (asf_demux, &audio->codec_tag) &&
_read_uint16 (asf_demux, &audio->channels) &&
_read_uint32 (asf_demux, &audio->sample_rate) &&
_read_uint32 (asf_demux, &audio->byte_rate) &&
_read_uint16 (asf_demux, &audio->block_align) &&
_read_uint16 (asf_demux, &audio->word_size) &&
_read_uint16 (asf_demux, &audio->size));
/* WAVEFORMATEX Structure */
return (_read_uint16 (asf_demux, &audio->codec_tag) && _read_uint16 (asf_demux, &audio->channels) && _read_uint32 (asf_demux, &audio->sample_rate) && _read_uint32 (asf_demux, &audio->byte_rate) && _read_uint16 (asf_demux, &audio->block_align) && _read_uint16 (asf_demux, &audio->word_size) && _read_uint16 (asf_demux, &audio->size)); /* Codec specific data size */
}
static gboolean
@ -1570,12 +1565,13 @@ gst_asf_demux_add_audio_stream (GstASFDemux * asf_demux,
gst_pad_use_explicit_caps (src_pad);
/* Swallow up any left over data and set up the standard propertis from the header info */
/* Swallow up any left over data and set up the standard properties from the header info */
if (size_left) {
guint8 *extradata;
GST_WARNING_OBJECT (asf_demux,
"asfdemux: Audio header contains %d bytes of surplus data", size_left);
"asfdemux: Audio header contains %d bytes of codec specific data",
size_left);
gst_bytestream_peek_bytes (asf_demux->bs, &extradata, size_left);
caps = gst_asf_demux_audio_caps (audio->codec_tag, audio, extradata,
&codec_name);