Для каждого BiquadFilterNode
используйте getFrequencyReponse
, чтобы получить частотную характеристику фильтра, используя тот же массив frequencyHz
. Каждый из них будет иметь массив magResponse
. Умножьте их вместе, поэлементно, чтобы получить комбинированный ответ.
Элемент 0 - это усиление D C. Вы можете использовать это (обратное) для значения усиления GainNode. Но это может позволить обрезать другие частоты, поэтому вы можете найти наибольшее значение в комбинированном ответе и использовать его. Однако это может привести к очень низкой громкости в зависимости от используемых фильтров.