【TidalCycles】テキスト記述で音楽パターンを作成する話題のライブコーディング環境「TidalCycles」とはどんなものか?

投稿日:2017-10-14



ナカジ(@cp_nakajun)です。

最近「ライブコーディング」というパフォーマンスが盛り上がっているようです。

ライブコーディングを簡単に言うと
「音楽や映像をリアルタイムに即興でプログラミングで作り出すパフォーマンスです」

僕が音楽制作で使っているPureDataでライブコーディングをすることは可能ですが、最近のライブコーディング界隈では「TidalCycles」という環境が話題のようです。

ということは、僕はとても興味がある訳です。

TidalCyclesとは

TidalCycles (or Tidal for short) is a language for live coding patterns.
It allows you to make musical patterns with text, describing sequences and ways of transforming and combining them, exploring complex interactions between simple parts.

TidalCycles(略してTidal)は、ライブコーディングパターンのための言語です。
それは、テキストで音楽パターンを作成し、シーケンスとそれらの変換と組み合わせの方法を記述し、単純な部分間の複雑な相互作用を探索することを可能にします。

tidalcycles 公式ページ:https://tidalcycles.org/

今、僕が主に音楽制作に使っている「PureData」「MAX(Max/Msp)」はオブジェクトと呼ばれるボックスをグラフィカルに線で繋いでいくことでプログラミングしていきますが

tidalcyclesは上記にあるように「テキスト」を記述することでパターンを作り、実行していきます。

「supercollider」みたいな感じですかね?

僕はSuperColliderについては深く取り組んだことがないので、あまり語れませんがtidalcyclesを調べているとtidalcyclesの方が簡単な記述で実行できるようです。

また、tidalcyclesはリズムパターンの生成に特化しているようです。

田所さんのyoppa.orgでどんなことができるのかを見てみる為のデモ映像として以下が紹介されてます。


tidalcyclesに興味を持った点

僕がなぜtidalcyclesに興味を持ったのかを書かせてもらいます。

  • ライブコーディングへの興味
  • SuperColliderとの連携が強化された

の2つの点が大きいです。

まず実は「SuperCollider」にず〜と興味はあるのですが、PDとかMaxに慣れた僕にはテキストで記述するハードルの高さとか
演奏する時のインターフェースのことが気になってなかなか学習が進んでないのです。

現行バージョンのtidalcyclesから標準の音響生成エンジンがSuperDirtというSuperColliderをベースにしたものになったことでSuperColliderとの連携がしやすくなり、
しかもそれがもともと「音質」の評判のいいSuperColliderということもあって興味を持った訳です。

あとはほんとに単純に「ライブコーディングへの興味」ですかね。

PureDataでもできないことじゃないですが…ね。

以前紹介した、コレを使うかこんな感じで作っておくか

PureDataだけで作られたモジュラーシンセがハンパない!しかも無料で配ってる【Automatonism】



すればできるんですけどね。

テキスト記述によるクリエイティブもかっこよく感じるんですよね!

tidalcyclesのインストール(セットアップ)

インストール(セットアップ)については僕は以下の2つのサイトを何も考えずにそのままやったらすんなり音が出るところまでいきました。

上記のサイトでインストールには十分ですが

僕がやった作業(使ったコマンドなど)だけを後ほど別途まとめておこうとは思ってます。

公式のインストール動画

サポート募集中

この記事はお役に立てましたか。
よかったら、コーヒー ☕ をご馳走いただけたら励みになります。



ライブコーディング書籍がついにでました!

おすすめのクリエイティブ・コーディング関連カテゴリー

ウェブツール

機能はシンプルなものですが、p5.jsやTone.jsで描画したり音が出たりするので遊んでみてください。
・【Midi Number Tools】:MIDIナンバーから音名と周波数を判定します
・【Delay Time Calculator】:テンポに応じた音符の長さを判定します