[FFmpeg-trac] #2686(avcodec:open): Native AAC encoder collapses at high bitrates on some samples
FFmpeg
trac at avcodec.org
Wed Sep 25 20:21:59 CEST 2013
#2686: Native AAC encoder collapses at high bitrates on some samples
-------------------------------------+-------------------------------------
Reporter: Kamedo2 | Owner:
Type: defect | Status: open
Priority: normal | Component: avcodec
Version: git-master | Resolution:
Keywords: aac | Blocked By:
regression | Reproduced by developer: 1
Blocking: |
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Comment (by Kamedo2):
I'm preparing for the next listening test.
{{{
# Native aac patch v4 abr
ffmpeg55212 -y -i in.wav -c:a aac -strict experimental -b:a 128k out.mp4
ffmpeg56470 -y -i out.mp4 -c:a pcm_s32le out.32bit.wav
# Native aac patch v5 abr
ffmpeg56470 -y -i in.wav -c:a aac -strict experimental -b:a 128k out.mp4
ffmpeg56470 -y -i out.mp4 -c:a pcm_s32le out.32bit.wav
# Native aac patch v5 vbr
ffmpeg56470 -y -i in.wav -c:a aac -strict experimental -q:a 0.3 out.mp4
ffmpeg56470 -y -i out.mp4 -c:a pcm_s32le out.32bit.wav
# FDK-AAC vbr 3
ffmpeg56470 -y -i in.wav -c:a libfdk_aac -vbr 3 out.mp4
ffmpeg56470 -y -i out.mp4 -c:a pcm_s32le out.32bit.wav
# LAME vbr -V5
ffmpeg55010 -y -i in.wav -c:a libmp3lame -q:a 5 out.mp3
ffmpeg56470 -y -i out.mp3 -c:a pcm_s32le out.32bit.wav
# FFmpeg ac3 cbr
ffmpeg56470 -y -i in.wav -c:a ac3 -b:a 128k out.ac3
ffmpeg56470 -y -i out.ac3 -c:a pcm_s32le out.32bit.wav
}}}
I thought of using float 32bit as the intermediate format, but FFmpeg's
float pcm_f32le had the gain half of what it should be, and even after
adjusting gain, much error(average of |lossy-original|) existed, unlike
faad or madplay.
This is the statistics of 25 samples I'm going to use in the test.
||= =||=v4 abr=||=v5 abr=||=v5 vbr=||=FDK vbr=||=lame
V5=||=ac3=||
||=25 Average=||129||129||151||122||135||128||
||=25 Std.Dev=||5||5||39||20||18||0||
||=25 Min=||107||108||89||86||87||128||
||=25 Max=||131||133||257||173||172||128||
||=Max sample||25.Reunion Blues||26.French||26.French||10.||14.||29.||
||=Std.Average=||128||128||127||127||130||128||
Unit is kbps. Std.Average is the average bitrate of my large collection of
CDs encoded.
I've found that v5 vbr boosts bitrate in speech samples. The speech sample
26.French was encoded in 257kbps, more than twice bitrate than the average
bitrate of large set of diverse CD sounds. Another speech sample reached
216kbps. It's a problem, hopefully fixed in the next v6 patch.
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2686#comment:176>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list