版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
项目量产过程中需要验证麦克风的好坏,需要通过麦克风录音,查看录音数据确定麦克风的好坏,但实际过程中产品有4个麦克风,录音回来的数据需要做数据分离,然后才能确定到底哪个麦克风出现问题。
这个问题已经在StackOverflow中有答案了Decode audio stream channels to multiple wavs using ffmpeg?
麦克风原始数据,使用arecord录音4个通道的数据
arecord -Dhw:0,3 -d $2 -c 8 -r 16000 -f S16_LE /tmp/tmp.wav
![[ 音频篇 ] 如何实现麦克风多个音频流通道数据的分离 - 程序手艺人 - 有趣有能量 - CSDN博客 - 图1](/uploads/projects/dmklx@ucgk6w/7b439a7d43a8fc159b2aa42c92912259.png)
经过ffmpeg 分离出每个通道的数据
ffmpeg -i INPUT -map_channel 0.0.0 OUTPUT_CH0 -map_channel 0.0.1 OUTPUT_CH1
![[ 音频篇 ] 如何实现麦克风多个音频流通道数据的分离 - 程序手艺人 - 有趣有能量 - CSDN博客 - 图2](/uploads/projects/dmklx@ucgk6w/8efc877dad9c863f1cf01cc9b8933790.png)
ffmpeg 官方文档中也有说明
![[ 音频篇 ] 如何实现麦克风多个音频流通道数据的分离 - 程序手艺人 - 有趣有能量 - CSDN博客 - 图3](/uploads/projects/dmklx@ucgk6w/42d753f7679198706b36248997bbe0df.png)
文章最后发布于: 2018-12-05 21:11:12
