2013年11月26日星期二

Bluetooth A2DP audio quality in depth

Summary

This post explains Bluetooth audio profile A2DP, and discuss audio quality of it in technical aspect.

1. Bluetooth A2DP profile

Let's begin with Bluetooth core specification, the most popular and widely supported one is Bluetooth 2.0/2.1 + EDR, which can transmit at 2.1Mbit/s at most. High speed feature is introduced since Bluetooth 3.0, its speed can go up to 24Mbit/s when transfering data through WiFi. The devices support this feature would be marked Bluetooth 3.0 + HS. So those support Bluetooth 3.0 or even 4.0 but without the "HS" logo will remain the same as their Bluetooth 2.1 peers. As for Bluetooth 4.0, it contains 3 subsets that are called classic Bluetooth, high speed Bluetooth and low energy Bluetooth, which is actually equals to 2.1 plus 3.0 + HS and low energy Bluetooth.

A2DP(Advanced Audio Distribution Profile) is a Bluetooth profile, which is supported by almost all Bluetooth speakers and headphones. It is the key that defines audio data bandwidth and audio quality.

2. A2DP audio codecs

To send audio data of the same quality of CD, it needs 1411.2 kbit/s, which is beyond Bluetooth actual stable speed, so some compression is needed. As we know, even at the same bitrate, different audio codecs's audio quality may vary. Low-complexity SBC(Sub-band coding) codec is mandatory,with a few optional codecs such as MP3, AAC, ATRAC, and manufacturer-defined codecs can also be adopted. So in a word, if you want to transmit your audio using high quality MP3 codec, your headphone and player should both support this codec, otherwise it would fall back to SBC.

2.1 SBC

In A2DP specifiction, the recommended SBC bitrate is 328kbits/s for 44.1kHz stereo audio. Here is the detailed table:

Table 4.7: Recommended sets of SBC parameters in the SRC device
SBC encoder settings* Middle Quality High Quality
Mono Joint Stereo Mono Joint Stereo
Sampling frequency (kHz)
44.14844.14844.14844.148
Bitpool value
1918353331295351
Resulting frame length (bytes)
464483797066119115
Resulting bit rate (kb/s)
127132229237193198328345
*Other settings: Block length = 16, Allocation method = Loudness, Subbands = 8

Some players can adjust its SBC audio quality by setting a value called bitpool. Since SBC is a low complexity codec, according to this website, the audio quality of 328 kbit/s SBC codec sits between that of 224kbits/s and 256kbit/s MP3. To my knowledge, SBC is something like MP1 or MP2.

2.2 APT-X

APT-X is a manufacturer-defined codec with a compression ratio of 4:1 (352kbit/s), claiming capable of delivering CD-quality audio over Bluetooth.

2.3 MP3 与 AAC

Two common codecs, and the maximum bitrates are both 320kbit/s.

General speaking, audio quality of AAC better than MP3 ,and MP3 better than SBC, in the same bitrate. APT-X claims to outperform AAC, but no detailed third party comparision data can be found.

4. Conclusion

Bluetooth's best audio quality can match that of 256kbit/s MP3, and if both your player and target device support MP3 codec, it can match 320kbit/s MP3. Other factors also affects the final output, such as analog output quality of your Bluetooth receiver, quality of your speaker and so on.

1 条评论: