参考動画
コード
setcps(86/60/4)
d1 $ swingBy (choose[1/7,1/6]) 8
$ s "Kick(<6 6 6 10>,<16>)" # n 8
# shape 0.6 # speed 1.1 # nudge "<-0.03 0> 0 0.01 0.03"
# gain"1.3"
d2 $ s "{~ Snare}%4"
# nudge "0.005 0.02"
d3 $ s "Hihat*8" # n 1 # speed "0.9"
d4 $ whenmod 16 12 (jux (0.125 <~)) $ sometimesBy 0.1 (# n (irand 4))
$ whenmod 4 3 (stut' 5 0.25 (|+| speed "-1")) $ swingBy (1/6) 8
$ splice 8 "1 2 4*<2 2 6> 6 4 5*<1 0 4> 8 2" $ s "Lick:1" # cut 4
# n "<0 0 0 2 0 0 0 3>"
# room 0.8 # sz 0.8 # delay 0.2 # delayfb 0.2# leslie 2
# shape 0.3 # gain "1.2"
d5 $ sometimesBy 0.1 (# n (irand(8))) $ jux (0.125 <~)
$ splice 8 "[0 3 2 4]/8" $ s "SFX:1" # cut 5
# room "0.5" # sz "0.5" # gain "0.8" # leslie 3
hush
音源にNative Instrument社のAstral Flutterを使用しているので、TidalCyclesのデフォルト音源では再現できません。
nudge
nudgeは、翻訳すると「ひじでそっとつつく」「そっと動かす」という意味で、DTM用語では、音のタイミングを少しだけずらす、という意味で使います。
少しだけずらすというのは、16分音符一つ分とかではなく、ミリ秒単位でずらすことを指します。
# nudge “x” とすると、x秒だけ後ろにタイミングをずらすことができます。
xの単位は秒ですので、Hiphop的なヨレたずらし方をする場合は、0.01秒とか0.03秒に設定するとよいです。
Hiphopの世界でよれたリズムを広めたJ Dillaのビートを解説した以下動画の曲では、1発目のkickを少し前のめりにするところに特徴があります。(動画の3:19から)
これを再現するには、# nudge “-0.02″ のように、マイナスの値を使うことが有効です。
試しに、J Dilla風のビートを作成してみました。
setcps(92/60/4)
d1 $ gain "1 1 0 1 1 0 0 0" # s "808bd:6" # nudge "-0.03 0 0 0.02 0.01 0 0 0"
d2 $ gain "0 0 1 0 0 0 1 0" # s "cp"
d3 $ s "hh*8" # gain "[1 0.8 0.9 0.8]*2" # nudge "-0.01 0.02"
こうすると、d1の808bdは、1番目は0.03秒だけ早く再生され、2番目と3番目はジャスト、4番目は0.02秒だけ遅く再生され、5番目は0.01秒だけ遅く再生され…となります。
d2のcp(クラップ)はジャストタイミングで再生されます。
d3のhhは、1サイクルで8回再生されますが、前半4回は0.01秒だけ早く再生され、後半4回は0.02秒だけ遅く再生されます。
1拍目の808bdとhhがつんのめり気味に再生され、独特のヨレ感が出ることがわかります。
swingBy
swingByについては、この記事でも紹介しています。
今回のswingByの使い方は、以下のようにしています。
$ swingBy (choose[1/7,1/6]) 8
基本的なハネ方でよければ、d1 $ swingBy (1/6) 8 ですが、単調になってしまうので、ハネる量を1/7と1/6がランダムに選ばれるようにchooseを使用しました。
ここまで紹介したように、swingByとnudgeを組み合わせることで、ドラムパッドで打ち込んだようにリズムにラフなニュアンスを追加することができます。