From: Baptiste Coudurier Date: Sun, 26 Mar 2006 16:54:53 +0000 (+0000) Subject: add mp3on4 detection, fix red.mp4 X-Git-Tag: v0.5~12916 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e31bd3e309d766dc240c4f91331599ffcde1c867;p=platform%2Fupstream%2Flibav.git add mp3on4 detection, fix red.mp4 Originally committed as revision 5222 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/libavformat/mov.c b/libavformat/mov.c index 5eb258e..0e6e8df 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -600,6 +600,10 @@ static int mov_read_esds(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) if (st->codec->extradata) { get_buffer(pb, st->codec->extradata, len); st->codec->extradata_size = len; + /* from mplayer */ + if ((*(uint8_t *)st->codec->extradata >> 3) == 29) { + st->codec->codec_id = CODEC_ID_MP3ON4; + } } } } @@ -1134,11 +1138,17 @@ static int mov_read_stsd(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) if(st->codec->codec_type==CODEC_TYPE_AUDIO && st->codec->sample_rate==0 && sc->time_scale>1) { st->codec->sample_rate= sc->time_scale; } + + switch (st->codec->codec_id) { #ifdef CONFIG_FAAD - if(st->codec->codec_id ==CODEC_ID_AAC) { - st->codec->sample_rate= 0; /* let faad init parameters properly */ - } + case CODEC_ID_AAC: #endif + case CODEC_ID_MP3ON4: + st->codec->sample_rate= 0; /* let decoder init parameters properly */ + break; + default: + break; + } return 0; }