CHAPTER 18
Windows Media Audio

WMA File Format

Windows Media Audio can refer to both a file format and a family of codecs. This chapter is mainly about the codecs. The .wma file format is just good old ASF, as described in Chapter 17; a WMA is just a WMV without video.

Rate Control in Windows Media Audio Codecs

One feature of the Windows Media Audio family rarely seen in other codecs is support for 2-pass encoding; most other audio codecs are 1-pass CBR or VBR. While 2-pass CBR rarely makes for a practical improvement over 1-pass CBR, 2-pass VBR can be a big improvement, particularly for soundtracks where audio complexity varies a lot. Progressive download content should use the VBR modes. However, VBR modes aren’t always available at every bitrate CBR is. Even then, VBR can outperform a CBR at a higher bitrate—a VBR file with an average of 64 Kbps and a peak of 96 Kbps can sound better than a CBR at a fixed 80 Kbps data rate.

Similarly to MP3 and AAC, 1-pass quality-limited VBR is a good choice for personal music libraries where the size of any given file isn’t as important as the average size and guaranteed quality.

Windows Media Audio 9.2 “Standard”

Windows Media Audio is a venerable codec format, compatible back to WMP from the mid-1990s (predating .wma files!), and can be played back on a very wide variety of hardware and software players. In this book, I refer to it as WMA Standard to distinguish it from the Voice, Pro, and Lossless versions of WMA. WMA is from the post-MP3 generation of audio codecs, and is generally capable of producing better quality than MP3 at 128 Kbps and below, although it’s not competitive with the low bitrate performance of frequency synthesis codecs like High Efficiency AAC and WMA 10 Pro.

While the bitstream of WMA was locked down years ago, the encoder has seen many generations of tweaking to improve quality and performance. The current version is WMA 9.2 and includes minor but welcome performance and quality enhancements compared to previous versions. It also added some new bitrate modes, like 48 Kbps 44.1 kHz mono.

WMA is the safe codec choice for any Windows Media file. It’s flexible, offers high quality with sufficient bitrate, and is playable by anything that can play a .wma file. However, it’s dramatically outperformed by WMA 10 Pro at 96 Kbps and below (see Table 18.1).

Table 18.1 Windows Media Audio 9.2 Bitrate-Constrained Modes.

ArgumentBitrateSampling rateChannelModes
320_44_2320442CBR
256_44_2256442CBR
192_48_2192482CBR, VBR
192_44_2192442CBR, VBR
191_48_2192482Low Delay
160_48_2160482CBR
160_44_2160442CBR, VBR
128_48_2128482CBR, VBR
128_44_2128442CBR, VBR
127_48_2128482Low Delay
96_48_296482CBR, VBR
96_44_296442CBR, VBR
95_48_296482Low Delay
80_44_280442CBR
64_48_264482CBR, VBR
64_44_264442CBR, VBR
63_48_264482Low Delay
48_44_248442CBR
48_32_248322CBR
48_44_148441CBR, VBR
40_32_240322CBR
32_44_232442CBR
32_32_232322CBR
32_22_232222CBR
32_44_132441CBR
24_32_224322CBR
22_22_222222CBR
20_22_220222CBR
20_16_220162CBR
20_44_120441CBR
20_32_120321CBR
20_22_120221CBR
16_16_216162CBR
16_22_116221CBR
16_16_116161CBR
12_8_21282CBR
12_16_112161CBR
10_16_110161CBR
10_11_110111CBR
8_11_18111CBR
8_8_1881CBR
6_8_1681CBR
5_8_1581CBR
0_8_1081CBR

Windows Media Audio 9 Voice

WMA 9 Voice is designed for low-bitrate applications below 32 Kbps, in which WMA and WMA Pro don’t perform as well. Despite its name, it does a credible job with music and other nonvoice content. You’re not going to dance to WMA Voice at low bitrates, but it can intelligibly compress music interludes and sound effects in otherwise voice-centric content (see Table 18.2).

Table 18.2 Windows Media Audio 9.2 Quality VBR modes.

ArgumentTypical bitrateSampling rateChannel
Q98_44_2300–480442
Q98_48_2300–480482
Q90_44_2200–310442
Q90_48_2200–310482
Q75_44_2110–180442
Q50_44_270–115442
Q25_44_285–145442
Q10_44_260–95442
 45–75  

WMA Voice 9 is supported in WMP 9 and higher. Note that Voice is not currently supported in all non-Windows players. Most notably, it isn’t supported in Silverlight through at least Silverlight 3. WMA 10 Pro 32 Kbps is a good alternative for Silverlight + WMP11 + compatibility. For Silverlight + WM9 + compatibility, the not-that-great low bitrate WMA 9.2 modes are the only option; 48 Kbps mono VBR is about the lowest that voice content sounds great in to my ears.

Voice is a 1-pass CBR only codec, unlike WMA Standard and Pro. WMA Voice replaced the now-deprecated ACELP.net audio codec.

Windows Media Audio 10 Pro (LBR)

While the new video codec features introduced with Format SDK 11 were exciting, the biggest technical leap was Windows Media Audio 10 Professional (WMA Pro 10), which offers up to twice the compression efficiency of WMA 9. The original WMA Pro 9 was launched in 2003 as part of Windows Media 9 Series, and offers great audio quality and efficiency at 128 Kbps and up. WMA Pro 9 supports up to 7.1 channels, up to 24-bit sampling, and frequencies up to 96 kHz. But the high minimum bitrate (128 Kbps) took 9 Pro out of the running for lower-bitrate web video. Thus, most streaming video projects kept using good old WMA 9.

WMP 11 added a new frequency interpolation mode to WMA Pro, and incremented the name to WMA 10 Pro. With the new mode, a “baseband” version of the audio is encoded as normal WMA Pro 9 at half the selected frequency, with additional data that tells how the higher frequencies are synthesized. This gives a stream that’s backward-compatible with older decoders, but provides enhanced quality with a newer decoder.

WMA Pro 10 provides up to two times the efficiency of WMA 9.2, so at 64 Kbps it can provide similar quality to WMA 9.2 at up to 128 Kbps (see Table 18.3). However, if only the old decoder is used, you only get the lower-quality baseband audio, which suffers from the lower maximum sampling rate. It’ll be intelligible, but not an entertainment-grade experience.

Table 18.3 Windows Media Audio Voice 9 Modes.

ArgumentBitrateSampling rateChannel
20_22_120221
16_16_116161
12_16_112161
10_11_110111
8_8_1881
5_8_1581
4_8_1481

WMA 10 Pro is appropriate to use once the majority of your customers are using WMP 11+, Silverlight 2+, Windows Mobile, Flip4Mac or another player with full support. Because it’s an enhancement of the older codec, WMA 10 Pro won’t trigger a codec download—users get the new codec only if they install a player that supports it. And if you’re using WMA 10 Pro at 128 Kbps or above, including all the multichannel modes, you’re really still making a WMA 9 Pro bitstream, and will retain full compatibility and fidelity with WMP 9 and other decoders without LBR.

So even if targeting WMP 9, use WMA 10 Pro if you can dedicate at least 128 Kbps to audio, as it will outperform WMA 9.2 at 128 Kbps and up.

The superior efficiency of WMA 10 Pro has made it the default codec for WMV used with Silverlight, and for VC-1 Smooth Streaming files.

That 64 Kbps Comparison Test

There’s an oft-cited listening test comparing advanced audio codecs at 64 Kbps run by audio compression enthusiast and expert Sebastian Mares a few years back. It found that WMA 10 Pro was good, but was outperformed by HE AAC. However, the test compared 1-pass CBR encoded WMA 10 Pro to fixed quantization encodes of the other codecs, allowing up to a 10-percent bitrate variance! Needless to say, bitfor-bit VBR beats CBR significantly, and WMA 10 Pro would have been much more competitive had it been tested in Quality VBR like the others. What’s more frustrating for me is that WMA 10 Pro is unusual in that it has a real 2-pass VBR mode—it was the only codec at the time that could give a bitrate-accurate VBR encode.

I only mention it as the test is referenced so often; I mean no disrespect to Mr. Mares, who has done a great service in his well-designed double-blind tests over the years. But not using the same rate control modes keeps the WMA 10 Pro results from being valid.

•  The Hydrogen Audio test: http://www.listening-tests.info/mf-64-1/results.htm

•  An apples-to-apples 1-pass CBR comparison between WMA 10 Pro and HE AAC: http://www.microsoft.com/windows/windowsmedia/forpros/codecs/comparison.aspx

Table 18.4 Windows Media Audio 10 Pro Modes.

ArgumentBitrateSample rateChannelsBitsPerSampleModesLBR?
768_96_8_2476896824CBRNo
768_48_8_2476848824CBRNo
768_96_6_2476896624CBR, VBRNo
768_48_6_2476848624CBR, VBRNo
768_44_6_2476844624CBR, VBRNo
640_96_6_2464096624CBR, VBRNo
640_48_6_2464048624CBR, VBRNo
640_44_6_2464044624CBR, VBRNo
440_96_6_2444096624CBR, VBRNo
440_48_6_2444048624CBR, VBRNo
440_44_6_2444044624CBRNo
440_96_2_2444096224CBR, VBRNo
440_88_2_2444088224CBR, VBRNo
440_48_2_2444048224CBR, VBRNo
440_44_2_2444044224CBR, VBRNo
440_48_6_1644048616CBR, VBRNo
440_44_6_1644044616CBR, VBRNo
384_48_8_2438448824CBRNo
384_96_6_2438496624CBR, VBRNo
384_48_6_2438448624CBR, VBRNo
384_44_6_2438444624CBRNo
384_96_2_2438496224CBR, VBRNo
384_88_2_2438488224CBR, VBRNo
384_48_2_2438448224CBR, VBRNo
384_44_2_2438444224CBR, VBRNo
384_48_6_1638448616CBRNo
384_44_6_1638444616CBRNo
383_48_6_2438348624CBR, VBRNo
256_96_6_2425696624CBR, VBRNo
256_48_6_2425648624CBR, VBRNo
256_44_6_2425644624CBRNo
256_96_2_2425696224CBR, VBRNo
256_88_2_2425688224CBR, VBRNo
256_48_2_2425648224CBR, VBRNo
256_44_2_2425644224CBR, VBRNo
256_48_6_1625648616CBRNo
256_44_6_1625644616CBR, VBRNo
256_48_2_1625648216CBR, VBRNo
256_44_2_1625644216CBR, VBRNo
255_48_6_2425548624CBRNo
192_96_6_2419296624CBR, VBRNo
192_48_6_2419248624CBR, VBRNo
192_44_6_2419244624CBRNo
192_96_2_2419296224CBR, VBRNo
192_88_2_2419288224CBR, VBRNo
192_48_2_2419248224CBR, VBRNo
192_44_2_2419244224CBR, VBRNo
192_48_6_1619248616CBRNo
192_44_6_1619244616CBR, VBRNo
192_48_2_1619248216CBRNo
192_44_2_1619244216CBRNo
191_48_6_2419148624Low DelayNo
191_48_2_2419148224Low DelayNo
160_48_8_1616048816CBRNo
160_48_6_1616048616CBRNo
160_48_2_1616048216CBRNo
160_44_2_1616044216CBRNo
128_96_6_2412896624CBR, VBRNo
128_48_6_2412848624CBR, VBRNo
128_44_6_2412844624CBRNo
128_96_2_2412896224CBR, VBRNo
128_88_2_2412888224CBR, VBRNo
128_48_2_2412848224CBR, VBRNo
128_44_2_2412844224CBR, VBRNo
128_48_8_1612848816CBRNo
128_48_6_1612848616CBRNo
128_44_6_1612844616CBR, VBRNo
128_48_2_1612848216CBRNo
128_44_2_1612844216CBRNo
127_48_2_2412748224Low DelayNo
96_48_2_169648216CBRYes
96_44_2_169644216CBRYes
80_48_2_168048216CBRYes
80_44_2_168044216CBRYes
64_48_2_166448216CBRYes
64_44_2_166444216CBR, VBRYes
48_48_2_164848216CBRYes
48_44_2_164844216CBR, VBRYes
32_32_2_163232216CBRYes

Windows Media Audio 9.2 Lossless

The WMA 9.2 Lossless codec is, as the name implies, a lossless audio codec. A lossless audio codec’s output is bit-for-bit identical to its input. Essentially, it’s a more efficient alternative to PCM (uncompressed) encoding, and functionally equivalent to zipping up a .wav file. The flip side of lossless encoding is that there’s no bitrate control possible—each second of audio takes as many or as few bits as it needs. Hence the codec is only available in Quality VBR mode. Perfect silence takes up very little bandwidth, while white noise takes up as much as uncompressed. Typical savings are around 2:1 for music and 4:1 for multichannel TV/movie soundtracks.

In general, WMA Lossless shouldn’t be used for WMV files for distribution, given the high and unpredictable data rate. WMA 9 and 10 Pro can provide incredible-sounding audio at much lower bitrates, and transparent compression at still lower bitrates than WMA Lossless. Honestly, the only difference a user would get between Lossless and a high bitrate WMA Pro is the placebo effect of knowing it is lossless.

Legacy Windows Media Audio Codecs

ACELP.net

The WMA codecs have been standard since the 9 series launch, but there are some older codecs you many find in legacy content.

ACELP.net (Algebraic Code-Excited Linear Prediction), like the other low-bitrate voice codecs, provides intelligible speech at low bitrates. Microsoft licensed it from the now-defunct Spiro Labs. There’s a lot of old content inside corporate media libraries that use ACELP.net, but the encoder components haven’t been available for the last few version of the Format SDK, nor does Windows ship with a decoder anymore.

VoxWare MetaSound and MetaVoice

These were the pre-WMA/ACELP audio codecs for Windows Media in the mid-1990s. As the name implies, they were general-purpose, low-bitrate speech codecs, respectively. While decent for their era, they were not competitive with WMA and ACELP in quality, and took substantially more CPU power to decode. It has been many years since either shipped with Windows.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.140.195.28