解决方案:使用 pulseaudio
Win 服务端
下载
下载 Windows 上的 pulseaudio 作为服务端,下载完毕后解压到任意文件夹,假设是 C:\pulseaudio\
修改 'etc\pulse\default.pa'
Line 42 | |
FROM | load-module module-waveout sink_name=output source_name=input |
TO | load-module module-waveout sink_name=output source_name=input record=0 |
请注意,出于安全和隐私考虑,Windows 10(2018年4月更新)似乎限制了对录音设备的访问。 您可能可以以某种方式改写此功能,但是由于我们只想听声音,我们只是通过添加'record = 0'从PulseAudio服务器禁用它。
Line 61 | |
FROM | #load-module module-native-protocol-tcp |
TO | load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 |
这使得PulseAudio服务器能通过TCP从127.0.0.1接受连接。
修改 'etc\pulse\daemon.conf'
Line 39 | |
FROM | ; exit-idle-time = 20 |
TO | exit-idle-time = -1 |
如果将此选项设置为非负值,则当最后一个客户端断开连接并且经过的时间超过此选项(以秒为单位)时,服务器将自动终止自身。
启动服务端
cd C:\pulseaudio\bin .\pulseaudio.exe
测试服务端
打开 PowerShell 执行
.\paplay.exe -p --server=tcp:localhost C:\Windows\Media\ding.wav
WSL 客户端
安装
sudo apt install pulseaudio
导出环境设置
export PULSE_SERVER=tcp:127.0.0.1;
0 Comments (3110 Views)
Leave a Reply