JACK、PulseAudio、Firefox: 近い将来、Firefox で JACK を有効にする

JACK、PulseAudio、Firefox: 近い将来、Firefox で JACK を有効にする

Firefox のバグ #1345661 は「WONTFIX」でクローズされましたが、これは近い将来に現在のセットアップに確実に影響を及ぼします (Firefox のサウンドを ->JACK で再生していますalsa_in) loopback。Firefox では現在 JACK がサポートされていると読みましたが、まだ安定していません。質問:

  1. Firefox での JACK サポートは正式にサポートされますか?
  2. Ubuntu は、ALSA の生のサポートが終了する前に、Firefox で JACK サポートを有効にする予定ですか?

答えは「いいえ」です。JACK を壊さずに機能を確実に復元するにはどうすればよいでしょうか? PA を 経由で実行することは可能ですalsa_inが、それによって余分な遅延が発生したり、AV 同期が壊れたり、複数のリサンプラーによって信号が歪んだりするのではないかと思います。

答え1

私は「pulsejack」という次のスクリプトを使用します。引数なしで呼び出すと、既存のものをjackdPulseAudio に接続します。引数を付けて呼び出すと、それらの引数で起動しjackd、PulseAudio に接続します。その後、Firefox は PulseAudio から取得できます。

#/bin/sh
if [ $# -gt 1 ]
then
    killall jackd 2> /dev/null && sleep 2
    jackd "$@" && sleep 2
fi
pactl load-module module-jack-sink channels=2
pactl load-module module-jack-source channels=2
pacmd set-default-sink jack_out
pacmd set-default-source jack_in

sudo apt install pulseaudio-module-jack それぞれのモジュールを取得するには、を実行する必要がある場合があります 。

答え2

mozilla-central firefox を jack サポートと出力付きでコンパイルしました (ソース) オーディオのあるサイト (例: youtube) にアクセスすると自動的に作成されます。

ただし、入力シンク ソースは作成されません。cadence/jack パッチ ベイに表示されません。そのため、マイク入力に依存するものはすべて失敗します。つまり、meet.jit.si / webrtc テストなどです。


もう 1 つの問題は、pulseaudio ブリッジを使用しても、同じ問題が発生することです。入力ソースは、パルスシンクに正しく接続されていても、Firefox によって認識されません。ただし、Chrome では、マイク入力は、プラグインされたキャプチャをパルスシンクに正しく使用します。したがって、これは、マイクの存在情報を検出して報告する方法における Firefox のバグであると考えられます。

私の個人的な見解としては、入力/キャプチャ シンク ソースは、ジャックのみの場合の出力ソースのようにタブ/サイトごとに作成するのではなく、Firefox の起動時に作成する必要があります。

関連情報