2つのオーディオストリームをミキシングする方法のガイドライン

2つのオーディオストリームをミキシングする方法のガイドライン

放送設定の場合は、入力デバイスのオーディオを.wavファイルのオーディオとミキシングしたいと思います。 .wavファイルには、放送中のある時点で音楽に追加したいイントロ、スタンバイ、または終了音楽が含まれています。

以下の設定が対象です。 ここに画像の説明を入力してください。

いくつかのステップが必要です。

  1. 2つのストリームの追加/混合
  2. モノラルに変換する(または最初にこれを行う必要があるかもしれません)
  3. ストリームをブロードキャストストリームとVUテーブルに分割
  4. ローカルオーディオ出力にストリームを送信する

これは可能だと確信していますが、インターネット上で解決策を見つけることができません。 alsaの.asoundrcを掘り下げても結果は出ませんでした。 dmixもミキシングしているようですが、私は望んでいません...

本当にどこから始めるべきかわかりません。

誰かがこれを説明できますか?部分的な解決策も素晴らしいです!

ベストアンサー1

最も簡単な方法はPulseaudioを使用することです。 (ALSAを使用してこれを実行できますが、設定するのは難しいです。)

サウンドを生成するすべては、現在の出力(Pulseaudio用語で「受信機」)で自動的にミキシングされるため、ミキシングについて心配する必要はありません。制御ボリュームを使用できpavucontrol、アプリケーション名別に最後のボリュームを記憶します。コマンドラインを使用してwavファイルを再生できますが、paplay他のオーディオプレーヤーも機能します。

受信機がモノラルの場合、自動的にモノラルに変換されます。これを行うためにローカルRaspPiリスナーを設定できない場合(RaspPiがないため、わかりません)、「偽の」リスナーを追加できます。

pactl load-module module-null-sink sink_name=whatever

または、Pulseaudioで再マッピングする必要があることが判明した場合module-remap-sink(下記参照、直接試していません)。

.monitorこのシンクまたはローカルRaspPiシンクには、icecastなどに展開するために使用できる関連ソースがあります。

hw:1入力を選択した受信機の永続フィードに設定できます。

pacmd load-module module-loopback source="alsa_input.name_of_hw_1" sink="whatever_or_local_sink"

利用可能な受信者名を一覧表示できます。

pacmd list-sinks | grep name:

パラメータには山かっこなしで名前を使用してください。

私はそれが基本だと思います。利用可能なPulseaudioについて学ぶ基準寸法pacmd help使用したくない場合はお知らせしますpavucontrol

編集する~のためアルザス:

まず、利用可能なアイテムについて読んでください。プラグイン。オーディオをダーキスなどにルーティングするには、「仮想サウンドカード」が必要です。これはカーネルモジュールなので、次のようにしてください。

sudo modprobe snd-aloop pcm_substreams=2

/etc/modprobe.dテストに使用し、作業中にファイルを挿入してみてください。ループバックがあるとしますhw:3,*,*

仮想サウンドカードの入力側には、次のものが必要です。

dmix "main_in" --> プラグ(slave.channels = 1) --> hw:3,0,0

だからあなたはaplay -D main_in sound.wav実行することができます

alsaloop -C hw:0 -P main_in

オーディオコレクタに接続します。

仮想サウンドカードの出力から次のようになります。

ハードウェア: 3,1,0 --> dsnoop "main_out"

ローカルオーディオ出力でもう一度監視してください。

alsaloop -C main_out -P local_audio_out

darkiceその後、VUテーブルを直接実行できますmain_out。さて、arecord -D main_out -d 0 -vv /dev/nullそれは良いテストVUメーターです。

上記のリンクから構文の詳細を読んでください。私はこれを試してみません。矢印は-->プラグインのマスターとスレーブの関係を示します。ループバックはカーネル空間と多数のユーザ空間アプリケーションを通過するため、遅延時間がひどいことがあります。

Pulseaudioが機能しない場合は、他のオプションがありますが、jack設定の経験はありません。

おすすめ記事