web-dev-qa-db-ja.com

Pulseaudio> = 6およびbluez> = 5.24を使用してHSP / HFPプロファイルでBluetoothデバイスを使用する方法

LinuxボックスでBluetoothデバイスからオーディオを受信/録音したいのですが。私が持っているものはヘッドセットとして正しく動作します(特にマイクは正しく動作します)、つまりmacOSではまだLinuxで動作しません-特にraspbian jessy-それでも他のディストリビューションにも影響を与えることがわかります。

  • デバイスはbluetoothctlを使用してペアリングされ、適切に接続されています
  • A2DPプロファイルが正しく機能する
  • _pactl ls_特にレポートheadset_head_unit: Headset Head Unit (HSP/HFP) (priority 20, available: no)
  • _headset_head_unit_への切り替えを試みている間、pulseaudioレポート_[pulseaudio] module-bluez5-device.c: Refused to switch profile to headset_head_unit: Not connected_

bluezpulseaudioのアップグレード、ofonoの使用など、さまざまな提案を見つけて試しましたが、成功しませんでした。最も一般的なコメントは、HSP/HFPサポートが最近bluezで削除されており、ofonoを使用する必要があることです(ただし、関連するAOFIKとしてofonoがここでどのように役立つかはわかりません) BT susystemがクライアントとして使用されている場合、つまり携帯電話に接続されている場合)。未解決のバグが多数あります。つまり、freedesktop here および hereredhatbunt および debian と、stackexchangeで尋ねられる同様の質問。いくつかの成功例が報告されていますが、私は前に進むことができませんでした。

  • pulseaudio config _load-module module-bluetooth-discover headset=ofono_(およびautonativeバリアントも)、バージョン7、8、10を使用
  • bluez 5.24、5.42、5.43(bluez 5.35でいくつかの成功が報告されているため、debianの他のバージョンを見つけることができませんでした)
  • ヘッドセットデバイスをbluetoothctlと再度ペアリングして再接続する

また、おそらく一部の人々はLinuxブルートゥーススタックをクライアント/サーバーとして使用しているため、レポートに混乱があります。少なくとも、これはofonoの使用に関する私の理解です。

特にRPI 3でのBluetoothに関する問題の報告もありますが、HFP/HSPが現在のbluez/pulseaudioで可能である場合は、最初に兆候を見つけたいと思います。明確なステップ、つまりdebian(さらにはraspbianのほうが良い)で成功レポートを作成すると、非常に役立ちます。他のディストリビューションでのセットアップが成功した場合でも、同じものを自分のボックスで構築するのに役立ちます。問題は1年以上pulseaudio/bluezスタックに影響を与えるようで、人々がBTヘッドセットを使用できない、つまりVOiP通話にこれほど長い間使用できないとは信じられません...私の調査からすべての重要な詳細を提供したので、コメントがあった場合にこの質問を更新できます。

また、活発な開発と解決の可能性があるバグレポートがあるかどうかも疑問に思います。

UPDATE:おそらくofonoを削除した後、ようやく接続を_headset_head_unit_に切り替えることができるようになりましたサウンドを録音または再生しようとすると、デバイスは何らかのアクティビティ(つまり、ビルトインLEDの脈動)を示しますが、データが受信/送信されません(つまり、parecは、サイズ44bの空のwavを作成します。これは、wavヘッダーです) 。 _a2dp_sink_プロファイルを使用して同じデバイスをテストしましたが、問題なくサウンドを再生できます。どうやってデバッグできるのかしら。

5
ciekawy

私の解決策:

多くの検索の結果、Plantronics LegendとPluggable Bluetooth USBを使用してFedora 26で自分のソリューションを見つけました。

私は自分の歴史を振り返り、可能な限り私のソリューションでスレッドを更新しています。これは、Plugable(私が使用しているUSBモジュール)から直接動作しました。

this の投稿を参照してください。

上記のリンクごとのコマンドの概要

wget https://s3.amazonaws.com/plugable/bin/fw-0a5c_21e8.hcd
Sudo mkdir /lib/firmware/brcm
Sudo mv fw-0a5c_21e8.hcd /lib/firmware/brcm/BCM20702A0-0a5c-21e8.hcd
Sudo cp /lib/firmware/brcm/BCM20702A0-0a5c-21e8.hcd /lib/firmware/brcm/BCM20702A1-0a5c-21e8.hcd

その後、再起動します。

1
Eric Kirchner