前回はSoft-Clippingで定番のtanh~やatan~では閾値が固定されていて使いづらいという話でした。
[Puredata]tanh~ & atan~ のクリッピング1
今回は閾値を強引に可変する作戦です。
実験動画はこちら。
以下の画像はtanhにサイン波をボリューム1と2で入力したときのclipping波形を
Excelで作成したものです。
大きなボリュームでtanhに入力すればするほど、閾値1ですり潰したようなclippingをします(右図)。でも、閾値>=ボリューム でも緩やかに clippingしています(左図)。
これをボリューム2を入れても左図のようなclippingにならないかな、と考えた訳です。
この微妙に崩れた感じの波形も使えるならclippingのネタに欲しいです。
それが下の図。
この理想形をまずはExcelの計算式で再現してみました。
それが下の図。
本当は僅かながら計算に誤差が出るのですが、
$f2:threshould として、
expr~ $f2 * tanh($v1 / $f2)
で、ほぼ同じclippingに再現できそうです。
さて、Puredataで実験してみました。
threshouldとサイン波のボリュームは2にしました。
一見、ただのサイン波に見えますが、、
倍音が僅かながら出ています!
緩やかなclippingに成功しました。
これでtanhも閾値が変更できます。
うん、もうclip~の出番は無いな!
atanも同様に置き換えて使えば使えそうです。
atanも同様に置き換えて使えば使えそうです。
ここから改良して、if文を加えて波形の+側だけ掛けたり、
+とーで閾値を変えても非対称クリッピングとして面白いと思います。
0 件のコメント:
コメントを投稿