我一直在使用Web Audio API,并使用笔记本电脑的麦克风作为输入源。但是,当我听到输入时,我可以听到很多白噪声;我如何创建一个过滤器来降低噪声,使声音更清晰?有没有为这种情况提供预先编写的噪声过滤器的库?
发布于 2015-11-13 07:48:46
我正在研究一些POC,并用BiquadFilter减少笔记本电脑的“寿命鼻子”。我也用过空压机,但你不必))
(function(){
var filter, compressor, mediaStreamSource;
// Start off by initializing a new context.
var context = new (window.AudioContext || window.webkitAudioContext)();
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia;
navigator.getUserMedia( {audio:true}, initAudio , function(err){
console.log('usermedia error', err)
});
function initAudio(stream) {
compressor = context.createDynamicsCompressor();
compressor.threshold.value = -50;
compressor.knee.value = 40;
compressor.ratio.value = 12;
compressor.reduction.value = -20;
compressor.attack.value = 0;
compressor.release.value = 0.25;
filter = context.createBiquadFilter();
filter.Q.value = 8.30;
filter.frequency.value = 355;
filter.gain.value = 3.0;
filter.type = 'bandpass';
filter.connect(compressor);
compressor.connect(context.destination)
filter.connect(context.destination)
mediaStreamSource = context.createMediaStreamSource( stream );
mediaStreamSource.connect( filter );
}
})();发布于 2014-02-10 05:40:33
如果你听到的是一种低沉的声音而不是全频谱的噪声,你可以尝试一种高通滤波器。我相信Web Audio API具有您可以实现的过滤器类型。
https://stackoverflow.com/questions/16949768
复制相似问题