下記のコードは、Native instruments社のAstral FlutterというExpansion音源を使用しているので、TidalCyclesのデフォルト音源では使用できません。
setcps(86/60/4)
d1
$ sometimesBy 0.05 (# n "3")
$ slice (choose[8,16,32]) "1 5 2 <3 4> 2*5 5 6 <7 1>*4"
$ s "Lick" # n "9"
# speed (choose[0.8,0.8,0.8,0.4])
# gain"1.2" # room "0.8" # sz "0.6"
d2 $ whenmod 8 7 (rev) $ sometimesBy 0.1 (#speed "0.8")
$ slice 8 "0 0 1 1*<3 2> 2 5*3 8 2*<4 5>" $ s "Drums" # n "2 <3 1>"
# shape "0.8"
# gain"1.2"
d3 $ whenmod 12 8 (# room"0.8")
$ slice (choose[32,8,8]) "0 ~ ~ 5 ~ ~ 5*<5 1 3> 4*3" $ s"Synth" # n "4"
# gain "1.4"
|+| speed "1 1 0.5 -0.8 -1 1 1 -0.5"
hush
slice
$ slice x ” y ” $ sound “sample”で、sampleをx等分にスライスしたうちのy-1番目のスライスを再生します。
https://tidalcycles.org/index.php/slice
d1 $ slice 8 “0 1 5 7 3 4 4 5” $ sound “breaks125”
上記のようにすると、”breaks125″というサンプルを8等分にスライスし、スライスの0番目、1番目、5番目、7番目、3番目…の順で再生していきます。
このsliceは、特にドラムループで使うといい感じになります。
Hiphopでは、レコードから1小節分のドラムをサンプリングして、それを8等分や16等分にスライスして、それぞれのパッドに割り当てて自由にドラムを演奏する、という手法があり、それと似たことができるのがこのsliceです。
そのため、スライスは4等分、8等分、16等分にしておいて、” ” の間に4個、8個、16個の数字を並べるのが基本的な使い方です。
似たものとして、spliceがあります。
sliceの場合、以下の例のようにドラムループを8等分して、遅いテンポで使用すると、各スライスの間が空いて無音区間ができるので、ぎこちない感じになってしまいます。
setcps(70/60/4)
d1 $ slice 8 "0 1 2 3 4 5 6 7" $ sound "breaks125"
sliceではなくspliceを使うと、その「間」(無音区間)を埋めてくれるので、スムーズに音が繋がります。
その代わり、間を埋めるために、各スライスの再生速度を調整する(この例の場合は、スライスをゆっくり再生する(=ピッチが下がる)ことで間を埋める)ため、サンプルのピッチが変わります。
etcps(70/60/4)
d1 $ splice 8 "0 1 2 3 4 5 6 7" $ sound "breaks125"
上記の例だと、間が埋まる代わりに、ピッチが低くなりました。
” “の中を調整するだけでピッチが劇的に変わるので、逆に面白い効果を得ることができます。
なお、sliceはchopやstriateとも似ていますが、上記の”0 1 5 7 3 4 4 5″のように、自由に並べ替えができるのが特徴です。
また、似たものにbiteがありますが、sliceがサンプルを分割するのに対して、biteはパターンを分割する、という大きな違いがあります。