「折りたたむ」ディストーション

ディストーションというのは、おそらくご存知のように、原音をその名の通り歪ませることで、太い音を作るテクニックです。
Pdで簡単にディストーションを作るには、「clip~」で以下のようにある程度の範囲に値をクリップしてしまい、
ゲインを上げていけば、歪みがうまれ、倍音成分の多い「太い」音ができあがります。

下図は、サイン波をクリッピングしたものです。
fold1

このようにディストーションは元来、値をある範囲に限定して、その範囲から値が出た時にクリッピングするという手法が一般的ですが、範囲から超過した分を逆に折りたたむという、特殊なディストーションを今回は紹介します。

やり方としては、「fexpr~」を使う方法が一番簡単です。下図ではif文をネストし、1より大きい入力があった時に、1から超過した文を1から引くという処理を行い、また-1より小さい入力があった時に-1より超過した値を、-1に足すという処理を行なっています。これによって、Arrayに表示されているような、「折りたたまれた」ディストーションを作ることができます。

fold2

今回の例では説明のためにサイン波にこのディストーションをかけましたが、無論、「adc~」を使って外部からの音にこのディストーションをかける事も可能です。またゲインの値を調整することでより深くこのディストーションをかけることも可能です。

この項のパッチをダウンロード

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください