首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过sox实现多路录制

通过sox实现多路录制
EN

Stack Overflow用户
提问于 2018-01-12 00:38:43
回答 1查看 1.6K关注 0票数 5

我正试着通过Sox为我的一个应用程序录制两个不同的麦克风。我目前只是在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。我尝试使用sox命令执行-c 4,以便从两个麦克风进行录音。

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麦克风中获得音频。我一直在试着弄清楚哪里出了问题,但任何提示都会很有帮助。

EN

回答 1

Stack Overflow用户

发布于 2018-01-24 17:07:10

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

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

类似于(简化):

代码语言:javascript
复制
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 

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48211939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档