matroskadec: don't overwrite extradata already read by ff_get_wav_header()
authorAurelien Jacobs <aurel@gnuage.org>
Thu, 1 Oct 2009 21:14:46 +0000 (21:14 +0000)
committerAurelien Jacobs <aurel@gnuage.org>
Thu, 1 Oct 2009 21:14:46 +0000 (21:14 +0000)
Originally committed as revision 20132 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/matroskadec.c

index 1dc2d22..bf69fc2 100644 (file)
@@ -1351,6 +1351,7 @@ static int matroska_read_header(AVFormatContext *s, AVFormatParameters *ap)
             av_reduce(&st->codec->time_base.num, &st->codec->time_base.den,
                       track->default_duration, 1000000000, 30000);
 
+        if (!st->codec->extradata) {
         if(extradata){
             st->codec->extradata = extradata;
             st->codec->extradata_size = extradata_size;
@@ -1364,6 +1365,7 @@ static int matroska_read_header(AVFormatContext *s, AVFormatParameters *ap)
                    track->codec_priv.data + extradata_offset,
                    track->codec_priv.size);
         }
+        }
 
         if (track->type == MATROSKA_TRACK_TYPE_VIDEO) {
             st->codec->codec_type = CODEC_TYPE_VIDEO;