Yoz Grahame's Unresolvable Discrepancy

I came here to apologise and eat biscuits, and I'm all out of biscuits

HE-AAC (aacPlus) tested, and what Spectral Band Replication does

Posted: July 29th, 2004 Comments Off

I’ve recently been reading a lot about latest wonder-codec being pushed for low-and-medium-sized audio use, HE-AAC.
It’s had some extravagant claims made for it, most notably that it can
achieve “near-CD quality stereo” at 48Kbps – which would make it more
than twice as good as MP3. Read on for some more explanations and a
horrifically-amateurish (but still revealing) test.

HE-AAC is a new version of the popular AAC codec, which is part of MPEG-4 and is most notably used by Apple for its iTunes Music Store. HE-AAC, also known under the commercial branding aacPlus, is already supported by the open-source AAC decoder FAAD2. Winamp includes this support as of yesterday’s 5.04 release, so I’m quite keen to see what this thing can actually do.

How it works

MP3 and AAC are perceptual audio compressors, which means
they do their best to spot and remove audio frequencies that the human
ear won’t notice but which still take up data space. Unfortunately,
when the going gets tough and they’re working in a tight space, they
often chop out high frequencies that the ear can hear. This is why audio aspects such as treble and speech sibilance get very messy when MP3 drops below 96Kbps.

Standard AAC, which Apple uses with added DRM, is already known to
deliver better quality at low bitrates than MP3, but the HE (High
Efficiency) version goes a step better by using a patented technique called Spectral Band Replication.
SBR specialises at dealing with those high-frequency ranges that
perceptual codecs mess up, but the cool thing is that you can bolt it
onto those codecs rather than replacing them: You let the existing
codec deal with the lower frequencies and then add SBR data which adds
the higher frequencies in a much more efficient way than the other
codec would.

For example: suppose you MP3-encode a tune with added SBR. You
generate a 48Kbps MP3 stream, which would normally sound terrible, but
you sprinkle a 16Kbps layer of SBR magic on the top. While doing that,
you ensure that the MP3 codec isn’t wasting its time with the higher
frequencies, so can put more energy (and data) into refining the lower
ones. What you end up with – if the hype is to be believed – is a
64Kbps MP3-SBR hybrid which sounds better than a 96Kbps vanilla MP3
would. Even better, this new hybrid file is still playable on vanilla
MP3 players, because they just throw away the SBR data. (Of course,
it’s not going to sound that great) So you create a new format out of
this hybrid and push it to the industry, showing how it maintains a
kind of two-way backward compatibility while achieving much better
performance for those who support it, and you call it mp3PRO.

Similarly, HE-AAC is normal AAC with added SBR.

But is it actually any good?

When I started reading about HE-AAC I was quite keen to have a listen, as I currently use my Treo 600
for mobile music with a relatively small 256MB SD card as storage, so
I’m obviously quite keen to get the best bang for my bandwidth. It
helps that I’m pretty cloth-eared when it comes to audio quality, but I
can still easily tell the difference at lower bitrates. Currently I use
80Kbps Ogg Vorbis (thanks to the excellent Pocket Tunes). If HE-AAC can give me better quality at lower bitrates, bring it on.

In Roberto Amorim’s thorough analysis,
HE-AAC comes out comfortably on top at 64k using the same Nero codec I
use below. Still, I wanted to try it for myself. (And I, um, hadn’t
found that test at the time. Given my resulting experiences, though,
I’m glad I did it anyway.) As I said, I’m cloth-eared when it comes to
evaluating audio quality, so I didn’t bother with proper scientific
methods, blind testing, and all that malarkey. To be honest, I just
wanted to take one tune from a CD, throw it through some different
codecs at a few different bitrates (48, 64 and 128, with a mixture of
Constant and Variable Bitrate encoding) and see what happened. If you
want the full empirical experience, head for Roberto’s tests. This is
just a quick muck-about, using the following software:

  • Test Track: Deacon Blue‘s
    “Closing Time” (because it’s got a varied range of strings, bass and
    vocals, it’s an old favourite, and stop sniggering, dammit)
  • CD Ripper/Converter: The excellent and free dBPowerAMP Music Converter
  • HE-AAC Codec: Ahead’s Nero Digital Audio Plug-In with dBPowerAMP adaptor
  • MP3 Codec: LAME 3.93
  • Ogg Vorbis Codec: 1.01
  • Player: Winamp 5.04

Summary of test results: Vorbis quite comfortably kicked HE-AAC’s arse.
At both 48K and 64K Vorbis delivered much greater clarity for the
higher frequencies (despite all the SBR hype) and better bass too. In
fact, I found 64K VBR Vorbis so good that I’ll probably use that for
portable music from now on. But they both beat MP3 quite comfortably.
(I must once again stress the horrifically unscientific nature of this
muckabout, and given that I contradict Roberto’s much more qualified
findings, I’m not going to push it too hard. But I’m still somewhat
stumped, given that even with my untrained ears I find the difference
completely obvious.)

If you want to check out the resulting files, they’re here
- please go easy on the server and download rather than stream (unless
you just want to hear the first thirty seconds for comparison, which is
all you really need).


Comments are closed.

Archive

The complete list of posts lives here.

yoz's bookmarks

  • Lee Maguire – WikiLeaks and the future Hydra
    Lee on the similarities between WikiLeaks and comic-book villainous organisations.
  • WebGL Inspector
    Lovely Firebug/Web Inspector-alike for WebGL, usable either as an extension (for the top WebGL-enabled browsers) or embedded JS. Under rapid development.
  • ge.tt
    Gorgeous hack: web-based file sharing service where the link to your file works while it's still uploading. Instant, super simple and free. (via DMM)
  • Async.js (Caolan McMahon)
    One of the many flow-control packages for Javascript, of which at least 3 are called async.js. This one has some really nice tricks, especially auto() which fires off function calls as soon as their dependencies are met.
  • Adequately Good - JavaScript Module Pattern: In-Depth
    Really good explanations of several useful function and module patterns to use when building your own
  • News flash: Deadly terrorism existed before 9/11 - Ask the Pilot - Salon.com
    The quantity of air-travel-targeting terrorist attacks between 1985 and 1989 would be unthinkable today; yet the presented danger and precautions taken are far worse
  • 100 Free High Quality WordPress Themes: 2010 Edition - Smashing Magazine
    Some really nice minimal ones here, along with good theme tools and a bunch of things that I didn't know WordPress could do
  • Lenore Skenazy: 'Stranger Danger' and the Decline of Halloween - WSJ.com
    Despite American parents' increasing paranoia, Halloween may be the safest day of the year for kids. (via schneier)
  • becoming the alien: apartheid, racism and district 9 « a subtle knife
    Superb essay on District 9's relevance. "It confronts us with our complicity with racism, by making us identify with the perspective of the racist, inviting us to feel the revulsion of the xenophobe – and then pulling the carpet from under our feet." (via kevin marks)
  • Music Hack Day: The Uninterrupter - Andrew Shearer's Other Blog
    "For an increasing number of us, the same device we use to play music also handles email and GPS directions." The presented solutions are as brilliant as they are ludicrous. (via extensionfm blog)

yoz on twitter

    follow me on Twitter

    Meta

    • Log in
    • Entries RSS
    • Comments RSS
    • WordPress.org

    Content licensed under the Creative Commons (Attribution - Share Alike) | Theme based on Clean Room by Columbia, MO Web Design