Я пытаюсь обернуться, используя API-интерфейс Web Audio для воссоздания чего-то вроде
Winamp 10-полосный эквалайзер.
(источник: head-fi.org)
Из того, что я могу собрать, я должен создать 10 биквадорных фильтров, установить их type
на 2 (для полосового фильтра) и установить их frequency
на [60, 170, 310, 600, 1000, 3000, 6000, 12000, 14000, 16000]
соответственно, Как только я это сделал (и здесь, где я немного запутался), я бы создал отдельный узел усиления для каждой частотной "полосы" и привязал его значение к ползунку.
<input id="someFreqBand" type="range" min="-12" max="12" step="0.1" value="0" onchange="slide()"/>
Если предположить, что все это правильно, то единственный оставшийся шаг - подключить все 10 узлов усиления к аудио-контексту destination
(который, я думаю, возьмет все 10 частотных "полос" и смешает/синхронизирует их вместе). Правильный ли это способ создания 10-полосного эквалайзера Web Audio?
Главное, что меня смущает, это то, как я "соединяю" источник с 10 фильтрами частотных диапазонов (+ связанный узел усиления), поскольку все узлы имеют только один вход или выход (включая пункт назначения).