对于我的工作,我们为英语学习者进行在线测试。其中一部分涉及对学生进行语音录音。我们通过适用于Firefox和Chrome的MediaRecorder js API进行此操作。这是一种快速测试大量学生的有效解决方案,但我们发现测试环境有时对高年级学生来说太吵,无法评估学生。
我们希望能够自动检测背景噪声水平是否过高,并警告学生是否过高,但是我对此是否可行表示怀疑。问题的一部分是,大多数背景噪声通常不是我们认为的白噪声,而是由其他应试者的其他人的声音产生的。因此,我不确定典型的SNR算法是否可以区分嘈杂的环境和正常的响应。我只是想问一下周围是否有任何方法可以进行一些自动测量,从而使我们能够识别由于背景噪音很大而难以理解的录音的候选对象。就像我说的那样,我怀疑是否有一个简单的解决方案,但我想我会以防万一。
最佳答案
在测试开始时将倒计时显示在屏幕上:“在3 ... 2 ... 1 ...中开始测试”,并期望学生在倒计时期间保持安静几秒钟。
如果麦克风在至少2秒钟内没有足够安静,请发出声音警告,并给出“无论如何都要继续/重试/退出选择”。如果学生在倒计时期间在讲话,他们会发现它们是噪音,然后重试,不要说话。
关于audio - 有没有一种方法可以可靠地检测音频录音中的背景噪音过多?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37126452/