Tidal Cycles - LFO
シンセサイザーを演奏したことがあれば、Sin, Triangle, Square といった、LFO ( Low-frequency oscillation ) でモジュレーションをかけるイメージが湧くと思います。
Tidal でも エフェクト関数にLFO を適用することができます。
d1 $ sound "bd*16"
# pan sine
上の例では、サイン波に従って pan の引数が 0 - 1 の間で変化します。
Tidal では、sine と sine1 が異なるレンジを担当していましたが、現在はエイリアスになり、同じ役割です。
sine に加えて、saw ( sawtooth ), tri (triangle), square, が用意されています。また、slow density を使うことで周期を変えることができます。
d1 $ sound "bd*16"
# pan (slow 8 $ saw)
d1 $ sound "bd*8 sn*8"
# pan (density 1.75 $ tri)
d1 $ sound "bd*8 sn*8"
# speed (density 2 $ tri)
以下を参考にして、異なる波形を組み合わせてみましょう。
d1 $ sound "bd*16"
# pan (slowcat [sine, saw, square, tri])
d1 $ sound "sn:2*16"
# speed ((range 0.5 3 sine) * (slow 4 saw))
範囲の設定
range に 最小値、最大値を与えることで、変化する領域を限定することができます。バージョンアップにより、scale から range に名前が変わり、scale は別の目的で使用されています。
d1 $ sound "bd*8 sn*8"
# speed (range 1 3 $ tri)
d1 $ sound "bd*8 sn*8"
# speed (slow 4 $ range 1 3 $ tri)
レンジの設定に ( - ) 負の数を与えることができますが、括弧で囲うように注意してください。
d1 $ sound "bd*8 sn*8"
# speed (range (-2) 3 $ tri)
ローパスフィルターでの使用例を聞いてみましょう。
d1 $ sound "hh*32"
# cutoff (range 300 1000 $ slow 4 $ sine)
# resonance "0.4"