デフォルトでは、プライマリ受信機にフィードバックがないと、パルスオーディオを含む新しい仮想受信機を作成することはできませんが、選択した受信機のみを使用できます。

デフォルトでは、プライマリ受信機にフィードバックがないと、パルスオーディオを含む新しい仮想受信機を作成することはできませんが、選択した受信機のみを使用できます。

私はLinux、Ubuntuを使用しており、オーディオソースpulse audio(マイクなど)にオーディオエフェクトを適用し、それをarecordまたは他のアプリケーションで使用でき、一般的に使用されている新しいシンクにパイプしたいのですが、主なコンテンツに関するフィードバックを受けました。流し台(非分離)。

VirtualSinkモジュールを使用してというダミー受信機を作成しました。モジュールヌル受信機渡す:

pactl load-module module-null-sink sink_name=VirtualSink sink_properties=device.description=Virtual_Sink

私のマイクソースを含むすべてのソースのリストを取得しpactl list sources short、ffmpegを実行してマイクソースを使用してエコーを適用し、以下を介してVirtualSinkのモニタに渡します。

ffmpeg -f pulse -i <mic-source> -af "aecho=0.8:0.9:1000:0.3" -f pulse "VirtualSink.monitor"

仮想リスナーは実際に作成され、arecord / Skypeなどのアプリケーションで表示され、ストリームは通過しますが問題があります。

  • マイクのオーディオはスピーカー/ヘッドフォンで聞くことができます(アプリケーションとメインレシーバーの出力に転送されます)。
  • 数秒後、スピーカー/ヘッドフォンから音が聞こえます(一種のフィードバック)。

ミュートと変更コントロールを見てみpavucontrolましたが、違いはありませんでした。どちらの問題も解決しないままストリームを沈黙させることがあります。 ffmpegが自動的にプライマリシンクにストリーミングするのは問題ですか、それともOSが新しいシンクを通常のフルシンクに送信するのでしょうか?不足している設定がありますか?

フィードバックを受けずにソースからシンクロにオーディオをストリーミングするシンクを作成するには?

ベストアンサー1

おすすめ記事