詳しい説明
今回、ソフトクリップに使った関数はtanh
といいます。
詳しいことは省きますが、この関数に入力した数値は、正の値なら限りなく1に、負の値なら限りなく-1に収束する、という関数です。
こういった関数のことを『誤差関数』と言ったりします。
また、こういった数学関数でなくても、入力と出力のマッピング(数値同士の対応 ex. 0.5は0.7に、0.8は0.9に…)を自由に書いて処理することもできます(iZotope Trash2などにその機能があります)。
対称非対称のお話
対象歪みは、基本的に偶数倍音が出にくい傾向にあります。
例えば、サイン波は基音だけなので、対象歪みを起こすと奇数倍音だけが出てきます。
矩形波や三角波、それに限らず、波形が点対称のものに対象歪みを起こすと、必ず奇数倍音が出ます。
が、DC(直流)成分が含まれている場合は、偶数倍音が出ることがあります。
それに対し非対称歪みは、どんな入力波形であっても、偶数倍音が出ます。
このことについて詳しく知るには、フーリエ級数などの知識が必要になってくるので、ここでは割愛します。
まとめ
- DSPにおける基本的なディストーションは、『ソフトクリップ』、『ハードクリップ』、『非対称歪み』
- 場合によって、これらを組み合わせたり、応用して使う
- ソフトクリップは、正の数が大きければ大きいほど1に、負の数が大きければ大きいほど-1に向かう
- ハードクリップは、一定以上の大きさの数値を、バッサリとカットする
- 歪みの種類によって、出る成分が違う
- 非対称歪みは偶数倍音が出る。ソフトクリップやハードクリップなどの対象歪みは偶数倍音が出にくい
- 対象歪みでも、原音にDC成分が乗っていたり、偶数倍音が含まれていたりすると、上記の限りではない
- 倍音についてはこちらを参照
お疲れ様でした。
出典
Wikipedia - 倍音
筆者の独学の知識