This is a sample for testing the ffmpeg aac encoder. (Related thread (http://www.hydrogenaud.io/forums/index.php?showtopic=109716) )
It shows notable dropouts and collapse of highs.
The ffmpeg version is N-73818-g9ebe041:
encoder : Lavf56.40.101
Stream #0:0: Audio: aac (libvo_aacenc) (mp4a / 0x6134706D), 44100 Hz, stereo, s16, 128 kb/s
encoder : Lavc56.49.101 libvo_aacenc
For comparison, a 64kbps file encoded with Apple's encoder (using qaac --cbr 64). Even --cbr 32 --he sounds better than ffmpeg's one.
Side note: The full song is this one: https://www.youtube.com/watch?v=UjGZOD9_lTQ (https://www.youtube.com/watch?v=UjGZOD9_lTQ)
I cannot edit the post.
The settings used are "-i input.wav output.m4a" .
This selected the libvo_aacenc at 128kbps.
Selecting the native aac encoder with:
-c:a aac -strict experimental -b:a 128k
produces better results.
Similar to FDK and FAAC, vo-aacenc is just an external library FFmpeg provides a wrapper for.
FDK would have been chosen as a default AAC encoder if it was enabled in your build.
The VisualOn AAC encoder (vo-aacenc) is known to be very poor, but it is claimed (though disputed) to be released under a free license so it is usually included by default. The FDK encoder is not, you have build your own ffmpeg with support, or get a build with support somewhere.
From the ffmpeg AAC FAQ:
Which encoder should I use? What provides the best quality? (https://trac.ffmpeg.org/wiki/Encode/AAC#WhichencodershouldIuseWhatprovidesthebestquality)
For AAC-LC the likely answer is: libfdk_aac > libfaac > Native FFmpeg AAC encoder (aac) > libvo_aacenc.
It would be nice if they also marked the vo-aacenc external library in ffmpeg as '-strict experimental'.