如何在 Ubuntu 22.04 上讓藍牙耳機預設為 HFP 設定檔和 mSBC 編解碼器

如何在 Ubuntu 22.04 上讓藍牙耳機預設為 HFP 設定檔和 mSBC 編解碼器

目前,每當我將藍牙耳機重新連接到 Ubuntu 22.04 時,它都會預設使用 A2DP Sink 設定檔。然後我每次都使用 pavucontrol 手動切換到 HFP。我怎麼能讓它堅持下去,這樣我就不必不斷改變它?

我已經嘗試過解決方案變更藍牙耳機預設音訊模式(A2DP Sink 與 HSP/HFP)似乎都不起作用。

答案1

我有類似的問題。我的耳機僅支援 A2DP 音頻,需要切換到 HFP 才能使我的麥克風正常工作。

我從脈衝音頻切換到管道線。 “Pipewire (WirePlumber >= 0.4.8) [...] 支援自動藍牙設定檔切換(例如,當應用程式需要存取麥克風時從 A2DP 切換到 HSP/HFP)。”

對於我的用例來說,這是一個很好的解決方案。我的筆記型電腦在加入 MS Teams 通話時不再使用內建麥克風,而是透過 HFP 自動切換到我的耳機。

我也在運行 Ubuntu 22.04手動安裝 Pipewire

安裝

安裝 LDAC 編解碼器(SBC 開箱即用):

$ sudo apt install libldacbt-{abr,enc}2

安裝剩餘的 PipeWire 套件和 WirePlumber 作為會話管理器:

$ sudo apt install\libspa-0.2-bluetooth\
pipewire-audio-client-libraries\pipewire-media-session-\
wireplumber

Notice '-' at the end of 'pipewire-media-session'. This is to remove it in the same command, because 'wireplumber' will be used

反而。

為您的使用者啟動 WirePlumber:

$ systemctl --user --now 啟用wireplumber.service

配置ALSA

一小步。將 PipeWire 範例中的設定檔複製到 ALSA 設定目錄中:

$ sudo cp /usr/share/doc/pipewire/examples/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/

脈衝音頻

一切都是由 pipeline-pulse 套件自動完成的,該套件應該按照建議由wireplumber 套件安裝。如果沒有,請自行安裝。藍牙

只需刪除此包,藍牙將由 PipeWire 處理:

$ sudo apt 刪除pulsaudio-module-bluetooth

完畢

重新啟動並執行以下命令檢查其是否有效:

$ LANG=C pactl 資訊 | grep '^伺服器名稱'

這只是一種解決方法,並不能直接回答您的問題。

答案2

有同樣的問題。一個簡單的命令列解決方法是在連接後手動設定接收器:

在“.profile”或“.bashrc”中設定別名,然後在藍牙連接後在命令列上使用“hs”

alias hs='pacmd set-card-profile bluez_card.your_device handsfree_head_unit'

您可以透過以下方式找到您的裝置:

pacmd list

名稱將是這樣的:

name: <bluez_card.AB_CD_EF_12_34_56>

連接藍牙耳機後,請執行以下操作:

hs

您也可以輕鬆新增耳機設定。例如:

    alias hp='pacmd set-card-profile bluez_card.your_device a2dp_sink'

我仍在尋找自動解決方案。

相關內容