サンプルの操作
From TidalCycles userbase
これまでは短いサンプルを使ってきました。長いサンプルは、注意して扱わないと問題を引き起こすことがあります。長いサンプルで何が起きるか見てみましょう。
d1 $ sound "bev"
-- wait a bit, then..
hush
聴いてわかるように、Tidalは、サンプルの再生を毎サイクル発動し続けます。途中でパターンの演奏を停止しても、サンプルの残りは流れ続けます。
cut
を使うと、次のサンプルの再生が発動したら、再生中のサンプルを切り捨てることができます。
d1 $ sound "bev" # cut 1
cut
の引数はグループを定義します。そのため、異なるパターン間の干渉で遊べます。
d1 $ sound "bev ~" # cut 1
d2 $ slow 4 $ sound "pebbles ~" # cut 1
legato
もサンプルを切り捨てますが、固定長を使います。
d1 $ sound "bev ~ bev ~" # legato 1
chop
を使い、「グラニュラーシンセシス」エフェクトを得られます。
d1 $ chop 32 $ sound "bev"
striate
は chop
に似ていますが、再生を違った方法でコントロールします。
d1 $ slow 4 $ chop 4 $ sound "arpy:1 arpy:2 arpy:3 arpy:4"
d1 $ slow 4 $ striate 4 $ sound "arpy:1 arpy:2 arpy:3 arpy:4"
randslice
は、サンプルを複数に分け、各サイクルでランダムにひとつを選び、再生します。
d1 $ randslice 32 $ sound "bev"
loopAt
を使うと、サンプルを、設定したサイクル数に合わせ調整します:
d1 $ loopAt 8 $ sound "bev"
これまで同様パターンや変形をこれらの関数に追加したり、組み合わせることで、面白いエフェクトが得られます。
d1 $ loopAt "<8 4 16>" $ chop 64 $ sound "bev*4" # cut 1
d1 $ rev $ loopAt 8 $ chop 128 $ sound "bev"