Alsa
如何使用 ALSA 和/或 Pulse“發布”音頻源以供其他程序使用?
我想創建一個動態命名的音頻源,然後我的系統上的其他程序可以引用它。例如這樣的:
gst-launch-1.0 audiotestsrc ! alsapubsink name='Test Source'
然後我會在其他程序中引用它,例如:
gst-launch-1.0 alsasrc device='Test Source' ! ... ! autoaudiosink
當然沒有
alsapubsink
元素。是否有任何方法可以使用 ALSA 或 Pulse 或其他我不知道的工具來做這種事情?
在 Pulseaudio 中:製作一個“空”接收器
pacmd load-module module-null-sink sink_name=public-sink-1 sink_properties=device.description=Public-Sink-1
然後使用
pavucontrol
, 命令行選項或應用程序菜單選項(如果可用)將您想要“引用”的所有聲音輸出重定向到此接收器。每個 Pulseaudio 接收器都有一個關聯的
.monitor
源,因此其他應用程序可以以正常方式記錄或處理來自該關聯源的音頻(即選擇源pavucontrol
等)。