diff options
-rw-r--r-- | etc/codecs.conf | 7 | ||||
-rw-r--r-- | libmpdemux/demux_mov.c | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/etc/codecs.conf b/etc/codecs.conf index 2a1993b892..6031d20697 100644 --- a/etc/codecs.conf +++ b/etc/codecs.conf @@ -2252,6 +2252,13 @@ audiocodec ffsonic driver ffmpeg dll "sonic" +audiocodec ffmp3on4 + info "FFmpeg Multi-channel MPEG layer-3 on MP4 audio decoder" + status working + format 0x1d61346d ; 'm','4','a',29 internal MPlayer fourcc + driver ffmpeg + dll "mp3on4" + audiocodec ffmp3 info "FFmpeg MPEG layer-3 audio decoder" comment "integer only" diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c index 9ac2994596..13a6a81b60 100644 --- a/libmpdemux/demux_mov.c +++ b/libmpdemux/demux_mov.c @@ -973,6 +973,8 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak // dump away the codec specific configuration for the AAC decoder if(esds.decoderConfigLen){ + if( (esds.decoderConfig[0]>>3) == 29 ) + sh->format = 0x1d61346d; // request multi-channel mp3 decoder sh->codecdata_len = esds.decoderConfigLen; sh->codecdata = (unsigned char *)malloc(sh->codecdata_len); memcpy(sh->codecdata, esds.decoderConfig, sh->codecdata_len); |