我通过NoMachine远程运行运行CentOS 7的Linux VM。 NoMachine将客户端的麦克风作为脉冲音频源提供。我可以使用Audacity从pulseaudio源录制。但是,其他应用程序 - Chrome,Firefox,Slack,WebEx - 看不到或不识别脉冲音频源作为麦克风。 test.webrtc.org说[ FAILED ] Failed to get access to local media due to error: NotFoundError
。
pacmd list-sources
显示:
2 source(s) available.
index: 1
name: <nx_voice_out.monitor>
driver: <module-null-sink.c>
* index: 2
name: <nx_audio_in.monitor>
driver: <module-null-sink.c>
如何让应用程序将pulseaudio源识别为麦克风?
通过重新映射源来实现它:
pacmd load-module module-remap-source master=nx_voice_out.monitor source_name=Microphone
我不知道为什么会这样,因为我所做的就是基本上重命名源代码。我没有重新映射原始源的任何属性。也许应用程序不喜欢原始源名称中的.monitor
。
我还需要在空闲模块上卸载挂起:
pacmd unload-module module-suspend-on-idle
否则,pulseaudio有时会暂停重新映射的源,我无法取消它。