我正在构建一个应用程序,允许用户使用麦克风录制消息,并使用一个名为mic-recorder-to-mp3
的节点包。构造函数采用当前为128
的bit-rate
设置(这对于语音录制来说应该足够了(。
我们已经开始用这个应用程序收集录音,有些很好,但另一些则非常糟糕,点击声很大。
我知道sample-rate
无法设置,而且是基于您使用的硬件,但我还缺少其他东西吗?比特率太高了吗?我需要为AudioBuffer
设置更多内存吗?非常感谢任何建议。
我很高兴地发现,现在您可以在调用getUsermedia
时设置约束,这可以提高音频录制质量。它们在网络音频规范中为MediaTrackConstraints
:https://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);
})