x264 profiles (aac): chirps / poor audio quailty

Maybe this issue holds for a lot of rendering profiles, but at least x264 single pass with
AAC audio / 128kBit suffers from very poor audio quality on my machine, which is
32-Bit Debian unstable, latest 0.7.6 packages.

No matter which player used, annoying chirps similar to poor mp3 encoding are audible.
(like in the old days with lots of buggy mp3 encoders)

Streaming out uncomressed PCM audio (unacceptable slow on my machine. why ?) and coding/muxing
(f)AAC audio with identical bitrate in avidemux results in crystal clear sound.

Has anyone experienced similar audio quality issues (MP4/x264/AAC), too ?

Toby

Forums:

Please indicate if your libavcodec is built with libfaac enabled and not the native AAC encoder.
In your external encoding did you use ffmpeg utility or faac?

Hi Dan,

since I'm talking about the default Debian unstable packages built by Christian Marillat,
build svn20091210, I'm not 100% sure about the configuration. (Is there a way to get info about the
configure options from the binaries ?)
But looking at the ldd output of libavcodec, it lists a direct dependency on libfaac. Therefore, I'd guess avcodec is compiled with external libfaac.

Regarding avidemux, which was used for the alternate, correct AAc encoding+muxing (single run), I'm not sure about it's internal handling of AAC. There's an /usr/lib/ADM_plugins/audioEncoders/libADM_ae_faac.so
plugin, which seems to use libfaac directly and not via avcodec (according to the ldd deps).

Anyway, kdenlive/mlt is doing faac encoding via avcodec, right ?
And avidemux seems to use libfaac directly.
I'm going to verify correct ffmpeg/avcodec encoding of AAC via ffmpeg. We'll see whos's to blame ...

Merry Christmas and a Happy New Year !

Toby

In the Kdenlive config wizard, on the audio codecs section, see if it lists aac as well as libfaac. Then, look at the render profile to see if it says acodec=aac or acodec=libfaac. In 0.7.5, the profiles read acodec=libfaac, but internally Kdenlive switched to aac if it was available but not libfaac. In 0.7.6+, just the opposite, profiles read acodec=aac, but Kdenlive switches it to libfaac if aac is not available and libfaac is.

Dan,

the config wizard lists aac and libfaac. This means for 0.7.6, that a profile configured
with "acodec=aac" will be using libfaac, right ?

Using faac, the command line utility of libfaac, with identical settings (128k,...)
for encoding gives high unsuspicious output. No chirps.

Anything else I can do to debug ?

Toby

Dan,

I've just tried to switch the AAC encoder, original acodec=aac changed to acodec=libfaac, and it worked.
The mp4 audio stream doesn't exhibit any chirps or similar.

My Kdenlive version ( on Debian / unstable) is 0.7.6+svn4144. What codec was finally used in the working setup ? libfaac ? Does this mean there's an issue with aac ? Where is this codec located ? Are we talking about aacplusenc, or some code bundled with mlt ? Could you please explain ?

Thank you !
Toby

It appears that the native FFmpeg AAC encoder gave you the bad results. Perhaps it has improved since your version. When you changed the acodec=libfaac, Kdenlive respected your changed and uses FAAC.