简体   繁体   English

Matlab中的8通道异步麦克风录音

[英]8 channel async mic recording in matlab

I wanted to record a sequence of sounds (using 8 channel mic array). 我想录制一系列声音(使用8通道麦克风阵列)。

Matlab's audiorecorder system object does not support more than 2 channels async recording. Matlab的audiorecorder系统对象不支持超过2个通道的异步录音。

When I say async, I want to achieve the following: The user will press some key (handled by event handler gui) it will start the recording and then again user will press a key then the system will save the current recording and user starts with next audio in the sequence. 当我说异步时,我想实现以下目标:用户将按某个键(由事件处理程序gui处理)将开始记录,然后再次用户将按一个键,然后系统将保存当前记录,并且用户以序列中的下一个音频。

I can record 8 ch from Matlab using audioDeviceReader system object but for that, I need to call it for each frame so I will have to create a parallel process that will have to communicate with the event handler and the audioDeviceReader. 我可以使用audioDeviceReader系统对象从Matlab录制8通道,但是为此,我需要为每个帧调用它,因此我将必须创建一个并行进程,该进程必须与事件处理程序和audioDeviceReader进行通信。

I don't have much experience will parallel programming? 我没有太多经验可以并行编程吗? Should I look into audiorecorder's code and see if can be trivially changed to support 8 ch (If that was the case I think they would have already done it). 我是否应该研究一下audiorecorder的代码,看看是否可以更改为支持8 ch(如果是这种情况,我认为他们已经做到了)。 Or write code to spawn a parallel process which exposes record and stop functions wrapping over audioDeviceReader which can interface with event listener similar to audiorecorder? 还是编写代码以生成并行过程,该过程公开了封装在audioDeviceReader上的记录和停止函数,该函数可以与类似于audiorecorder的事件侦听器接口? If so how should I proceed? 如果是这样,我应该如何进行?

Well surprisingly removing the num channel error check in the library code worked. 令人惊讶的是,删除了库代码中有效的num通道错误检查。 :) :)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM