OSDN Git Service

av_find_stream_info(): Add a workaround for backwards compatible HE-AAC signaling.
authorAlex Converse <alex.converse@gmail.com>
Mon, 8 Mar 2010 00:00:50 +0000 (00:00 +0000)
committerAlex Converse <alex.converse@gmail.com>
Mon, 8 Mar 2010 00:00:50 +0000 (00:00 +0000)
The sample rate, frame size, and channel count from the container are
not reliable when backwards compatible signaling is used.

Originally committed as revision 22301 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/avformat.h
libavformat/utils.c

index aa72797..4d684da 100644 (file)
@@ -22,7 +22,7 @@
 #define AVFORMAT_AVFORMAT_H
 
 #define LIBAVFORMAT_VERSION_MAJOR 52
-#define LIBAVFORMAT_VERSION_MINOR 54
+#define LIBAVFORMAT_VERSION_MINOR 55
 #define LIBAVFORMAT_VERSION_MICRO  0
 
 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
index d431d42..325d7c0 100644 (file)
@@ -2116,6 +2116,11 @@ int av_find_stream_info(AVFormatContext *ic)
 
     for(i=0;i<ic->nb_streams;i++) {
         st = ic->streams[i];
+        if (st->codec->codec_id == CODEC_ID_AAC) {
+            st->codec->sample_rate = 0;
+            st->codec->frame_size = 0;
+            st->codec->channels = 0;
+        }
         if(st->codec->codec_type == CODEC_TYPE_VIDEO){
 /*            if(!st->time_base.num)
                 st->time_base= */