2023/08/22

HooverSynth

Try HooverSynth (github.io)
Read Source Code (github.com)

HooverSynth is a hoover sound synthesizer.

Original hoover sound is made from Alpha Juno or MKS-50. This time, I spent more time on researching Alpha Juno rather than writing code. Following is a list of links I used while developing HooverSynth.

---

HooverSynth を試す (github.io)
ソースコードを読む (github.com)

HooverSynth はフーバーサウンドに特化したシンセサイザです。

元のフーバーサウンドは Alpha Juno や MKS-50 といったシンセサイザで作られていたそうです。今回はコードを書いているよりも Alpha Juno の動作とレシピを調べる時間のほうが長くかかりました。以下は作るときに参考にした資料の一覧です。

2023/08/19

ResonantDrop

Try ResonantDrop (github.io)
Read Source Code (github.com)

ResonantDrop is a synthesizer that is made to test resonators. It can resemble the sound of small falling objects by using a multi-tap delay that shifts the start of the sound.

Complex one-pole resonator is used. I was wondering that if I could utilize this complex filter, and took imaginary part without much thought. It turned out that the gain response looks similar to second-order resonator.

Transfer function of real and imaginary output of complex resonator is currently documented as a comment in source code.

---

ResonantDrop を試す (github.io)
ソースコードを読む (github.com)

ResonantDrop はレゾネータを試すために作ったシンセサイザです。音の出だしをずらすディレイによって複数の小さな物が落ちたときのような音を作ることができます。

今回使ったレゾネータは 1 次複素レゾネータ (complex one-pole resonator) です。適当に虚部だけを取り出してみたところ、 2 次レゾネータの特性と似ていたのでそのまま使いました。

複素レゾネータの実部と虚部だけを取り出したときの伝達関数をソースコードのコメントに書いています。

2023/08/14

AdaptiveNotchComb

Try AdaptiveNotchComb (github.io)
Read Source Code (github.com)

AdaptiveNotchComb is a metallic sound synthesizer using a combination of serially connected comb filters and serially connected adaptive notch filters. Each comb filter also has an adaptive notch filter on their feedback path.

Adaptive notch filter is quite good at suppressing tones of feedback comb filter. However, this notch filter increases gain. So I made an attempt to normalize the maximum gain to 0 dB. It seems to be working on feedback path, but blows up when serially connected.

Edited on 2023-08-15: The gain normalization was wrong. It's fixed now.

---

AdaptiveNotchComb を試す (github.io)
ソースコードを読む (github.com)

AdaptiveNotchComb は直列につないだコムフィルタと、直列につないだ適応ノッチフィルタの組み合わせで金属音を出すシンセサイザです。各コムフィルタのフィードバック経路にも適応ノッチフィルタを挟んでいます。

適応ノッチフィルタはフィードバックコムフィルタのトーンを抑えて聞きやすい音に整えてくれます。ただし、カットオフ周波数から離れた部分はゲインが上がるという難点があります。最大ゲインが 0 dB となるように正規化を試みたところ、コムフィルタのフィードバック経路ではうまくいったのですが、直列につなぐと発散することがありました。

2023-08-15 追記: ゲインの正規化の実装が間違っていたので修正しました。

2023/08/09

SlipOutComb

Try SlipOutComb (github.io)
Read Source Code (github.com)

SlipOutComb is a network of feedback comb filters that modulates band-pass cutoff to trying to slip out from blowing up condition. Note that sometimes SlipOutComb fails to slip out and outputs silence.

Internally, several comb filters are connected as a feedback delay network (FDN). Number of comb filters can be changed by `FDN -> Matrix Size`.

When it blows up, try reducing following parameters from top to bottom.

  • FDN -> Cross Feedback Decay
  • Comb -> Feedback Decay
  • Comb -> Delay
  • Comb -> Cut Modulation Rise/Fall

---

SlipOutComb を試す (github.io)
ソースコードを読む (github.com)

SlipOutComb は発散からすり抜けるようにバンドパスのカットオフを変調するフィードバックコムフィルタです。ただし SlipOutComb は発散状態からすり抜けることに失敗して無音を出力することがあるので注意してください。 

内部では複数のコムフィルタがフィードバックディレイネットワーク (FDN) として互いに接続されています。コムフィルタの数は `FDN -> Matrix Size` から変更できます。

発散したときは以下のパラメータを順番に下げてみてください。

  • FDN -> Cross Feedback Decay
  • Comb -> Feedback Decay
  • Comb -> Delay
  • Comb -> Cut Modulation Rise/Fall

2023/08/04

FMGlassyPad

Try FMGlassyPad (github.io)
Read Source Code (github.com)

FMGlassyPad is an ordinary FM synthesizer specifically tailored for glassy pad sounds.

Same sound can be made from any FM synthesizers with unison. Corresponding DX7 algorithm (connection of oscillators) are number 5 or 6. I first created the recipe on Sytrus, then ported it as a web synthesizer.

The character is similar to additive synthesizer. It's easy to make dense tone cluster of sine waves.

Reverb acts like a pitch shifter. To remove low frequencies, set "Reverb → Mix" to minimum value.

---

FMGlassyPad を試す (github.io)
ソースコードを読む (github.com)

FMGlassyPad はガラスのような高くて澄んだ質感の音が出るようにチューニングした FM シンセサイザです。

ユニゾンつきの FM シンセサイザであれば、どれでも FMGlassyPad と同じ音を出すことができます。オシレータの接続は DX7 のアルゴリズムで言うと 5 あるいは 6 です。元は Sytrus で作ったレシピですが、曲ごとに調整する手間を省くために Web シンセへと移植しました。

音は加算合成に近いです。密度の高いサイン波のトーンクラスターを簡単に作れます。

"Reverb" は実質ピッチシフターとして動作します。低音が不要なら "Reverb → Mix" を最小に設定してください。