我想测试一个手工制作的麦克风的性能,所以我录制了相同的音频源,有或没有麦克风,并有两个文件。有没有办法比较两个文件的音量,以便我知道麦克风实际上有效?
可能的解决方案是Python或Audacity中的包吗?
答案 0 :(得分:1)
你想要通过响度进行比较。对此的最低精确度量是 A加权RMS 。 RMS是均方根,即。所有样本值的平方均值的平方根。这被低频能量显着抛弃,因此您需要应用频率加权。通常使用A曲线。
这里的答案解释了如何使用Python执行此操作,但没有详细说明如何应用加权曲线:Using Python to measure audio "loudness"
似乎没有使用Audacity执行此功能的内置函数,但可以使用可行的插件,例如:http://forum.audacityteam.org/viewtopic.php?f=39&t=38134&p=99454#p99454
另一个有希望的路线可能是ffmpeg,但我找到的所有选项都标准化或标记文件,而不是简单地打印测量。您可以查看http://r128gain.sourceforge.net/(它使用LUFS,更复杂的响度测量)。
更新以获得快速且脏的非加权RMS读数,看起来您可以使用https://trac.ffmpeg.org/wiki/AudioVolume中的以下命令:
ffmpeg -i input.wav -filter:a volumedetect -f null /dev/null
这个问题可能最好迁移到Sound Design Stack Exchange。