Twitter

samphold~で出来ること

Pdチュートリアルを見ていると「samphold~」という不可解なオブジェクトが結構使われています。
そもそも「samphold~」とはサンプル・アンド・ホールドを行うオブジェクトです。
ではサンプル・アンド・ホールドとはなんぞやという事になると思うんですが。

簡単にいえば、サンプル・アンド・ホールドとはある信号の値を記憶(サンプリング)して次の記憶すべき信号が来るまで保持(ホールド)しておくことを言います。
ですので「samphold~」は「サンプリングの対象となる信号」と「サンプリングをするタイミングを指定する信号」の2つに入力が必要になります。
下図は実際の「samphold~」のオブジェクトですが、左インレットに、「サンプリングの対象となる信号」、右のインレットに「サンプリングをするタイミングを指定する信号」を入れます。

Screen Shot 2013-02-05 at 11.26.29 PM

「samphold~」は右インレットのシグナルの今現在のサンプルの値が前のサンプルの値より下回った時に左インレットの入力シグナルをサンプルし、その値をアウトレットから出し続けます。「samphold~」の右インレットにはよく「phasor~」がつながっている事がありますが、これは「phasor~」の出すノコギリ波は、周期の終わりの1サンプルを除き、全て前のサンプルより現在のサンプルの値が高くなっているので、一周期で一度だけサンプルが行われる事になります。言い換えるなら、「phasor~」に指定した周波数で、「samphold~」の左インレットの入力シグナルをサンプルする事ができるようになるためです。

phasor

ではまず試しに、下図のように「noise~」により生成されたホワイトノイズの値を「samphold~」を使って1秒間に10回定期的にサンプリングし、それを音高に適応してみましょう。
ピコピコという、昔のSFのコンピュータールームから聞こえてくるような音になります。ここで、「phasor~」の上の周波数を変えると、サンプリングされる周期も変わり、したがってテンポが速くなります。
samphold1

このように、「samphold~」は左インレットに入力された値をダウンサンプルして出力するのに利用する事ができます。
次の例はサイン波に「samphold~」を適応した例です。「line」についている「80, 10 10000」をクリックすると、「phasor~」の周波数が徐々に下がっていくので、ダウンサンプルが段々激しくなり、最初は滑らかに聞こえていた音高の上下運動が、次第にカクカクしたピアノで半音階を引いているようなエフェクトに変わっていきます。

Screen Shot 2013-02-05 at 11.50.30 PM

このように「samphold~」を滑らかなパラメータの変化を、段階的なカクカクしたものに変えてしまう事ができます。この例では音高をカクカクさせましたが、音量や音色などのパラメータをカクカクした変化に当然変える事ができます。いつものLFOを使ったエフェクトに飽きたら、ちょっと「samphold~」をかまして、わざとパラメータの変化をカクカクさせてみるのも面白いかもしれません。

Post a Comment

Your email is kept private. Required fields are marked *