FFmpeg 9.1's new AAC encoder
FFmpeg 9.1 introduces a major new AAC audio encoder that aims to match or surpass Apple’s highly regarded implementation, promising much better quality than FFmpeg’s older AAC encoder and reducing the need for external tools. Commenters highlight that it is currently optimized for 48 kHz audio and geared toward constant bitrate, which limits its appeal for CD-style 44.1 kHz sources and variable bitrate workflows, even as 48 kHz is increasingly standard for video and streaming. The update also reignites comparisons with the Opus codec: many see Opus as technically superior and royalty-free, but AAC remains entrenched in streaming, hardware, and legacy device support.
Link and thread context
- Original HN submission had a bad URL; it was later corrected after moderator intervention.
- Some meta-discussion about how to contact HN mods and occasional email black holes.
Technical changes in FFmpeg’s AAC encoder
- New encoder works around a long‑standing stereo PNS decoding bug in FFmpeg and possibly other decoders.
- Prior behavior combined PNS with temporal and stereo tools in ways that broke noise shaping and stereo imaging; the new approach only uses PNS when both channels are sufficiently noise‑like.
- Encoder tuning is focused on 48 kHz; 44.1 kHz and 96 kHz work but are not primary optimization targets.
Audio quality, testing, and comparisons
- Users report FFmpeg’s old AAC encoder produced audible artifacts and was clearly worse than Apple’s Core Audio and FDK AAC, sometimes even worse than high‑bitrate MP3.
- Benchmarks in the linked forum show the new encoder outperforming Apple’s AAC in some metrics, at least under the tested conditions.
- Some emphasize that such metrics are only proxies; real validation still requires ABX/MUSHRA tests with listeners.
- One commenter notes the encoder is CBR‑centric; others clarify that a quality‑based VBR mode exists but doesn’t hit the absolute metric peak.
Sample rate debates (48 kHz vs 44.1 kHz and higher)
- Strong view: 48 kHz is the present‑day “standard” (video, streaming, OS defaults, Opus design), and resampling is cheap.
- Counterview: most legacy music (CDs) is 44.1 kHz; lack of explicit 44.1‑kHz tuning is a practical concern for serious pipelines.
- Extended subthread on whether higher sample rates (>48 kHz) matter beyond specialized production and scientific use; consensus leans toward little benefit for end‑user listening.
AAC vs Opus and other codecs
- Many see the thread as a showcase for Opus, which is said to beat AAC at low bitrates and remain highly competitive at higher ones, with lower latency.
- Others stress AAC’s entrenched role: RTMP live streaming (YouTube, Twitch), HLS, car stereos, older devices, and widespread hardware support.
- Discussion of Opus downsides: weaker support in some consumer tools, higher CPU than Vorbis in game audio, and concerns about spec text complicating public‑domain implementations.
Adoption, compatibility, and tooling
- Several people currently rely on Apple’s AAC or FDK AAC encoders and hope the new FFmpeg encoder will be “good enough” to drop external dependencies.
- Some highlight that for archival or editing they still prefer lossless (FLAC/ALAC) or Opus, but AAC remains the pragmatic choice where compatibility rules.
Reactions and reservations
- General enthusiasm for a high‑quality native AAC encoder in FFmpeg and appreciation for the detailed write‑up.
- Skepticism centers on: CBR‑first design, 48‑kHz‑centric tuning, and uncertainty about performance at 44.1 kHz and in VBR/TVBR workflows, especially for CD‑derived content.