从Windows输出设备到Linux的流媒体音频
问题描述:
我已经能够使用LineInCode,plink(Putty)和PulseAudio将输入设备在Windows中的音频流式传输到Linux机器上,但不幸的是没有选择Window输出设备与LineInCode所以我决定做一个程序,它确实。从Windows输出设备到Linux的流媒体音频
A program开发的Matthew van Eerde已经做了大部分的工作。您可以选择一个输出设备并录制一个wav文件。因此,我不应该写入文件,而应该将它发送到stdout,plink和pacat会完成剩下的工作。用他的程序“录制”的音频格式是WAVE_FORMAT_EXTENSIBLE(SubFormat),它应该作为PCM流式传输到pacat。所以我的问题是如何从SubFormat转换为PCM音频格式?
下面是用LINCO命令:
linco.exe -B 16 -C 2 -R 44100 | plink -v 192.168.11.5 -l armbian -pw 1234 "cat - | pacat --playback"
PS:我已经尽力做到客观,因为我可以,遗憾的长期职位。如果你对如何缩短它有一个想法,请告诉我如何。
答
记录在窗口输出设备的格式是PCM浮32位小端所以pacat需要被配置为能够以相应地接收这种格式。我在github上发布了这个项目。还需要以二进制配置输出数据并使用fwrite函数,因为printf不能跟上数据输出。
在那里见。