通过sox从多个频道录制

Cip*_*her 5 macos microphone wav sox node.js

我试图通过Sox为我的一个应用程序录制2个不同的麦克风.我目前只是在Mac终端上进行音频录制测试.但是,我只能通过一个麦克风获得音频.

我使用的sox命令是:

sox -b 32 -e unsigned-integer -r 96k -c 2 -d --clobber --buffer $((96000*2*10)) /tmp/soxrecording.wav trim 0 10

这给了我一个很好的.wav文件.

我有两个不同的usb麦克风,它们在声音/系统偏好设置中显示为2通道I/p.我尝试-c 4使用sox命令从两个麦克风录制.

sox -b 32 -e unsigned-integer -r 96k -c 4 -d --clobber --buffer $((96000*2*10)) /tmp/soxrecording.wav trim 0 10

但是,我得到一个警告说; sox WARN formats: can't set 4 channels; using 2

我只能从一个usb麦克风获取音频.我一直试图摆弄并理解什么是错的,但任何提示都会非常有用.

A S*_*ANI 0

您需要指定您正在使用ALSA,然后运行两个不同的 SOX 命令,并且必须指定每个命令使用的硬件。

请参阅soc、play、rec 手册页,基本上您可以-d, --default-device在启动命令时使用参数来指定要使用的设备。

就像(简化的):

sox -r 44100 -c 2 -e s -t alsa hw:4,0 -d 
sox -r 44100 -c 2 -e s -t alsa hw:3,0 -d 
Run Code Online (Sandbox Code Playgroud)

页面和此页面也可能对您有所帮助。