【TidalCycles】SuperDirt起動時にカスタムサンプルを読み込む
カスタムサンプルの読み込み方法はSuperDirtのSampleフォルダに突っ込めば良いのかと思っていたら、任意のフォルダを指定して起動時に読み込む方法がTutorialに書いておりました。
Custom Samples - TidalCycles userbase
SuperColliderのstartup fileに以下を記述
SuperDirt.start; ( s.waitForBoot { ~dirt = SuperDirt(2, s); // two output channels ~dirt.loadSoundFiles("/Users/myUserName/Dirt/samples/*"); // specify sample folder to load s.sync; // wait for supercollider to finish booting up ~dirt.start(57120, [0, 0]); // start superdirt, listening on port 57120, create two busses each sending audio to channel 0 }; );
~dirt.loadSoundFiles
の引数にはカスタムサンプルの置き場所のパスを指定する。
カスタムフォルダの構造は
Users/ |-- myUserName/ |-- Dirt/ |-- samples/ |-- myBass/ | |-- bass1.wav | |-- bass2.wav | |-- bass3.wav |-- hits/ | |-- hit1.wav | |-- hit2.wav | |-- hit3.wav |-- field/ | |-- bridge.wav | |-- mountains1.wav | |-- mountains2.wav | |-- plains.wav | |-- river.wav
こちらのsamples以下の構造に乗っ取り
|-- custumSample/ |-- myBass/ | |-- bass1.wav | |-- bass2.wav | |-- bass3.wav |-- hits/ | |-- hit1.wav | |-- hit2.wav | |-- hit3.wav |-- field/ | |-- bridge.wav | |-- mountains1.wav | |-- mountains2.wav | |-- plains.wav | |-- river.wav
というように直下にサブフォルダを作りその中にサンプルを入れる形にすれば認識されます。
カスタムフォルダは複数指定出来ますので種類別に分けることも可能です。
~dirt.loadSoundFiles("/Users/myUserName/Dirt/samples/*"); ~dirt.loadSoundFiles("/Users/myUserName/sounds/*"); ~dirt.loadSoundFiles("/Users/myUserName/recordings/chaska-sessions/*"); ~dirt.loadSoundFiles("/Users/myUserName/recordings/super-duper-experiments/*");
【TidalCycles】VSCodeで自前のBootTidal.hsを読み込んで起動する
自前の関数などを毎回記述しないで読み込む方法はないものか調べてみたところ、エディタ起動時に読み込んでいるBootTidal.hsに記述しておけば、起動時に読み込んでくれそうなことが分かるものの、設定がいまいちよくわからない・・・なんとなくたどり着いたのでメモ。
BootTidal.hsを用意する
BootTidal.hsファイルを用意して自分のプロジェクトファイルのルートに置きます。BootTidal.hsの中身は
Tidal/BootTidal.hs at master · tidalcycles/Tidal · GitHub
こちらの中身をまるっとコピペして貼っておきます。
自前の関数を追加ですが
最終行の
:set prompt "tidal> "
より前に書いておけば大丈夫でした。
起動時に自前のBootTidal.hsを読み込む設定をする
TidalCycles for VSCodeの設定を開いて TidalCycles : Use Boot File In Current Directory
のチェックボックスを有効にします。
これでエディタ起動時に自前のBootTidal.hsが読み込まれるようになります。
【TidalCycles】TidalCyclesリンク集
自分用に現段階で使えそうな情報源をまとめる。本家のサイトが一番良いのですが、旧サイトから移行中からなのか、行き届いてないところが多々あるので注意。
2019/0207 update リンク追加
最新情報
本家チュートリアル(v1.0.0向けなので注意) https://tidalcycles.org/index.php/Tutorial
kidohmさん版 Tidalのページ http://kindohm.github.io/tidalcycles.github.io/
vscode-tidalcycles vscodeの方はこちらで https://github.com/kindohm/vscode-tidalcycles
公式フォーラム http://lurk.org/groups/tidal/
Reference
全function https://tidalcycles.org/index.php/All_the_functions
エフェクトとか https://tidalcycles.org/index.php/Category:Control_Functions
乱数系 https://tidalcycles.org/index.php/Category:Randomness_and_chance
SuperDirt デフォルトでインストールされるサンプル SuperDirt/samples at master · yaxu/SuperDirt · GitHub
旧情報
使えない部分も多々あるので注意。
旧本家ページ(v.0.9.6) http://pages.tidalcycles.org
本家のチュートリアルの日本語訳(2017) https://github.com/tksupercollider/Meetup_SuperCollider_Studies/blob/master/TidalCycles-Guide-Japanese-Translation/Tidal-the-guide.md
ワークショップの資料 日本語版!(v0.9.1) https://tidalcycles.org/index.php/Tidal_workshop_worksheet/ja
【TidalCycles】Exception in World_OpenUDP: bind: Address already in use エラー対応方法
TidalというよりSuperColliderのメモです。
スパコラを再起動させたとき
Exception in World_OpenUDP: bind: Address already in use
というエラーが出て再起動できない時は
scsynth
というプロセスを探してきて(Macならアクティビティモニタなどで)強制終了させる。
単にSuperCollider終了させただけではscsynthが終了しないらしい。scsynthごと終了/再起動できないものか...。
【TidalCycles】TidalCyclesでSuperColliderのSynthを鳴らせるようにする
サンプルコードの音色指定で"supersaw"などシンセの指定が出てきますが、コード実行してもならない...どうもインストールされてないらしい。ということで入れます。
環境は TidalCycles 1.0.7 + SuperCollider3.10 のMacです。
まずはシンセのプラグインをダウンロードしてきます。
ダウンロードしたファイルを解凍した出来たフォルダをスパコラに突っ込めばいいのですが、その場所は
スパコラ上で
Platform.userExtensionDir
を実行してコンソールに出力された場所になります。
Macだと
/Users/(ユーザー名)/Library/Application Support/SuperCollider/Extensions
になってるかと思われます。
スパコラを再起動したら読み込まれます。
この辺の環境のインストール漏れ。tidal-bootstrapで環境をまるごと入れてたら大丈夫なのかもしれませぬ...。
【TidalCycles】Tidal Cyclesのサンプルの場所と種類
Tidalにてbdやらsnやらで音が再生出来ますが、そのネタはどこにあるのか確認します。
Super Colliderからコマンド
Quarks.gui;
を実行するとウィンドウが表示される。
Dirt-Sampels
を選択してウィンドウ下部のOpen Folder...を押すとFinderでフォルダが表示される
このフォルダ名が再生サンプル名になっている(らしい) 複数ファイルあるもの昇順ソートのindexで指定出来る(ex 808:0 と指定すると 808/CB.WAVが再生される)。
自分の音ネタを突っ込めばそれを用いることも可能(要再起動)。
入ってるサンプルはこちら。