藍牙耳機

出自 Arch Linux 中文维基

本文內容或本節內容已經過期。

原因: 請提供模板的第一個位置參數以概括原因。 (在Talk:藍牙耳機討論)

這篇文章或章節的翻譯不反映原文。

原因:Has seen an update 2021-09-08, but still out of sync with English page and partially translated(在 Talk:藍牙耳機# 中討論)

Arch Linux 現在默認支持 A2DP profile (Audio Sink),可以實現遠程音頻播放功能。


通過 Pipewire 連接耳機[編輯 | 編輯原始碼]

PipeWire 是一個 PulseAudio 的代替品,PipeWire 提供了一個簡易地設置藍牙耳機的方式。PipeWire 開箱即提供了針對耳機音箱的 A2DP 配置文件,支持 SBC/SBC-XQ、AptX、LDAC、AAC 藍牙音頻編碼。PipeWire 也支持 HFP/HSP 藍牙音頻協議。

安裝軟件包 pipewire-pulse (這是 pulseaudiopulseaudio-bluetooth的替代品)。

守護程序將會自動啟動為一個用戶服務。請使用 pavucontrol 或你的桌面環境提供的「設置」應用程序來進行 PipeWire 設置。更多信息請查看 PipeWire#Bluetooth devices

獲取藍牙耳機的電池電量[編輯 | 編輯原始碼]

若要獲取藍牙耳機的剩餘電量並將其提供給 upower,需要啟動守護程序 bluetoothd 的試驗性功能,方法如下:

建立一個 bluetooth.service 的替換單元文件(replacement unit file),在 ExecStart 行後添加 -E。這之後重新啟動 bluetooth.service


通過 Bluez5/PulseAudio 連接藍牙耳機[編輯 | 編輯原始碼]

本文或本章節可能需要合併到Bluetooth

附註: Significant redundancy with general setup on Bluetooth page. Should be merged there. Headset-specific info would stay on this page.(在 Talk:Bluetooth#Merging general setup from Keyboard, Mouse, Headset pages 中討論)


安裝軟件包 pulseaudio-alsapulseaudio-bluetoothbluez-utils。其中 bluez-utils 提供了 bluetoothctl 工具。

注意: 在繼續下一步之前,請確認藍牙設備沒有被 rfkill 占用。


通過命令行進行設置[編輯 | 編輯原始碼]

啟動 bluetooth.service

現在我們可以使用 bluetoothctl 命令行工具來配對、連接藍牙。關於 bluetoothctl 的更多詳細信息請查看藍牙

運行以下命令進入 bluetooth 命令環境:

$ bluetoothctl

然後輸入:

[bluetooth]# power on
[bluetooth]# agent on
[bluetooth]# default-agent
[bluetooth]# scan on

現在讓你的藍牙耳機進入配對模式,它應該很快就能被發現。如:

[NEW] Device 00:1D:43:6D:03:26 Lasmex LBT10

這裡發現了一個名字是"Lasmex LBT10",對應 MAC 地址是00:1D:43:6D:03:26的設備。接下來我們使用這個MAC地址來配對:

# pair 00:1D:43:6D:03:26

配對成功後,你需要顯式地連接設備。 (如果不起效,請嘗試在連接藍牙設備之前先使用 trust 命令)

# [bluetooth]# connect 00:1D:43:6D:03:26

如果出現連接錯誤 org.bluez.Error.Failed,先停止現存的 PulseAudio daemon 再重試:

$ pulseaudio -k
[bluetooth]# connect 00:1D:43:6D:03:26

最後,如果你希望將來自動連接此設備:

[bluetooth]# trust 00:1D:43:6D:03:26

如果一切正常,你現在可以在PulseAudio看到一個獨立的輸出設備。

注意: 設備默認情況下可能是停用的。你可以在pavucontrol的"Configuration"標籤頁裡選擇配置(OFF, A2DP, HFP)

你現在可以通過pavucontrol的"Playback"和"Pecording"標籤頁重定向音頻的輸入、輸出了。

現在可以禁用藍牙發現新設備並退出此程序:

[bluetooth]# scan off
[bluetooth]# exit

設置自動連接[編輯 | 編輯原始碼]

若要使你的藍牙耳機自動連接,你需要啟用 PulseAudio 的 switch-on-connect 模塊。請添加以下幾行到 /etc/pulse/default.pa

/etc/pulse/default.pa
### Automatically switch to newly-connected devices
load-module module-switch-on-connect
注意:

媒體播放控制[編輯 | 編輯原始碼]

媒體控制信號需要被轉發給 MPRIS,並被支持 MPRIS 的媒體播放器所獲取,來實現外部播放控制。詳細信息請查看 MPRIS#Bluetooth

通過 GNOME Bluetooth 進行設置[編輯 | 編輯原始碼]

注意: 由於一個現存的 bug,在 PulseAudio 9/10 下,通過如下方法無法使 A2DP Profile 啟動,這可能導致聲音質量劣化。查看 #A2DP not working with PulseAudio[損壞的鏈接:無效的章節] 來查看可能的解決方案。

你可以使用 GNOME Bluetooth 作為一個圖形化前端來簡單地配置你的藍牙耳機。

首先,你需要確定 bluetooth.service systemd unit 正在運行。

打開 GNOME Bluetooth,開啟藍牙、掃描設備、在設備列表中選擇藍牙設備進行連接。你可以在設備配置菜單中直接進入聲音控制面板中。當你的設備已連接後,聲音控制面板中將會出現一個新的播放設備。

LDAC/aptX 編碼[編輯 | 編輯原始碼]

若要增加對 LDAC/aptX 藍牙音頻編碼的支持,請安裝軟件包 pulseaudio-modules-btAUR[損壞的鏈接:package not found]libldac,並重啟 PulseAudio。查看項目主頁來獲取配置方法。你可以通過如下命令來查看你正在使用的藍牙音頻編碼:

$ pactl list | grep a2dp_codec

常見問題及解決方案[編輯 | 編輯原始碼]

注意: 有很多用戶報告 A2DP/藍牙 耳機不能正常工作。更多信息請查看 #在 HSP/HFP 和 A2DP 配置間切換

音質差/底噪/聲音渾濁[編輯 | 編輯原始碼]

如果音質很差,很可能是因為你的耳機沒有被正確配置。 查看 #在 HSP/HFP 和 A2DP 配置間切換來解決這個問題。

已經選擇音頻配置,但耳機沒有激活,不能重定向音頻[編輯 | 編輯原始碼]

音頻配置的菜單項在設備還沒有成功連接的時候就已經存在了,但它並不能起作用。這個菜單項似乎是在設備被發現的時候就馬上創建了。

確認一下bluetoothctl是在root用戶下或在sudo環境下執行的;然後手動連接設備。有配置選項可以避免每次都需要手動連接,但是配對和信任並不會導致自動連接。

授權失敗導致配對失敗[編輯 | 編輯原始碼]

如果配對失敗,你可以嘗試禁用 SSPMode:

# btmgmt ssp off

# btmgmt ssp on

當你運行這個命令時,你可能需要關閉藍牙。

配對成功, 但連接失敗[編輯 | 編輯原始碼]

你可能在 bluetoothctl 裡面看到下面的錯誤:

[bluetooth]# connect 00:1D:43:6D:03:26
Attempting to connect to 00:1D:43:6D:03:26
Failed to connect: org.bluez.Error.Failed

你可以查看 bluetooth.service 的單元狀態或通過以下命令查看日誌以進一步定位問題:

# systemctl status bluetooth
# journalctl -n 20

你可能會在日誌裡看到下面類似的信息:

bluetoothd[5556]: a2dp-sink profile connect failed for 00:1D:43:6D:03:26: Protocol not available

這是因為沒有安裝pulseaudio-bluetooth 包導致的。 如果確實沒有安裝,安裝一下這個包,然後重啟一下PulseAudio

問題也可能由權限問題引發。如果 root 用戶可以連接藍牙設備而普通用戶不可,請將你的用戶添加到 lp 用戶組,再重啟 pulseaudio。 參考:/etc/dbus-1/system.d/bluetooth.conf

如果不是因為缺失包導致的, 很可能是PulseAudio沒收到消息,一般重啟一下PulseAudio就可以解決問題。 注意bluetoothctl和PulseAudio不需要在相同的用戶下運行,bluetooth在root環境下運行,而PulseAudio在用戶環境下運行也可以很好的工作。 重啟PulseAudio後,不需要重新配對,直接重連即可。

如果重啟PulseAudio後,仍然不能正常工作,你需要重新加載 module-bluetooth-discover 模塊。

# pactl load-module module-bluetooth-discover

你可以把同樣的加載命令添加到 /etc/pulse/default.pa,讓PulseAudio啟動時自動加載。

如果仍然不能正常工作,或者你使用的是系統級別的PulseAudio,下面的模塊也需要加載一下(同樣可以把他們加到 default.pasystem.pa 裡面):

module-bluetooth-policy
module-bluez5-device
module-bluez5-discover


It is also possible there are no write permissions for the owner of /var/lib/bluetooth/. If this is the case, you may get the device to work by removing and re-pairing it, but the issue will return after rebooting. Restoring write permissions fixes this issue:

# chmod -R u+w /var/lib/bluetooth


也可能是因為 /var/lib/bluetooth/ 缺少寫權限。這種情況下,你可以通過移除再重新配對設備來使其工作,但重啟後問題會再次出現。恢復寫權限會修復問題:

# chmod -R u+w /var/lib/bluetooth

連接成功,但聲音播放總有小故障[編輯 | 編輯原始碼]

如果你的藍牙與 WiFi 設備為同一個硬件,這非常有可能發生。因為它們共享了同一個天線甚至是頻段(2.4GHz)。儘管在 Windows 上它們可以共同工作,但在 Linux上又是不是這樣。

一個可能的解決方案是是 WiFi 工作在 5 GHz,從而使得它們不會互相干擾。如果你的網卡/路由器不支持 5GHz WiFi,你可以升級 WiFi 固件或驅動。這個方法對 Realtek 8723BE 配合最新版 rtl 驅動(AUR)有效。

如果難以使用以上方法,一個不那麼有效的方法是在 PulseAudio 輸出端優化信號元包大小與延遲時長來試圖補償信號干擾問題。你需要選擇合適的參數值大小,因為這有可能使得音畫不同步。若要設置更改藍牙耳機的延時(以更改到125000微秒為例):

$ pactl set-port-latency-offset <bluez_card> headset-output 125000

其中藍牙驅動器的ID號可以通過如下命令獲得:

$ pacmd list-sinks | egrep -o 'bluez_card[^>]*'

元包大小可以在配置文件 /etc/pulse/daemon.conf 中設定,重啟 PulseAudio 生效。更多信息請參考 PulseAudio/Troubleshooting#Setting the default fragment number and buffer size in PulseAudio

對於某些特定的藍牙適配器,添加 options ath9k btcoex_enable=1/etc/modprobe.d/ath9k.conf 中可能會有幫助

/etc/modprobe.d/ath9k.conf
# possibly fix for sound glitches
options ath9k btcoex_enable=1

之後重啟 PulseAudio 服務。

連接成功,但無法播放聲音[編輯 | 編輯原始碼]

確定你在系統日誌裡面可以看到如下信息:

bluetoothd[5556]: Endpoint registered: sender=:1.83 path=/MediaEndpoint/A2DPSource
bluetoothd[5556]: Endpoint registered: sender=:1.83 path=/MediaEndpoint/A2DPSink

如果你可以看到類似的信息,說明藍牙沒有問題,你可以去檢查PulseAudio的配置問題了。否則的話,退回來再次確認藍牙是否已經連接成功。

此頁面或章節適合移動到 PulseAudio/Troubleshooting

附註: The following seems to be general issue: [1](在 Talk:藍牙耳機 討論)


如果使用的是GDM, PulseAudio 的另外一個實例可能已經啟動,並且「捕獲」了你的藍牙連接。這種情況可以通過屏蔽GDM用戶的pulseaudio socket來解決:

# mkdir -p  /var/lib/gdm/.config/systemd/user
# ln -s /dev/null  /var/lib/gdm/.config/systemd/user/pulseaudio.sockett

重啟電腦後,PulseAudio的第二個實例將不再啟動。

bluez 可能會錯誤地認為某個藍牙耳機不兼容 A2DP。這種情況下,首先確定藍牙設備的標號:

$ pacmd ls

在輸出中應當會有一段關於藍牙耳機的內容,類似於:

$ pacmd ls
index: 2
        name: <bluez_card.XX_XX_XX_XX_XX_XX>
        driver: <module-bluez5-device.c>
        owner module: 27
        properties:
                device.description = "SONY MDR-100ABN"
                device.string = "XX:XX:XX:XX:XX:XX"
                device.api = "bluez"
                device.class = "sound"
                ...

若要手動更改配置文件,運行以下命令:

$ pacmd set-card-profile 2 a2dp_sink

其中 2 是通過 pacmd ls 得到的設備標號。

連接成功,聲音播放正常,但播放暫停後再繼續就會播放卡頓[編輯 | 編輯原始碼]

如果原先聲音播放正常,但藍牙連接空閒後再恢復播放就會出現卡頓/高延遲/無聲,可以嘗試禁用 PulseAudio 的音源/音響空閒自動掛起功能。這是由 module-suspend-on-idle 模塊控制的。

若要禁用 module-suspend-on-idle,將配置文件中的以下行注釋掉:

~/.config/pulse/default.pa
### Automatically suspend sinks/sources that become idle for too long
#load-module module-suspend-on-idle

之後,重啟 PulseAudio。


UUIDs has unsupported type[編輯 | 編輯原始碼]

在配對的時候,你可能會在bluetoothctl看到如下信息:

[CHG] Device 00:1D:43:6D:03:26 UUIDs has unsupported type

這種情況很常見,沒有影響,可以被忽略。


PC 上顯示設備已經配對,但外設端無法識別 PC[編輯 | 編輯原始碼]

這也許是因為藍牙設備不支持 Bluetooth LE for pairing。

嘗試在 /etc/bluetooth/main.conf 中設置 ControllerMode = bredr

更多信息查看此鏈接[2](關於 Bose QC 35)

設備連接成功,但隨即斷連[編輯 | 編輯原始碼]

如果你的設備藍牙連接失敗或很快斷連,並且在日誌 (systemd/Journal) 中看到了如下內容:

bluetoothd: Unable to get connect data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd: connect error: Connection refused (111)

這有可能是因為你已經在本電腦的藍牙適配器上用其他操作系統配對了此藍牙設備。有些設備不能處理來自同一 MAC 地址(例如:同一藍牙適配器)的多次配對。你可以通過重新配對來修復問題:

$ bluetoothctl
[bluetooth]# devices
Device XX:XX:XX:XX:XX:XX My Device
[bluetooth]# remove XX:XX:XX:XX:XX:XX

之後,重啟 bluetooth.service,開啟藍牙適配器並處於可被發現模式,重新掃描、重新配對。對於某些藍牙管理程序,你可能需要重啟電腦來從頭進行設備掃描。

Apple Airpods 聲音小[編輯 | 編輯原始碼]

創建一個 bluetooth.servicedrop-in file,添加以下內容:

/etc/systemd/system/bluetooth.service.d/noplugin-avrc.conf
[Service]
ExecStart=
ExecStart=/usr/lib/bluetooth/bluetoothd --noplugin=avrcp

之後,重啟 bluetooth.service,重新載入(reload)其配置文件,重新連接耳機。

另外,對於 Airpods Pro,請禁用空間音頻功能,開啟單聲道模式(使用iPhone進行設置)。

Apple AirPods Pro 無法在 HSP/HFP 配置模式下工作,可以在 A2DP 配置模式下工作[編輯 | 編輯原始碼]

如果你的 Airpods Pro 可以與 PluseAudio 正常工作,但無法兼容 HSP/HFP 配置模式(在 pavucontrolConfigurations 標籤也下,通常被表明「不可用」),請嘗試換用 pipewire-pulse

請注意,換用 pipewire-pulse(並重啟電腦或某些 systemd service)後,HSP/HFP 應當可以使用了。但這也可能導致 A2DP 不可用(當選擇為 A2DP sink 時,立即被取消選擇,並選擇到"OFF"模式)。如果你遇到這個問題,請嘗試刪除/重命名 /var/lib/bluetooth 文件夾:

# mv /var/lib/bluetooth /var/lib/bluetooth.bak

重新配對你的藍牙設備後,所有的配置模式理論上都應當可用了。你可以使用pavucontrolpacmd 進行選擇。

HSP 問題:藍牙音頻源與播放設備都正常,但聲音信號沒有被在兩者間正確傳輸[編輯 | 編輯原始碼]

你可能缺少某些固件或 SCO (audio protocol of HSP and HFP) 路由配置錯誤。

請查看[3]

BCM20702 所需固件:bcm20702a1-firmwareAUR or bcm20702b0-firmwareAUR.

Error: Failed to start discovery org.bluez.Error.InProgress[編輯 | 編輯原始碼]

如果你的耳機可被發現,但由於 "Failed to start discovery org.bluez.Error.InProgress" 錯誤無法連接,請安裝軟件包 bluez-hciconfigAUR 並運行如下命令:

$ hciconfig hciX up
$ hciconfig hciX reset

其中 X 是你電腦的藍牙適配器的標號(通常為 0)

之後你應當就可以進行設備連接了。參考以下步驟:#通過命令行進行設置.

在 HSP/HFP 和 A2DP 配置間切換[編輯 | 編輯原始碼]

通過下面命令可以很容易的在兩者間做切換:

$ pacmd set-card-profile card_number a2dp_sink

其中 card_number 可以通過 pacmd list-cards 命令獲得。

For enabling automatic profile switching from A2DP to HSP when a recording stream appears without any role set, you can append auto_switch=2 to load-module module-bluetooth-policy in /etc/pulse/default.pa.

更多關於 PulseAudio 配置的說明請參考 PulseAudio 文檔

PulseAudio 下 A2DP 不能工作[編輯 | 編輯原始碼]

Socket Interface problem[編輯 | 編輯原始碼]

對於 bluez 4.1+, PulseAudio 3.0+,若 PulseAudio 無更改到 A2DP 配置模式,你可以嘗試禁用 Socket interface from /etc/bluetooth/audio.conf。在此文件中將行 Enable=Socket 改為 Disable=Socket


A2DP sink profile 不可用[編輯 | 編輯原始碼]

當 A2DP 播放設備配置(A2DP sink profile) 不可用時,你無法將 PluseAudio 切換到 A2DP 輸出,甚至 A2DP 播放設備不會被列出。你可以通過 pactl 來確定是否是這種情況:

$ pactl list | grep -C2 A2DP
     Profiles:
             headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: yes)
             a2dp_sink: High Fidelity Playback (A2DP Sink) (sinks: 1, sources: 0, priority: 40, available: no)
             off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
        Active Profile: headset_head_unit

你無法通過 pacmd 手動設置聲卡配置

$ pacmd set-card-profile bluez_card.C4_45_67_09_12_00 a2dp_sink
Failed to set card profile to 'a2dp_sink'.

對於 10.0 版本的 PulseAudio,當你通過 Bluedevil 或其他 BlueZ 前端連接藍牙耳機時,這個問題可能會出現。

在第一次通過某些藍牙控制器(例如0a12:0001, Cambridge Silicon Radio)與耳機配對時,這個問題同樣可能出現。這些藍牙控制器默認使用 HandsfreeHeadset - HS service,並且不允許切換到需要使用 AudioSink service 的 A2DP PulseAudio 音頻播放設備。

可能的解決方案:

  • 對於某些耳機,連接成功後在藍牙耳機段調整音量或播放/暫停音樂可能會觸發 A2DP 配置,使其可用
  • 使用 bluez-utils 軟件包中的 bluetoothctl 連接藍牙耳機可能會使 A2DP 播放配置可用。fix-bt-a2dpAUR 可以在藍牙設備連接後自動完成這一過程。詳細使用方法請看[4]
[bluetooth]# connect headset_MAC_address
  • 手動切換到藍牙的 AudioSink service 可能會使 A2DP 配置文件與 A2DP PulseAudio 播放設備可用。blueman 軟件包中的 blueman-manager 可以幫你完成這一過程。你也可以使用 bluetoothctl 中註冊 AudioSink service 的 UUID:
$ bluetoothctl
[bluetooth]# menu gatt
[bluetooth]# register-service 0000110b-0000-1000-8000-00805f9b34fb
[bluetooth]# quit
  • 禁用藍牙耳機的配置文件
/etc/bluetooth/main.conf
[General]
Disable=Headset
  • 啟用多配置文件模式。這可以使得藍牙耳機同時支持 A2DP 以及 HSP/HFP
/etc/bluetooth/main.conf
[General]
MultiProfile=multiple
  • 有時以上方法都無效。你可能已經嘗試過重啟電腦、開關藍牙。此時可以嘗試重啟 bluetooth.service
$ sudo systemctl restart bluetooth.service

Gnome with GDM[編輯 | 編輯原始碼]

本文或本章節可能需要合併到#Connecting works, but I cannot play sound

附註: duplicate instructions(在 Talk:藍牙耳機 中討論)

The instructions below were tested on Gnome 3.24.2 and PulseAudio 10.0 however they may still be applicable and useful for other versions.

If PulseAudio fails when changing the profile to A2DP while using GNOME with GDM, you need to prevent GDM from starting its own instance of PulseAudio:

  • Prevent Pulseaudio clients from automatically starting a server if one is not running by adding the following:
/var/lib/gdm/.config/pulse/client.conf
autospawn = no
daemon-binary = /bin/true
  • Prevent systemd from starting Pulseaudio anyway with socket activation:
$ sudo -ugdm mkdir -p /var/lib/gdm/.config/systemd/user
$ sudo -ugdm ln -s /dev/null /var/lib/gdm/.config/systemd/user/pulseaudio.socket
  • Restart, and check that there is no PulseAudio process for the gdm user using:
$ pgrep -u gdm pulseaudio

Further discussion about this problem and alternative fixes can be found at [5] and [6]. Alternatively, one may try and install fix-bt-a2dpAUR.

HFP not working with PulseAudio[編輯 | 編輯原始碼]

HFP-only bluetooth headsets may not be usable in the standard configuration of PulseAudio. The respective profiles occur, but they are not available:

  • bluetoothctl info output shows:
UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
UUID: Handsfree                 (0000111e-0000-1000-8000-00805f9b34fb)
  • pactl list of respective device shows:
...
Profiles:
      ...
      headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: no)

To solve the respective issue, update to pulseaudio (>=13) and potentially pulseaudio-modules-bt-gitAUR[損壞的鏈接:package not found] and bluez (>=5.5) to latest versions. Then install ofonoAUR (start and enable using systemctl) and phonesimAUR and create / activate a fake modem as described here [7]:

  • Create /etc/ofono/phonesim.conf with:
[phonesim]
Address=127.0.0.1
Driver=phonesim
Port=12345
  • Start as user:
$ phonesim -p 12345 /usr/share/phonesim/default.xml &
$ dbus-send --print-reply --system --dest=org.ofono /phonesim org.ofono.Modem.SetProperty string:"Powered" variant:boolean:true
  • Activate modem:
$ dbus-send --print-reply --system --dest=org.ofono /phonesim org.ofono.Modem.SetProperty string:"Online" variant:boolean:true
  • If you want to check the results of this, download ofono git sources ([8]) and call list-modems from the ofono/test directory. The output of the respective modem section should read like this:
...
[ /phonesim ]
  Online = 1
  Powered = 1
  Lockdown = 0
  Emergency = 0
  Manufacturer = MeeGo
  ...
  • Finally, restart pulseaudio and reconnect headset. Now, HFP should be available:
headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: yes)
注意: HFP support is not stable and may cause glitches with switching to A2DP; try reconnecting, if the needed mode is not available.

Disable auto switching headset to HSP/HFP[編輯 | 編輯原始碼]

When using a bluetooth headset that supports multiple profiles, some applications switch to HSP/HFP profile automatically. If this behaviour is undesired you can disable this by appending the auto_switch=false parameter to the bluetooth-policy module:

/etc/pulse/default.pa
load-module module-bluetooth-policy auto_switch=false

Tested headsets[編輯 | 編輯原始碼]

Model Version Comments Compatible
Philips SHB9150 bluez5, pulseaudio 5 Pause and resume does not work. With at least mpv and Banshee hitting the pause button stops audio output but does not pause the player. Limited
Philips SHB9100 Pause and resume is flaky. See [9] for the underlying issue and a temporary solution to improve audio quality. Limited
Philips SHB7000 Pause and resume is flaky. Limited
Philips SHB7100 bluez 5.32, pulseaudio 6.0 Next/previous buttons work. Pause and resume is flaky (sometimes works in VLC, not at all in Audacious). Tested only A2DP and Handsfree audio out, built-in mic was broken. Limited
Philips SHB7150 bluez 5.32, pulseaudio 6.0 Next/previous buttons work. Pause and resume work in VLC. Tested only A2DP profile.
Philips SHB5500BK/00 bluez 5.28, PulseAudio 6.0 Pause and resume is not working. Limited
Parrot Zik Firmware 1.04. The microphone is detected, but does not work. Sometimes it lags (but does not stutter); usually this is not noticeable unless playing games, in which case you may switch to a wired connection. Limited
Sony DR-BT50 bluez{4,5} Works for a2dp, see [10]). Adapter: D-Link DBT-120 USB dongle.
Sony SBH50 bluez5 Works for a2dp, Adapter: Broadcom Bluetooth 2.1 Device (Vendor=0a5c ProdID=219b Rev=03.43). Requires the btusb module.
Sony MDR-XB950BT pulseaudio Tested a2dp. Adapter: Grand-X BT40G. Does not auto-connect, need to connect manually. Other functionality works fine. Limited
Sony MUC-M1BT1 bluez5, pulseaudio-gitAUR Both A2DP & HSP/HFP work fine.
SoundBot SB220 bluez5, pulseaudio-gitAUR
Auna Air 300 bluez5, pulseaudio-git For some reason, a few restarts were required, and eventually it just started working. Limited
Sennheiser MM 400-X bluez5, pulseaudio 4.0-6
Sennheiser MM 550-X Travel bluez 5.27-1, pulseaudio 5.0-1 Next/Previous buttons work out-of-the-box, Play/Pause does not
Audionic BlueBeats (B-777) bluez5, pulseaudio 4.0-6
Logitech Wireless Headset bluez 5.14, pulseaudio-git part number PN 981-000381, advertised for use with iPad
HMDX Jam Classic Bluetooth bluez, pulseaudio-git
PT-810 bluez 5.14, pulseaudio-git Generic USB-Powered Bluetooth Audio Receiver with 3.5mm headset jack and a2dp profile. Widely available as "USB Bluetooth Receiver." IDs as PT-810.
Philips SHB4000WT bluez5 A2DP works, HDP distorted.
Philips AEA2000/12 bluez5
Nokia BH-104 bluez4
Creative AirwaveHD bluez 5.23 Bluetooth adapter Atheros Communications usb: 0cf3:0036
Creative HITZ WP380 bluez 5.27, pulseaudio 5.0-1 A2DP Profile only. Buttons work (Play, Pause, Prev, Next). Volume buttons are hardware-only. Auto-connect works but you should include the bluetooth module in "pulseaudio" to switch to it automatically. Clear HD Music Audio (This device support APTx codec but it is not supported in linux yet). You may have some latency problems which needs pulseaudio restart.
deleyCON Bluetooth Headset bluez 5.23 Adapter: CSL - USB nano Bluetooth-Adapter V4.0. Tested a2dp profile. Untested microphone. Does not auto-connect (even when paired and trusted), must connect manually. Play/pause button mutes/unmutes the headphones, not the playback. Playback fwd/bwd buttons do not work (nothing visible with xev). Limited
UE BOOM bluez 5.27, pulseaudio-git 5.99 Update to latest UE BOOM fw 1.3.58. Sound latency in video solved by configuring pavucontrol. Works with UE BOOM x2.
LG HBS-730 bluez 5.30, pulseaudio 6.0 Works out of box with A2DP profile.
LG HBS-750 bluez 5.30, pulseaudio-git 6.0 Works out of box with A2DP profile.
Beats Studio Wireless bluez 5.28, pulseaudio 6.0 Works out of box. Not tested multimedia buttons.
AKG Y45BT bluez 5.30, pulseaudio 6.0 Pause and resume does not work. Needs Enable=Socket in /etc/bluetooth/audio.conf and load-module module-bluetooth-discover in /etc/pulse/default.pa.
Bluedio Turbine/Turbine 2+ bluez5.3, pulseaudio 6.0 HSP/HFP work fine, A2DP work fine.
Sony SBH20 bluez 5.30, pulseaudio 6.0 Works out of box with A2DP profile.
Nokia BH-111 bluez 5.30, pulseaudio 6.0 Works with both HSP/HFP and A2DP. Buttons work in certain apps.
Sony MDR-ZX330BT bluez 5.31, pulseaudio 6.0 Works out of box (HSP/HFP and A2DP). Buttons work in certain apps.
Samsung Level Link bluez 5.33, pulseaudio 6.0 Works out of box (HSP/HFP and A2DP). Buttons work in certain apps.

See also[編輯 | 編輯原始碼]

Using the same device on Windows and Linux without pairing the device over and over again