0

Bluetooth A2DP シンク (レシーバー) を作成してから、オーディオを vorbis ラジオ ストリーム (LAN のみ) に出力しようとしています。基本的には、これをスクイーズボックス (スクイーズライト) マルチルーム ミュージック システムへの Bluetooth アドオンとして使用したいと考えています。A2DP-sink-radio-transmitter は、任意のシステムに簡単に追加できるスタンドアロンの Raspberry Pi です。私は比較的Linuxに慣れていません。

私はすでに作業セットアップを達成していますが、Bluetooth ソース (電話) でオーディオを一時停止すると、すべて失敗します。

セットアップ: Bluetooth 電話 -> Bluez/PulseAudio [PA] で受信 -> PA「モジュール ループバック」を介して ALSA オーディオ カード シンクへの PulseAudio Bluez ソース -> pulseaudio をソースとして使用して vorbis ストリームをエンコードする Darkice (デバイス = pulse) - > 放送するicecast2

これはうまく機能しますが、電話を一時停止すると、ストリーム (VLC/Squeezebox で受信) が停止します (タイムスタンプの刻みが止まります)。オーディオを再開すると、大きなレイテンシが発生します (一時停止時間と同じ長さだと思います)。長い一時停止の後、ストリームは再開に失敗する可能性があります。Darkice は、音声入力が停止したことをはっきりと確認しています。

PulseAudio に一時停止を何らかの形で無音で埋めるように指示する必要があると思います。ALSA ダミー (snd-dummy) を介してルーティングを試みましたが、一定のノイズが発生しました。jackd を動作させることができませんでした。

Darkice は、OSS、ALSA、および JACK のソースを使用できます。

助けてください、私はすっごく近くにいます!

4

2 に答える 2

1

Raspberry Piを使用して電話のBluetoothをSonosにストリーミングしていたことを除いて、まったく同じ問題がありました.DarkiceのBluetoothオーディオストリームが中断されるたびにSonosがIcecastサーバーから切断されました. Liquidsoap を試してみましたが、自分の bluealsa ストリームを認識できなかったので、Icecast2.xml 構成ファイルでフォールバック ストリームの実験を開始し、1 秒のサイレント mp3 ファイルをエンコードして Darkice ストリームと同じ名前を付けるかどうかを発見しました。それをメインのマウント ポイントとして指定するとストリームが中断されることはありません。 https://www.instructables.com/id/Play-Bluetooth-on-Sonos-Using-Raspberry-Pi/

于 2018-09-25T17:36:58.907 に答える
0

私は解決策を見つけました。

Darkice を削除し、リキッドソープを使用して vorbis ストリームを作成しています。これにはオプション mksafe() があり、着信オーディオ ソースが利用できない場合に無音を送信します。まさに私が欲しかった!

于 2016-02-06T23:00:44.420 に答える