答案1
2021 年更新:PulseAudio 支持 AptX、LDAC -https://9to5linux.com/pulseaudio-15-0-released-with-support-for-ldac-and-aptx-codecs-improved-hardware-support
编辑 2018-10-27:PulseAudio 的 LDAC、APTX(-HD) 和 AAC 支持正在开发中。EHfive 在 GitHub 上的存储库带有补丁以及 18.04 及以上版本的 PPA,请查看 Wiki 了解更多信息。补丁似乎会在某个时间点到达上游。我检查了 18.04 上的 PPA,它有效,尽管它用 12 替换了 PA 11.1,安装了较新版本的 ffmpeg 和 x265。
编辑 2017-12-18:几周前我肯定错过了,但现在看起来有一个编码器FFmpeg据我所知,目前还没有用户友好的解决方案。
简短的回答
您必须使用特殊品牌的蓝牙适配器。请查看那么我该如何使用 aptX?本答案的部分或浏览 aptx.com 网站发射器。
更长的答案
许可问题
aptX 编解码器是专有标准,企业社会责任从 APT Licensing Ltd. 收购,旨在通过以下方式开发和销售 aptX 驱动的高保真蓝牙音频解决方案成分品牌你说的对,这是CSR销售独家芯片的策略。
我在浏览时发现了以下条款解码器许可协议:
- 将软件作为被许可方产品中嵌入的安全代码固件实施
虽然这不能回答有关编码器的问题,但我想说,情况至少与其他专有编解码器和软件组件一样困难(1,2,3)。
那么我该如何使用 aptX?
您可以使用它,但不能将其作为免费软件解决方案。
您可以找到特殊品牌的蓝牙适配器,即所谓的 aptX 发射器。这些不是典型的纳米或微型蓝牙适配器,而是 USB 音频类设备。(请查看设备类别有关更多信息,请参阅 Wikipedia 中 USB 文章的章节。)这意味着这些设备将被识别为声卡,并且不会为主机提供蓝牙连接。还有一个主要缺点:它们的价格几乎是普通蓝牙适配器的 10 倍。
列表aptX 发射器或者支持 aptX 的蓝牙适配器按字母顺序排列:
- Creative BT-D1 USB 蓝牙发射器,蓝牙 2.1 + EDR
- Creative BT-W1/BT-W2 USB,蓝牙 2.1 + EDR
- 森海塞尔 BTD 500 USB,蓝牙 3.0
- Avantree BTDG-50-WGR,蓝牙 4.1,带 aptX LL
- 1mii B10,带 aptX LL 的蓝牙 5.0,通过问诺亚, ASIN: B083TD9VW4 (美国), B086KXR1CF (德国)
- Avantree DG80,带 aptX LL 的蓝牙 5.0
- 看起来与 1mii B10 相似,可能确实如此。作为赞助的亚马逊搜索结果出现。我将测试两者,特别是使用立体声模式下的两个 Nest Audio,它们目前有 1 秒的延迟,我必须在 PulseAudio 中进行调整。
检查连接的配置编解码器
安装bluez-hcidump
并运行sudo hcidump avdtp
,然后连接设备并寻找配置协商。以下是我得到的结果(参见还),看起来它尝试了 aptX、AAC,最后选择了 SBC。
$ sudo hcidump avdtp
HCI sniffer - Bluetooth packet analyzer ver 5.35
device: hci0 snap_len: 1500 filter: 0x400
< AVDTP(s): Discover cmd: transaction 11 nsp 0x00
> AVDTP(s): Discover rsp: transaction 11 nsp 0x00
ACP SEID 5 - Audio Sink
ACP SEID 3 - Audio Sink
ACP SEID 1 - Audio Sink
< AVDTP(s): Capabilities cmd: transaction 12 nsp 0x00
ACP SEID 5
> AVDTP(s): Capabilities rsp: transaction 12 nsp 0x00
Media Transport
Media Codec - non-A2DP (aptX)
16kHz 32kHz 44.1kHz 48kHz
Stereo
< AVDTP(s): Capabilities cmd: transaction 13 nsp 0x00
ACP SEID 3
> AVDTP(s): Capabilities rsp: transaction 13 nsp 0x00
Media Transport
Media Codec - MPEG-2,4 AAC
MPEG-2 AAC LC MPEG-4 AAC LC
8kHz 11.025kHz 12kHz 16kHz 22.05kHz 24kHz 32kHz 44.1kHz 48kHz
1 2 Channels
320000bps VBR
Content Protection
02 00
< AVDTP(s): Capabilities cmd: transaction 14 nsp 0x00
ACP SEID 1
> AVDTP(s): Capabilities rsp: transaction 14 nsp 0x00
Media Transport
Media Codec - SBC
16kHz 32kHz 44.1kHz 48kHz
Mono DualChannel Stereo JointStereo
4 8 12 16 Blocks
4 8 Subbands
SNR Loudness
Bitpool Range 2-53
Content Protection
02 00
< AVDTP(s): Set config cmd: transaction 15 nsp 0x00
ACP SEID 1 - INT SEID 1
Media Transport
Media Codec - SBC
44.1kHz
JointStereo
16 Blocks
8 Subbands
Loudness
Bitpool Range 2-53
> AVDTP(s): Set config rsp: transaction 15 nsp 0x00
< AVDTP(s): Open cmd: transaction 0 nsp 0x00
ACP SEID 1
> AVDTP(s): Open rsp: transaction 0 nsp 0x00
< AVDTP(s): Start cmd: transaction 1 nsp 0x00
ACP SEID 1
> AVDTP(s): Start rsp: transaction 1 nsp 0x00
< AVDTP(m): ver 2 cc 0 pt 1 seqn 0 time 0 ssrc 1
< AVDTP(m): ver 2 cc 0 pt 1 seqn 1 time 896 ssrc 1
故障排除
- A2DP 仅在一个方向上传输音频,对于电话通话,请使用 HSP/HFP 配置文件。
- 如果无法识别耳机或设备或者在 VLC 中列为输出设备,尝试通过声音设置切换到另一个声卡并返回。然后应该可以识别设备。
那么 Ubuntu 手机怎么样?
我不知道 Ubuntu on Phones 是否会支持此编解码器。CSR 文件称 Android 设备制造商可以使用此解决方案,因此我认为是否以及如何支持将由手机制造商决定。当然,Ubuntu Touch 通常支持蓝牙耳机,我能够将运行 Ubuntu 的 Nexus 4 与我测试的耳机配对。
我的经验和测试
经过测试的蓝牙模块和加密狗:
- 配有纳米蓝牙 2.1 和 4.0 适配器的台式机,联想 T530 配有内置模块。- 播放 FLAC 文件的音乐时,A2DP 几乎达到了与 BTD 500 相同的质量水平。电影音频与 14.04 同步。
- Sennheiser BTD 500 USB。- 配对所需的时间与常规非 NFC 功能加密狗一样长。
经过测试的耳机:
- 飞利浦 Fidelio M1BTBL,蓝牙 4.0。——可与所有加密狗和模块配合使用。
- 索尼 MDR-10RBT、蓝牙 3.0、NFC。——可与所有加密狗和模块配合使用。
- Creative Sound Blaster EVO ZxR、蓝牙 2.1、NFC。——这款产品的接收范围是三者中最好的,但无法连接到 BTD 500。
答案2
≥ 2021: 带管线
Pipewire 通过 libfreeaptx0 支持 APT-X。
要安装它,请使用pipewire-debian ppa, 总之:
sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream
sudo apt install gstreamer1.0-pipewire libpipewire-0.3-{0,dev,modules} libspa-0.2-{bluetooth,dev,jack,modules} pipewire{,-{audio-client-libraries,pulse,media-session,bin,locales,tests}}
systemctl --user --now disable pulseaudio.{socket,service}
systemctl start --user pipewire-pulse.service
systemctl enable --user pipewire.service
systemctl --user mask pulseaudio
答案3
也许你不需要 aptX - 因为sbc-xq
最近,Linux 中又添加了“生活窍门” sbc-xq
。根据这个博客
SBC XQ 的音频质量与 aptX HD 相当。
也许你想尝试一下。在我的计算机上,我可以在 的帮助下在sbc
和之间进行选择。sbc-xq
blueman-manager