Atomでウェブサイトが作れるのだから、音楽も作れる!ということで、最近ライブコーディングで音楽や映像を作るムーブメントが到来しています。次の動画後半を御覧ください。
かっこいい!
ということで、多摩美等で教鞭をとられている田所先生のサイトを参考に入れていきます。参考にというか全く同じです。
Homebrewを入れる
まずhomebrewが入っていなかったので入れます。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Xcodeもついでに入れてくれるのはラッキーという感じなのですが、とにかく重い!待っている間にAtomを入れます。
Atom
TidalCyclesは基本、Atomでコードを書きます。すべてのエディターに対応しているわけではありません。WebStormで出来ないのか!わかりません!
Atomのパッケージで「Tydalcycles」というものがありますので、これを入れます。これを実行したAtomがTidalCyclesと連携します。そして書かれたコードをもとにリズム等を生成します。
Gitも入れる
Gitもいれてなかったので入れます。
$ brew install git
Haskellを入れる
TidalCyclesはHaskellを使って動いている言語、ということでHaskellも入れていきます。GHCというのはHaskellのひとつのことのようです。(:参照)
$ brew install ghc
そしてHaskellのパッケージ管理ツールのcabalを入れます。node.jsにおけるnpmみたいなことなんでしょうか。
$ brew install cabal-install
cabalを最新版にします。
$ cabal update
パッケージをインストールするためのパッケージ?を入れます。
$ cabal install cabal-install
そしてやっとTiadalCyclesを入れます。
$ cabal install tidal
入りました。
SuperColliderを入れる
さしあたって最新版を入れます。SuperColliderとはコーディングすることでシンセを動かしたり、エフェクトをかけたり、シーケンスを書いたりできるオープンソースのソフトウェアです。この手のソフトウェアとしてはMax/Mspというのも有名ですが、あちらはヒモをつないでプログラムを作らなくてはいけないので、非常にイライラします。SuperColliderのほうがエンジニア向けです。
http://supercollider.github.io/download
SuperColliderを起動して、SuperDirtをSuperColliderにインストールします。SuperDirtはサンプラー=音をだすための音源です。つまり次のように信号が流れているものと思われます。Atom→SuperCollider→SuperDirt→音がなる。
SuperColliderを起動すると、皆さんの大好きなエディター画面が登場します。そこで次のコマンドを入力して、Cmd + Enterで実行します。これでインストールがされます。時間がかかります。一度インストールしたら、当然ですが次に再起動したときにはする必要はありません。
include(“SuperDirt”)
SuperColliderを再起動します。
音を鳴らしていく
まずSuperColliderを起動していることを確認します。そしてSuperColliderで次のコマンドを実行。貼り付けて、Cmd + Enterで実行です。
SuperDirt.start;
次に、.tidalという拡張子のファイルをどこでもいいので作ります。これをAtomで開いた後にAtomのパッケージを実行します。
最後に、次のコマンドをAtomのエディターに貼り付けて、Cmd + Enterで実行してください。
d1 $ sound "bd"
キックが鳴り続けるはずです。
次にこれを貼ってみて、実行= cmd + enter してみてください。リズムが変わります。
d1 $ (brak (sound "bd sn:2 bd sn"))
# pan ((*) <$> sinewave1 <*> (slow 8 $ "0 0.25 0.75"))
これとか
d1 $ sound "bd sn hh cp mt arpy drum odx bd arpy bass2 feel future"
まとめ
エディターから音がなるのは面白い!