私は自分のシステムでPulseAudioを使用しており、PulseAudio wikiに従って モニターデバイス を追加するための指示に従いました。モニターデバイス自体は、Audacityなどのアプリで正しく機能し、登録/機能しますが、コマンドラインツールを使用してデバイスを表示させることができません。 aplay -L
はAudacityとほぼ同じリストを返しますが、便利なことにモニターデバイスがありません。
私の最終目標は、Javaアプリで出力を解析し、最終的にそれをFFmpegに渡すことです。Javaオーディオを介してデバイスが存在することを知ることができます2つの一般的な「キャプチャソースポート」としてのAPIが表示されますが、デバイスの名前は提供されません。目標は、ユーザーがある程度使いやすい方法で選択できるようにすることです。
コマンドラインアプリまたはJava API /ライブラリ)を介してモニターデバイスを表示する方法はありますか?
前もって感謝します!
使用 pacmd list-sources
またはpactl list
PulseAudioデバイスを表示するコマンド。名前のみを表示するには、出力をgrepできます。これは PulseAudio FAQ の例です。
$ LANG=C pactl list | grep -A2 'Source #' | grep 'Name: ' | cut -d" " -f2
「.monitor」にgrepを追加すると、モニターデバイスのみを取得できます。
つまり、問題はpulseaudioレベルではなく、alsaレベルで発生しているように見えますか?アルサデバイスを見たい場合は試してみてください。
aplay -l
(しかし、あなたがすでに言及したaplay -Lも同様です)。
pulseaudioはalsaの上にあります。したがって、pactlを見ると、ソフトウェアの別のレイヤーが導入されます...ここでtroubleshooters.com/linux/sound/sound_troubleshooting.htmを参照してください。アルサがサウンドデバイスを見ることができない場合、確かにpulseaudioは見えませんか?