Wave Folderは管楽器シミュレート。歪ませるだけではありません。
![]() |
| シンプルになりま・・・どうだろう? |
直列の仕方。音色の作り方です。
- 0付近の折り返しモード:一段目のCVは入力波形の半分の電圧で出力も半分になります。後段のCVも同じです。最終段で2乗で少なくなった電圧を元の電圧に上げれば良いでしょう。1/2,1/4,1/8・・・と折ります。
- 頂点付近の折り返しモード:一段目のCVは入力波形の電圧を+5Vだとしたら5分割してCVは4V付近で使います。後段は3V、さらに後段は2V,1Vとして最後は5倍増幅すると良いでしょう。4/5,3/5,2/5,1/5と折ります。現実的には1.0,1.051,1.1
- 折返し最大モード:究極の折返しは最大入力電圧の1/3です。折り返しは2/3となり、逆現象にも最大として出力されます。AGC回路で常に追従できれば常にフォルマントが維持されたVL-1みたいな音色になります。現状は閾値を超えないとFoldしませんので柔らかいイメージになります。
- 0付近と頂点付近の折り返しを併せたモード:原音にノイジーな歪がちょっと追加された音で、何の音でしょう?あまり使いません。
一般的にはVCAのCVを調整して出力するのですがコストが高いです。それも正解です。
音色を作るのに規則性を加えるならばその規則性から増幅率を調整すればVCAは使わなくてよいのです。
| N | 閾値 T (V) | 5Vの補数(V) |
|---|---|---|
| 1 | 5.000 | |
| 2 | 2.500 | |
| 3 | 3.333(折返し最大モード) | 1.667 |
| 4 | 3.750 | 1.25 |
| 5 | 4.000 | 1 |
| 6 | 4.167 | 0.833 |
| 7 | 4.286 | 0.714 |
| 8 | 4.375 | 0.625 |
| 9 | 4.444 | 0.556 |
| 10 | 4.500 | 0.5 |
| 11 | 4.545 | 0.455 |
閾値と倍音の関係をAIに可視化してもらいました。
| オーディオマニアは偶数倍音好き。5段まで。 |
話はそれますが7次倍はオルガンの世界ではあり得ない合成です。
歪ませる事です。
グラフィックイコライザーのようにパラレルワールドな管楽器を作る。
二値ではなくスレッショルドで一度だけ折り返す「ワンフォールド」波形整形回路の場合、並列合成と直列合成はまったく別物になります。理由と、16段まで拡張した場合の収束先を順に説明します。
折り返し関数の定義
閾値 T での1回折り返しは
これは「V字」の反転で、振幅を丸め込む(clip)のではなく、閾値を超えた分だけ符号反転して伸び続ける関数です(振幅無限大まで単調に折り返し続けるわけではなく、1回反射したらそのまま線形に落ちていく点がポイント)。
2個・並列 vs 直列(T1<T2)## 並列合成(2個)
単純な足し算 $y = f_{T_1}(x) + f_{T_2}(x)$ です。$T_1<T_2$ とすると
- $|x| \le T_1$: 両方とも直線 → 傾き2
- $T_1 < |x| \le T_2$: 片方だけ折り返し → 傾きゼロの平坦域(プラトー)
- $|x| > T_2$: 両方折り返し → 傾き−2
つまり「立ち上がり→平ら→下降」という台形状の波形になり、単一フォールドより角が増えた滑らかな折り返しカーブになります。
直列合成(2個)
直列は合成関数 $f_{T_2}(f_{T_1}(x))$ です。ここで重要なのは、この1回折り返し関数は振幅を有界にクリップするのではなく反射して線形に落ち続けるので、入力が大きいと1段目で折り返した値が再び2段目の閾値を超え、二重に折り返る点です。グラフの通り、直列は3〜5個の折れ線区間を持つジグザグになり、しかも段の順序(小さい閾値が先か、大きい閾値が先か)で折れ方が変わります(緑と橙の線が違う形になっているのはそのため)。
結論:並列合成と直列合成は一致しません。 並列は単純な線形和(可換・折れ点は最大2N個)、直列は関数合成(非可換・入力振幅次第で折れ点がどんどん増える)という、数学的に別の演算だからです。
16個・並列合成の収束先
閾値を $T_i = i\Delta$ ($i=1,\dots,16$)と等間隔に取り、単純加算(正規化)すると、区間 $k\Delta<x\le(k+1)\Delta$ での傾きは
$$\text{slope} = \frac{(N-k)\cdot(+1) + k\cdot(-1)}{N} = 1-\frac{2k}{N}$$
となり、傾きがxに対して線形に減少します。傾きが線形なら、それを積分した波形は放物線(二次曲線)状の山型カーブになります(グラフの青い曲線の通り)。ノコギリ波にもゼロにも収束せず、閾値を細かく刻むほど滑らかな連続曲線(なだらかな一山のシェイパー曲線)に近づいていきます。これは実際、Buchla 259やSerge Wave Multiplierのような多段ダイオード・ウェーブフォルダーがサイン波的な整形カーブを近似するのに使う原理そのものです。
16個・直列合成の収束先
一方、直列は各段で二重・三重・…と折り返しが積み重なるため、閾値を通過するたびに追加の折れ線が生まれます。グラフの橙色の通り、非常に密なジグザグ(多数の山と谷)になり、入力振幅が大きいほど折れ点の数が爆発的に増えます。これは滑らかな曲線には収束せず、段数分の高調波成分を持つ複雑な波形になります(実機のマルチステージ・ウェーブフォルダーが倍音豊かな音になる理由でもあります)。順序を変えると折れ方自体が変わる(可換でない)点も並列との大きな違いです。ただ6個を超えると可聴範囲を超えたノイズが増えます。
まとめ
| 並列合成 | 直列合成 | |
|---|---|---|
| 演算 | 線形和(可換) | 関数合成(非可換) |
| 2個の結果 | 台形状(平坦域あり) | ジグザグ(段順で形が変わる) |
| 16個の極限 | 滑らかな放物線状の山(標準偏差的な意味でのガウス/放物線包絡に近づく) | 折れ点が増え続ける密なギザギザ波形(高調波リッチ、収束しにくい) |
「標準偏差」的な収束というより、並列合成は閾値密度の積分=傾きプロファイルの積分として滑らかな曲線に収束し(等間隔なら放物線、閾値をガウス分布的に配置すればS字型の誤差関数的カーブにもできます)、ノコギリ波にもゼロにも収束しません。
- 閾値密度の積分=傾きプロファイルの積分。これですね。音は正弦波にオーバドライブかけた波形ですね。Nが増えればそうなりそうです。
- パワーに対し閾値を1/2,1/4,1/8・・・と折ればと上で説明しましたが並列でピンポイントで合成することはグラフィックイコライザーの周波数版ではなく閾値版、つまりパラレルコンプレッションを意味します。ピーク付近に2,3個配置すると綺麗にコンプレッションしてくれるのです。この音圧をコンプしてこの音圧はスルーという動作は実際のパラレルコンプレッションの概念と同じです。
ちなみにグラフィックイコライザーは時間軸に対し周波数の閾値を持ち尖らせるか丸くするかするもので Wave Folderは時間軸に対し電圧の閾値を持ち尖らせるか丸くするかするものです。


コメント
コメントを投稿