64 位 Windows 上的 SoX - 如何选择输出设备

64 位 Windows 上的 SoX - 如何选择输出设备

我已经使用 VAC 创建了 3 个虚拟声音设备,现在我想启动 3 个 sox 实例并让每个实例在播放 wav 文件时使用单独的声音设备进行输出。

命令sox.exe file.wav -d将文件播放到默认声音设备。如何强制它使用不同的声音设备?

答案1

尝试

sox d:\AUDIO\02.wav -t waveaudio 0

答案2

复制自这里

waveaudio(可选)

MS-Windows 原生音频设备驱动程序。示例:

 sox infile −t waveaudio
 sox infile −t waveaudio default
 sox infile −t waveaudio 1
 sox infile −t waveaudio "High Definition Audio Device ("

如果省略设备名称、-1 或默认,则您将获得“Microsoft Wave Mapper”设备。Wave Mapper 表示“使用系统默认音频设备”。您可以通过操作系统控制面板控制“默认”的含义。

如果给定的设备名称是其他数字,则可以通过索引获取该音频设备;因此,使用设备名称 0 进行录音将获得第一个输入设备(可能是麦克风),1 将获得第二个输入设备(可能是线路输入)等等。使用 0 进行播放将获得第一个输出设备(通常是唯一的音频设备)。

如果给出的设备名称不是数字,SoX 会尝试将其(最多 31 个字符)与可用设备的名称进行匹配。

另请参阅play(1)、rec(1)和sox(1) −d。

我不完全确定在哪里可以查看设备列表,但我怀疑在 Windows 10 中它是下面的列表Settings > Sound > Manage Sound Devices

设备“立体声混音”似乎对我有用,并且它列在屏幕上。这会将“立体声混音”输入记录到文件中:

sox -t waveaudio "Stereo Mix" out.wav

另请注意,您可以运行它sox --help,它会列出可用的音频驱动程序。对我来说,这只是waveaudio,但也许还有其他。我不知道。

相关内容