シーケンサーの動画を漁っていたら関連動画にRogueっぽい画面のシーケンサーがあったので気になって使ってみた。
シーケンサーっぽくない画面が面白いなと思ったので今回Bitwigのドラム音源を鳴らすところまで書いてみる。
Orcaとは
Orcaは難解なプログラミング言語であり、アルファベットの各文字が操作であり、小文字が強打で動作し、大文字が各フレームで動作する手続き型シーケンサーを作成するように設計されています。
このアプリケーションはシンセサイザーではなく、Ableton、Renoise、VCV Rack、SuperColliderなどのMIDI、OSC、UDPをオーディオインターフェイスに送信できる柔軟なライブコーディング環境です。
以上、公式サイトのGoogle翻訳。
自分なりに要約すると、
1文字につき一つの機能を持ったアルファベットをレゴのようにつなげてリズムやメロディのMIDI信号生成するシーケンサー。
再生しながら編集できるライブコーダー向けのソフトで、MIDIやOSCを使ってAbleton Live、Renoise、VCV Rack、SuperColliderなどをリアルタイムで演奏できます。
という印象だ。
必要なもの
・loopMIDI(1台のPC内アプリ間でMIDI接続をするためのソフト)
https://www.tobias-erichsen.de/software/loopmidi.html
ダウンロードしてインストール
特に難しくなかったはずなので説明は省く。
・Orca
https://hundredrabbits.itch.io/orca
ダウンロードするときに寄付を求められるが断ってダウンロードすることもできる。
使ってみてもし良かったら寄付してあげてほしい。(なんかデフォルトで寄付金表示してくれているのも寄付慣れしてない自分としてはありがたい配慮だなと思った。)
・MIDI音源となるアプリ(ここではBitwig studioを使う)
手順
loopMIDIを起動する
デフォルトで1チャンネル分が起動するはず。何もなければ画面下の「+」で1つ追加してみよう。
Orcaを起動する
初期画面が各アルファベットの機能説明のレイヤーでCtr + gで消したり呼び出したりできる。
起動したときから再生している状態だ。
Spaceキーで再生・停止を切り替えできるが停止するとエディットしにくいので今回はずっと再生状態で作業をする。
MidiメニューでloopMIDIをActiveにしておく。
試しにプログラミングしてみる。記事を書きながらのプログラミングは面倒だったので過去に作ったファイルを読み込んでいる。
下記の文字列(ピリオドも含む)をコピーしてOrcaの画面に貼り付ければ、同じリズムが再現できる。
Orcaはテキストエディタのように「Ctr+C(コピー)」や「Ctr+V(ペースト)」ができる。
範囲選択はShiftを押しながらカーソルキーで領域を指定でき、選択範囲のキャンセルは「Esc」キーだ。
.D4............. ..:03C.......... ................ .D3............. ..:13C.......... ................ .D1............. .*:23C.......... ................ ...Ca........... .D36aTCde.dba.c. ..:33a..........
貼り付けると、文字がチカチカ動いてライフゲームを見ているようだ。まだ音が出ていないので「なんだこれ?」な状態です。
Bitwigを起動する
Settingのcontroller項目で「loopMIDI」を選択する。ない場合は「Add」→「Generic」→「MIDI Keyboard」を選択してMIDIコントローラーを1つ追加し、デバイス選択で「loopMIDI」を指定する。
E-Kick…inputにloopMIDIのCh1をアサインする。 E-Snare…inputにloopMIDIのCh2をアサインする。 E-Hat…inputにloopMIDIのCh3をアサインする。 E-Cowbell…inputにloopMIDIのCh4をアサインする。音源パネルのキーボードのアイコンをクリックし、ピッチの入力を有効にしておく。
トラックがRec状態の時に入力を受け付けるので、すべてのトラックをRec待ち受け状態にする。
この時点で4つのドラム音源がOrcaからトリガーされてなっているはずだ。
Orcaの使い方
[D]はDelay。
[D]の右隣の数字はTriggerする頻度でframe単位でカウントしてるようだ。frameは1拍あたり4frame進むので4だと4frameごとに1回トリガーを打つということだ。
数が小さくなるほど細かいビートが刻める。トリガーを打つときにDの下の[*]が動く。Bangという名前だ。
[C]と[T]を組み合わせるとメロディのシーケンスが組める。
[T]の左隣りにステップ数(16進数で1~f)を決めると、右隣りに決めたステップ分だけ色が変わるのでその上にA~Gのキーを入力する。Cはド、cだとド#だ。
[T]のステップ数のさらに左隣は現在のステップ位置で1だと一つ目のステップの音が[T]下に出力される。
[:]はノート情報のMIDI OUTで1つ右隣りはMIDI Ch、2つ目はオクターブ、3つ目はキー。
この3つの情報を左隣りにBangを受けたときにMIDIを送信する。
[:]の3つ右隣の「キー」の真上に[T]を持ってくればステップが変わったときにキーが変わりメロディが聞こえる仕組みだ。
ステップ位置を自動で進めるためのオペレーターが[C]だ。BPMに合わせてカウントアップし、下にカウンタを更新する。右隣はカウント上限を設定できる。
カウントが進むと[T]のステップが進むように配置している。
文字で説明しようとするとわかりにくい。実際動いているのを見た方が理解が早いと思う。
Orcaマニュアル
すでにわかりやすい日本語のサイトがあるのでリンクを貼っておく。こちらを読んでいただく方がわかりやすい。
使い方や各オペレーターの機能は日本語の情報があったので大変ありがたかった。
公式マニュアル
日本語版マニュアル
チュートリアル
チュートリアル翻訳
おまけ
もう一つ作ったのでコードを貼っておく。
...................................... ..D4.................................. ..*:03C................4Fz............ .........................:33C.l....... ...................................... ...................................... ...................................... ...1C6...................C............ ..D208TEFCcDEFG.......1D348TCFEGBaDF.. ..*:17E................*:43B.......... ...................................... ...................................... ...C3................................. ..D0.4TCdCe........................... ...:23C............................... ......................................
MIDI CCも送信できるようだ。
......................................................... ....Cf................................................... ..D38aTCag.db.gab.....################################### ...:02a...............#..MIDI.ch...1....................# ......................#..MIDI.CC...64...................# ......................#..MIDI.CC...65...................# ..D3.8Rz..............#.................................# ...!00r...............################################### ......................................................... ......................................................... ..D1.0Rz................................................. ..*!01p.................................................. .........................................................
最後に
コンパイル済のOrcaはElectronアプリなので見た目以上に動作が重く、うちの古いPCだとBitwigとOrcaが起動しているだけでモタついてランダムにBPMが狂うのでそれを追加機能として面白がることにした。
BitwigだとそのままOrcaから受けたMIDIを記録することができるところが良かった。
古いPCだとアプリが落ちることがあるのでお気を付けください。
次回は、OrcaでFL Studioを鳴らす。おまけでMIDI CCの設定もやってみたので参考になったら嬉しい。