TidalCyclesまとめ

TidalCycles(タイダルサークル). 略してTidal.


Archtectures

ref. https://tidalcycles.org/docs/getting-started/tidal_start

  • A Pattern Library
    1. Your text editor
    2. The interpreter (Haskell)
  • An audio engine
    1. SuperDirt for receiving messages and turning them to sound.
    2. SuperCollider, sending sound out.

Tools

Dirt

Dirt Sampler. Tidalに組み込まれた Experimental sample playback

strudel

TidalcyclesのJavascript実装. つまりブラウザで動く.

with p5.js

Syntax Basics

Cycles

TidalCyclesのCyclesはサイクル毎秒, cycle per second. BPMではない.

Cycles | Tidal Cycles

以下のようにかくとBPMのように指定できる. 130BPM.

-- Set cps to be a fast house beat
setcps (130/60/4)

d1-d9

トラックを示す. 同時に9トラックを演奏可能.

曲を止める

  • d1 silene: トラックを止める
  • hush: すべて止める

Topics

リズム

TidalCyclesでドラムパターンを作る方法8選 – moistpeace official

mini notation

リズムパターンを生み出すための特別なシンタックス.

Mini Notation | Tidal Cycles

Tidal functions

いわゆるオーディオエフェクト.

Tidalcycles functionの使い方(随時更新) – moistpeace official

サンプルの利用

default samples

まずはこの素材から.

custom Loading Samples

SuperCollider起動時にスタートアップスクリプトでload

音を鳴らす

ref. Start Tidal | Tidal Cycles

  • SuperCollider IDE(scide)を立ち上げる.
  • ServerタブからBoot ServerでSuperColliderサーバ起動
  • SuperCollider IDEのエディタからSuperDirt起動. エディタに以下を貼り付けて評価.
SuperDirt.start;
  • EmacsでC-c C-sでTidalを起動.
  • Emacs で C-c C-eで評価.
d1 $ sound "bd sn"

これだとまだ鳴らなくて, さらにSuperDirt.start; をすると音がなった. 調査中…

Jackではなくpipewireで音を鳴らしたい

pw-jackをつかってSuperColliderを起動する.

$ pw-jack scide

ref. Supercollider - jack - pipewire - bluetooth? (linux) - Questions and Answers - Tidal Club

with Emacs

  • haskel-mode
  • tidal

BootTidal.hs

TBD. なに?

tidal-mode

https://github.com/tidalcycles/Tidal/blob/dev/tidal.el

keybindもsrcをみる.

  • C-c C-s: tidal-start-haskell:
  • C-c C-q: tidal-quit-haskell
  • C-c RET: 一行eval
  • C-c C-e: リージョンをeval

<2024-07-21 Sun 18:39> なんか🔧Emacs CIDERに似ているな.

custom function

tidal-stop-allがほしい(hush)

Emacs Tidal Babel

Emacs tidal babel - Resources - Tidal Club

DAW連携

DAW | Tidal Cycles, 公式wikiではAbelton/Bitwig/Renoiseへのリンクがある.

  • recording活用
  • DAWの音源利用
  • DAWのエフェクト利用

Bitwig Studio/Linux設定

  • ALSA Kernel module(snd-virmidi)で仮想MIDI Port作成
    • sudo modprobe snd-virmidi / acconect -l
  • ALSAとJack2をbridge
    • a2jmidid -e &
  • pw-jack scide
// initialize SuperCollider MIDI client
MIDIClient.init;
 
~midiOut = MIDIOut.newByName("Virtual Raw MIDI 1-0", "VirMIDI 1-0");
 
~dirt.soundLibrary.addMIDI(\midi, ~midiOut);
  • Bitwig Studio 設定 > コントローラ > Generic > Virtual MIDI RAW/1を選択

コードで音を作る

TidalCyclesで音を鳴らしてそれをDAWでRecording. MIDIキーボードでの打ち込みの代替.

TidalCycles: Recording Separate Channels from Tidalcycles to a DAW - YouTube

物理フェーダでEQ調整

Controlling Ableton with Code – my live-coding setup and light tutorial - YouTube

MIDI送信

refs

Abelton live

Bitwig Studio

Tips

TidalCycles with TouchDesigner

Learning/Tutorials

TidalClub

👨Alex McLeanによる8weeksの講座.

👨Alex McLean

一番影響力がある人はこの人.

Refs

Lessons from the Luddites - Alex McLean(2017)

https://www.furtherfield.org/lessons-from-the-luddites/

ラッダイト運動とLivecoding.

📝ラッダイト運動

Slab

2000, ライブコーディング元祖. Alex McLean, Adrian Ward, Dave Griffithsのバンド.

The Generative Manifesto

https://slab.org/2015/07/28/the-generative-manifesto-august-2000/

Insights

  • <2024-08-07 Wed 18:45> チュートリアルをしてみて思ったことは, Tidalで曲をつくのは🎵ループシーケンサー, Bitwigだとクリップランチャーで曲をつくるのに似てる.
  • <2024-08-17 Sat 19:26> Tidalcyclesと相性がいいのはテクノだな. 日に日にそれは確信になってくる. メロディーを重視するようなハウスやトランスはないかな. cycliesという設計思想がまさにそうだ.

🔗References

japanese

Music

Code examples