Gish::monome Beat Slicer written in ChucK

DSC09927


monomeのためのBeat Slicerなシーケンサー。です。
(english docs is here.)

たまにコード書いては盛大に放置しつつあったので、中途半端だけど現状のもので放出してしまう。
個性というかアクの強さというかバグというかを回避しつつやってたけど、
アプリ的なカチッとしたものを作るには向いてないぞ、ChucK。
ガーッと書き捨てる感じで使うのがいいですね。。。


GitHubに上げたので、ここから。
http://github.com/soundflower/Gish/tree/master

キーボードでパラメータ切り替えながらPICnome使うのが面倒なんでTouchOSCを併用してるけど、
みんなが持ってるわけじゃないと思うんでGitHubに上げたコードからは一旦外してます。
キー入力からボタンの状態を制御したために、GUIからボタン押したときの挙動が怪しいです。
miniAudicleのエディタ以外のウインドがカレントになってるとキー入力のたびに警告音鳴るので、
システム音声の出力と別なAuido IFから出力するようにminiAudicle側で設定したほうがいいです。

機能

オーディオ4トラック
パラメータ:
オーディオサンプルの再生位置、オーディオサンプルの再生ピッチ、逆再生、リピート

Sampleの元BPMとか拍の頭とか無視して強引に8つにチョップしてるので、
元のフレーズはきっちり再現しないです。
頑張れば起動時にSampleを走査して閾値以上のピークを検出できそうだけど、
そこまでやるならもっと簡単に実現できる別の環境でやったほうがいい。

OSCの設定

Prefix /chuck∗
Receive port 8080
Send port 8000

∗Gish.ckの実行時にOSCコマンドで勝手に割り当てるので特に気にする必要ないです。

操作方法

1.オーディオファイルのパスを指定(111行目から)
2. miniAudicle上でGish.ckの実行(Add Shreadボタンかcmd+)
3.Enter keyでシーケンスのスタート
4.スペースキーでmonomeのパラメータ表示の切り替え

(PCの)キーボードの設定

enter シーケンスのスタート/ストップ
space monomeのLED表示の切り替え
z Track 01の選択
x Track 02の選択
c Track 03の選択
v Track 04の選択
a BPMを5下げる
s BPMを5上げる
delete 全てのLEDを非点灯にする

LEDのパラーメタの割り当て

行は常にシーケンスのSTEPになります。
行のLEDの点灯で再生STEP位置を示してます。

オーディオサンプルの再生位置

点灯してるボタン(現在選ばれてる再生位置)押すと、そのSTEPがミュートになります。

オーディオサンプルの再生ピッチ

逆再生

リピート