Note that there are some explanatory texts on larger screens.

plurals
  1. POCreating a 10-Band Equalizer Using Web Audio API
    primarykey
    data
    text
    <p>I'm trying to wrap my head around using the Web Audio API to recreate something like<br> Winamp's 10-band equalizer.</p> <p><img src="https://cdn.head-fi.org/3/3d/1000x500px-LL-3da00ebd_winamp-eq.png" alt="Winamp&#39;s 10-band equalizer"></p> <p>From what I can gather, I have to create 10 <a href="https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#BiquadFilterNode-section" rel="nofollow noreferrer">Biquad Filters</a>, set their <code>type</code> to <a href="https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#BANDPASS" rel="nofollow noreferrer">2 (for a Bandpass filter)</a> and set their <code>frequency</code> to <code>[60, 170, 310, 600, 1000, 3000, 6000, 12000, 14000, 16000]</code> respectively. Once I have done that (and here's where I'm getting a little confused) I would then create a separate <a href="https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#AudioGainNode-section" rel="nofollow noreferrer">Gain Node</a> for each frequency "band" and bind its value to a slider.</p> <pre><code>&lt;input id="someFreqBand" type="range" min="-12" max="12" step="0.1" value="0" onchange="slide()"/&gt; </code></pre> <p>Assuming all of that is correct, then the only remaining step is to connect all 10 gain nodes to the Audio Context <code>destination</code> (which I imagine will take all 10 frequency "bands" and mix/sync them back together). Is this the right way to go about creating a Web Audio 10-band equalizer?</p> <p>The major thing I'm confused about is how I go about "connecting" the source to the 10 frequency band filters (+ associated gain node) since all the nodes only have a single input or output (including the destination).</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload