ALSA snd_pcm_open() 的 PulseAudio 虚拟接收器名称是什么

ALSA snd_pcm_open() 的 PulseAudio 虚拟接收器名称是什么

我加载了一个PulseAudio module-null-sink,当我将其设置为系统默认输出设备时,可以ALSA snd_pcm_open(&pcm_handle, "default", SND_PCM_PLAYBACK, 0)成功打开它。现在我需要直接打开虚拟接收器,而不是将其设置为默认,这意味着我必须找到该接收器的正确设备名称。有人提到asoundrcasound.conf文件可能包含所有可用的设备ALSA,但这些文件在我的 ubuntu 上不存在。我还尝试aplay -L列出所有设备,结果发现只有硬件设备,没有虚拟接收器。pacmd list-sinks提供有关虚拟接收器的信息,例如:

* index: 4
    name:<Virtual_Sink_2>
    driver:<module-null-sink.c>
    flags: DECIBLE_VOLUME LATENCY DYNAMIC_LATENCY
    state: SUSPENDED
    priority: 1000
    ......
    used by: 0
    linked by: 1
    ....

但 <Virtual_Sink_2> 不起作用,module-null-sinkALSA 打开的正确名称是什么?谢谢。

答案1

尝试一下pulse:DEVICE=Virtual_Sink_2。只要你的发行版中的 alsa-plugins 包版本(1.2.1 或更高版本,未经篡改)包含以下内容,它就应该可以工作:例如/usr/share/alsa/alsa.conf.d/50-pulseaudio.conf

相关内容