首页 > 解决方案 > 在录制 HTML 音频时避免爆裂声和咔嗒声

问题描述

我正在构建一个应用程序,该应用程序允许用户使用麦克风录制消息,并且正在使用一个名为mic-recorder-to-mp3. 构造函数采用bit-rate当前的设置128(对于录音来说应该绰绰有余)。

我们已经开始使用这个应用程序收集录音,其中一些很好,但另一些则非常糟糕,因为咔哒声和爆裂声很响。

我知道sample-rate无法设置并且基于您正在使用的硬件,但是我还缺少其他东西吗?这个比特率是不是太高了?我需要设置更多的内存AudioBuffer吗?非常感谢任何建议。

标签: html5-audioweb-audio-api

解决方案


我很高兴地发现,您现在可以在通话时设置限制,getUsermedia这可以提高录音质量。它们在网络音频规范中为MediaTrackConstraintshttps ://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints

和用法:

export const audioTrackConstraints = {
  echoCancellation: {exact: false},
  autoGainControl: {exact: false},
  noiseSuppression: {exact: false},
  sampleRate: 16000,
  }
navigator.mediaDevices.getUserMedia({ audio: audioTrackConstraints})
.then(() => {
  console.log('Permission Granted');
})
.catch((error) => {
  console.log(error.message);
})

推荐阅读