我正在使用插入树莓派的Playstation Eye。我让Raspberry Pi识别了PSEye的内置麦克风阵列,并且可以使用以下方式采样输入电平
arecord -vv /dev/null -r 16000 -f S16_LE -c 4 -D iec958:CARD=CameraB409241,DEV=0 /dev/null < /dev/null
现在很明显,这显示了所有4个通道的电平总和。我想做的是分别记录每个 channel 。是否可以使用ALSA API?
我看过这个http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html
看看这个http://www.linuxjournal.com/article/6735?page=0,2
但似乎都没有我需要的东西。我想这也类似于通过ALSA对立体声麦克风的两个通道进行采样。最终,我希望能够在特定的时间点从每个麦克风采样dB。
最佳答案
要读入每个通道的单独缓冲区,请将SND_PCM_ACCESS_RW_INTERLEAVED替换为SND_PCM_ACCESS_RW_NONINTERLEAVED,并将snd_pcm_readi替换为snd_pcm_readn。
关于audio - 使用ALSA API记录每个 channel ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22101579/