Dreaminko

梦墨不会做梦💤

twitter
telegram
mastodon

SBC-XQ 蓝牙编码的音频质量

前言#

前段时间在用 LinkBuds 连接电脑的时候发现音频选项中有一个 SBC-XQ 编码器,有点好奇就去查了一下,只翻到这篇 19 年 6 月发布在 SoundExpert 的文章,写的还挺详细的,遂将其翻译成中文。

该译文借助了 ChatGPT 进行辅助翻译,仅供学习,版权归原作者所有(

原文地址:http://soundexpert.org/articles/-/blogs/audio-quality-of-sbc-xq-bluetooth-audio-codec

正文#

SBC XQ 不仅仅是一种新的蓝牙音频编解码器,它更是一种 Lifehack 。

标准的 SBC 被强制性地整合进所有的蓝牙立体声音频设备中 [1][2]。它可以在任意高的比特率下工作,但是 Bluetooth 的文档推荐在高质量模式下使用 328 kbit/s(44.1kHz/16bits)。根据 SE 的评级,这种模式仅仅提供了可接受的音频质量,为了提高蓝牙音频传输的质量:

  • CSR 公司,一家跨国半导体公司,收购了 APT Licensing Ltd. 并推出了 aptX ,接着推出了 aptX HD,然后是高通收购了所有这些公司,并进一步推出了 aptX Low Lattency 和 aptX Adaptive ;
  • Sony 推出了其专有的 Hi-Res LDAC;
  • 三星推出了三种新的蓝牙音频编解码器 HD/Scalable/UHQ-BT ;
  • 华为推出了 HWA LHDC 音频编解码器;
  • 苹果在其产品中使用 AAC;
  • ValdikSS 为 Android 写了补丁,Pali Rohár 为 Linux 写了补丁,这些补丁可以解锁 SBC 的更高比特率。

事实证明,几乎所有现代的蓝牙无线耳机、扬声器、接收器... 出厂时支持的 SBC 比特率高达 730 kbit/s,而这个补丁(SBC XQ)则可以帮助在 Android 环境下对蓝牙音频进行如下比特率的编码:

  • BT EDR 2 - 44.1/16bits 452.0 kbit/s,48/16 492.0 kbit/s
  • BT EDR 3 - 44.1/16bits 551.2 kbit/s,48/16 600.0 kbit/s

这些比特率的选择看起来像是在音频质量、兼容性与蓝牙连接稳定性之间做了一个合理的妥协 [3][4]。

SBC XQ 在 44.1kHz/16bit 下的结果已经添加到了我们的听测中:

SBC XQ CBR@452.0 (Bluetooth)**  - Subband codec for Bluetooth A2DP profile, CBR, 452.0 kbit/s FBR  
CODER: SBC Encoder LIB Version 1.5 (Philips)  
- usage: sbc_encoder -v -p -r453000 -oout.sbc ref.wav  
- SBC XQ default setting for BT EDR2  
- 44100 Hz, Dual Channel  
- bitpool: 38, bands: 8, blk_len: 16, allocation method: Loudness  
DECODER: SBC Decoder LIB Version 1.5 (Philips)

SBC XQ CBR@551.2 (Bluetooth)**  - Subband codec for Bluetooth A2DP profile, CBR, 551.2 kbit/s FBR  
CODER: SBC Encoder LIB Version 1.5 (Philips)  
- usage: sbc_encoder -v -p -r552000 -oout.sbc ref.wav  
- SBC XQ default setting for BT EDR3  
- 44100 Hz, Dual Channel  
- bitpool: 47, bands: 8, blk_len: 16, allocation method: Loudness  
DECODER: SBC Decoder LIB Version 1.5 (Philips)

此页面提供了早期评分(目前不够准确)的信息,您可以在 Encoders 320+ kbit/s 页面下方参加 SE 听觉测试以获得更准确的结果,在该页面下方有一份简短的说明。

SBC XQ 在音乐信号下的失真因子测量#

如果下面的文段看起来有点混乱,请参考之前的文章 - Audio quality of Bluetooth aptX and aptX HD

再次强调,通过任何客观测量手段进行感知声音质量的评估都应该非常谨慎。在失真因子测量中,我们有一个标准,用于定义该测量是否可以作为此类评估的依据。这个标准是被测试设备的声音特征或者失真特征之间的相似性,如果它们的失真特征足够接近,那么它们的测量结果就能很好地与感知声音质量得分相对应。

为了更客观的判断结果,我们将比较 SBC XQ @ 452.0 和 SBC XQ @ 551.2 的伪影签名与 SBC @ 201(低质量)、SBC229(中等质量)、SBC @ 328(高质量)、aptX @ 352、aptX HD @ 529、ADPCM IMA @ 354、AAC @ 256。就像在之前的文章中一样,我们将使用 Pink Floyd 的专辑《The Dark Side of The Moon》作为测试信号。

图 1

图 1 显示了不同的蓝牙音频编解码器如何根据其特征标识相互关联。两个编解码器之间的连接线越短,它们的特征标识就越相似。秩相关系数 0.1 对于失真因子与主观评分之间的关系至关重要。

我们可以看到,SBC 和 aptX 具有类似的伪影特征(差距 < 0.1),因此它们的失真因子测量值可以指示它们的感知声音质量(?)。

实在是不知道这怎么翻译了,原句为:We can see that SBC and aptX codecs have similar artifact signatures (distance<0.1), so their df-measurements are indicative of their perceived sound quality. 如果您有更好的翻译,请在下面留言,谢谢。

BT-df-histograms

图 2 为测试编解码器的失真因子序列的直方图,其显示了中位数与 25/75 百分位数。失真因子的中位数是平均波形退化的估计值。直方图的形状与波形退化的特征 / 类型(伪影特征)有关。

从失真因子的中位数来看,我们可以有把握地得出结论:SBC-XQ 的音频质量与 aptX HD 相当,而对于采用了 BT EDR3 的设备,SBC XQ 略胜一筹,在盲听测试中很难区分它们。 SBC 使用基本的声学模型进行编码,而 aptX 根本不使用该模型,因此它们的感知音频质量主要由比特率决定。可以借助 Bluetooth A2DP SBC/aptX 在线编码器对比不同 SBC 设置,包括 SBC XQ,与 aptX 和 aptX HD 进行听觉比较 [5]。

目前,LineageOS、Resurrection Remix 和 crDroid 的 Android 分支已经包含了所需的补丁。来自 Pali Rohár 的 Linux PulseAudio 补丁除了支持 SBC XQ,还添加了对 aptX、aptX HD 和 FastStream 编解码器的支持 [6]。这种额外的音频质量提升是完全免费的,很难想出会有任何反对将此选项包含在所有蓝牙协议栈和主要 Android 分支中的理由。您可以在您的操作系统中请求此功能:

译注:LineageOS 起初的确有 SBC-XQ 的支持,不过后面又删除了这一补丁,原因未知。

参考文献:#

[1] Bluetooth SIG, Specification of the Bluetooth System, Profiles, Advanced Audio Distribution Profile, v1.3.2, 2019-01-21, https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=457083

[2] Christian Hoene, Mansoor Hyder, “Considering Bluetooth’s Subband Codec (SBC) for Wideband Speech and Audio on the Internet”, Technical Report WSI-2009-3, 2009-10, https://pdfs.semanticscholar.org/1f19/561d03bc88b67728375566c95bbf77e730d5.pdf

[3] ValdikSS, “Bluetooth stack modifications to improve audio quality on headphones without AAC, aptX, or LDAC codecs”, 2019-06-18, https://habr.com/en/post/456476/

[4] ValdikSS, “Improve Bluetooth audio quality on headphones without aptX or LDAC”, since 2018-08-22, https://forum.xda-developers.com/android/software-hacking/improve-bluetooth-audio-quality-t3832615

[5] Bluetooth A2DP SBC/aptX online encoder, https://btcodecs.valdikss.org.ru/sbc-encoder/

[6] Pali Rohár, New API for Bluetooth A2DP codecs, since 2019-01-12, https://patchwork.freedesktop.org/series/55117/

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。