Google Chrome is not able to playback aac_he_v2 streams remuxed from mpegts to 
mp4. To reproduce the problem:


ffmpeg -f lavfi -i 'aevalsrc=sin(2*PI*t*440)[out0]' -t 10 -movflags faststart 
-c:a libfdk_aac -ac 2 -ar 48000 -profile:a aac_he_v2 -f mpegts tmp.ts

ffmpeg -i tmp.ts -c copy -bsf:a aac_adtstoasc test.mp4


However if the audio is encoded directly to mp4 it works fine:


ffmpeg -f lavfi -i 'aevalsrc=sin(2*PI*t*440)[out0]' -t 10 -movflags faststart 
-c:a libfdk_aac -ac 2 -ar 48000 -profile:a aac_he_v2 -f mp4 test.mp4


It is only when using aac_he_v2 profile that Chrome refuses to playback the 
file. Using the aac_he profile works fine:


ffmpeg -f lavfi -i 'aevalsrc=sin(2*PI*t*440)[out0]' -t 10 -movflags faststart 
-c:a libfdk_aac -ac 2 -ar 48000 -profile:a aac_he -f mpegts tmp.ts

ffmpeg -i tmp.ts -c copy -bsf:a aac_adtstoasc test.mp4


There seems to be something wrong with the aac_adtstoasc bitstream filter that 
does not account for aac_he_v2. It might be a bug in Chrome as well since 
ffplay is able to playback all the variations without any problem, but please 
note that Chrome IS able to playback the file when it is encoded directly.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to