7

Web Audio API をいじって、ラップトップのマイクを入力ソースとして使用しています。ただし、入力を聞くとホワイトノイズがたくさん聞こえます。ノイズを減らして音がクリアになるフィルターを作成するにはどうすればよいですか? このような状況で事前に作成されたノイズ フィルターを提供するライブラリはありますか?

4

2 に答える 2

3

'`いくつかの 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 );
    }
})();
于 2015-11-12T23:48:46.160 に答える
0

フル スペクトル ノイズよりもヒスノイズの方が聞こえる場合は、ハイパス フィルターを試してみてください。Web Audio API には、実装できるそのタイプのフィルターがあると思います。

于 2014-02-09T21:40:32.873 に答える