BiquadFilterNode.getFrequencyResponse()

BiquadFilterNode.getFrequencyResponse() - обчислює частотну характеристику для заданих частот.

Синтаксис:

BiquadFilterNode.getFrequencyResponse(frequencyArray, magResponseOutput, phaseResponseOutput);

Параметри:

BiquadFilterNode - об'єкт BiquadFilterNode.

frequencyArray - масив частот типу Float32Array який потрібно фільтрувати, зазначений в Герцах.

magResponseOutput - вихідний масив типу Float32Array який отримує обчислені величини Freqency для кожного значення частоти в frequencyArray.

phaseResponseOutput - вихідний масив типу Float32Array який отримує обчислені значення відгуку фази в радіанах для кожного значення частоти в frequencyArray.

Опис:

getFrequencyResponse() - метод об'єкта BiquadFilterNode який обчислює частотну характеристику для заданих частот.

Приклад:

if(window.AudioContext){ var audio=new AudioContext(); var bFiltr=audio.createBiquadFilter(); var oscilator=audio.createOscillator(); var frequencyArray=new Float32Array(3); frequencyArray[0]=100; frequencyArray[1]=150; frequencyArray[2]=200; magResponseOutput=new Float32Array(3); phaseResponseOutput=new Float32Array(3); oscilator.start(); oscilator.stop(3); bFiltr.getFrequencyResponse(frequencyArray, magResponseOutput, phaseResponseOutput); alert('magResponseOutput: '+magResponseOutput); alert('phaseResponseOutput: '+phaseResponseOutput); }else alert('Ваш браузер не підтримує Web Audio');
if(window.AudioContext){ var player = document.getElementById('player'); var audio = new AudioContext(); var source = audio.createMediaElementSource(player); bFiltr=audio.createBiquadFilter(); source.connect(bFiltr); bFiltr.connect(audio.destination); bFiltr.frequency.value=1000; frequencyArray=new Float32Array(5); frequencyArray[0]=1000; frequencyArray[1]=1500; frequencyArray[2]=2000; frequencyArray[3]=3000; frequencyArray[4]=3500; magResponseOutput=new Float32Array(5); phaseResponseOutput=new Float32Array(5); player.play(); //включаємо відтворення bFiltr.getFrequencyResponse(frequencyArray, magResponseOutput, phaseResponseOutput); document.getElementById('results').innerHTML='<p><b>magResponseOutput:</b> '+magResponseOutput+'</p><p><b>phaseResponseOutput:</b> '+phaseResponseOutput+'</p>'; }else alert('Ваш браузер не підтримує Web Audio');