Skip to content

Commit

Permalink
feat: Notch Filter (BiquadFilterNode)
Browse files Browse the repository at this point in the history
  • Loading branch information
Korilakkuma committed Dec 3, 2024
1 parent 46fb2b6 commit 6f48b4a
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/docs.js
Original file line number Diff line number Diff line change
Expand Up @@ -7255,3 +7255,4 @@ renderFrequencyResponse(document.getElementById('svg-figure-filter-response-band
renderFrequencyResponse(document.getElementById('svg-figure-filter-response-lowshelf'), 'lowshelf');
renderFrequencyResponse(document.getElementById('svg-figure-filter-response-highshelf'), 'highshelf');
renderFrequencyResponse(document.getElementById('svg-figure-filter-response-peaking'), 'peaking');
renderFrequencyResponse(document.getElementById('svg-figure-filter-response-notch'), 'notch');
32 changes: 32 additions & 0 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -8033,6 +8033,38 @@ <h5>Peaking Filter</h5>
<figcaption>Peaking Filter のフィルタ特性</figcaption>
</figure>
</section>
<section id="section-effectors-filter-biquad-filter-node-notch">
<h5>Notch Filter</h5>
<p>
<b>Notch Filter</b> (<b>帯域除去フィルタ</b>) とは, <b>中心周波数</b> (<span class="inline-math">$f_{\mathrm{computed}}$</span>)
付近の周波数成分を遮断して, それ以外の周波数成分を通過させるフィルタです. (厳密には, その定義が異なる点はありますが)
<b>Band-Elimination Filter</b> (<b>帯域阻止フィルタ</b>) と呼ばれることもあります.
</p>
<p>
Notch Filter における, <b><code>Q</code></b> プロパティは, Band-Pass Filter と同様に, 中心周波数を基準にした帯域幅に影響を与えます.
<code>Q</code> プロパティの値を大きくするほど, 中心周波数付近の帯域幅が狭くなります (急峻になります).
<b>0 以下の値を設定すると, 中心周波数として機能しなくなるので, 正の値を指定するようにします</b>.
</p>
<p>対となる Band-Pass Filter と比較すると, 同じ <code>Q</code> プロパティの値でも, 中心周波数付近の帯域幅が狭くなっています.</p>
<p>
Notch Filter においても, <b><code>gain</code></b> プロパティは無効で, フィルタ特性に影響を与えることはありません.
</p>
<figure>
<div class="app-headline">
<label for="range-filter-notch-frequency">frequency</label>
<input type="range" id="range-filter-notch-frequency" value="350" min="1" max="8000" step="1" />
<span id="print-filter-notch-frequency">350 Hz</span>
<label for="range-filter-notch-detune">detune</label>
<input type="range" id="range-filter-notch-detune" value="0" min="-1200" max="1200" step="1" />
<span id="print-filter-notch-detune">0 cent</span>
<label for="range-filter-notch-Q">Q</label>
<input type="range" id="range-filter-notch-Q" value="1" min="1" max="20" step="1" />
<span id="print-filter-notch-Q">1</span>
</div>
<svg id="svg-figure-filter-response-notch" width="600" height="300" />
<figcaption>Notch Filter のフィルタ特性</figcaption>
</figure>
</section>
</section>
</section>
</section>
Expand Down

0 comments on commit 6f48b4a

Please sign in to comment.