使用虚拟音频电缆路由音频

Pro*_*ish 5 linux alsa pulseaudio

我正在运行一组需要链接音频的程序。

程序 1 生成需要静默路由到程序 2 的音频,然后程序 2 创建需要静默路由到程序 3 的新音频源。最后,程序 3 创建应该发送到扬声器的音频。

谁能帮我弄清楚实现这一目标的最佳方法是什么?我设法使用“sudo modprobe snd-aloop”将音频从程序 1 静默路由到程序 2,这给了我一个环回设备。

但是现在我被困在如何默默地将该音频路由到程序 3 中。哦,这不能通过管道来实现。

dir*_*rkt 4

Pulseaudio,还是纯粹的 ALSA?Pulseaudio 最简单:创建一个虚拟接收器

pacmd load-module module-null-sink sink_name=tmpsink
Run Code Online (Sandbox Code Playgroud)

并让程序1输出给它。程序2从tmpsink.monitor源中读取。等等。所有这些都可以编写脚本。pacmd help显示更多可能有用的命令,例如list-sink-inputslist-source-outputs、 或move-sink-input以及move-sink-output如果您无法在命令行上为程序指定源和接收器。

在 ALSA 中这样做可能......很有趣。在我尝试在 ALSA 中做到这一点之前,我会尝试使用 Jack 来做到这一点。