用いたラズパイ・機材
Raspberry Pi4 Model B Starterキット(8GB RAM)
Amazonで購入できます。試してないですが、RAM4GBでも動くと思います。
ラズパイの初期設定
こちらの記事の通りにやりました
SuperColliderのインストール
こちらの記事を参考に、少しだけ変更させていただきました
# 日本語入力ソフトを導入
sudo apt-get update
sudo apt-get install fcitx-mozc
#ビルドに必要なライブラリをインストール
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install libjack-jackd2-dev libsndfile1-dev libasound2-dev libavahi-client-dev libreadline-dev libfftw3-dev libxt-dev libudev-dev libncurses5-dev cmake git qttools5-dev qttools5-dev-tools qtdeclarative5-dev libqt5svg5-dev qjackctl
#SuperColliderのダウンロードとビルド
cd ~
git clone --recurse-submodules https://github.com/supercollider/supercollider.git
cd supercollider
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DSUPERNOVA=OFF -DSC_ED=OFF -DSC_EL=OFF -DSC_VIM=ON -DNATIVE=ON -DSC_USE_QTWEBENGINE:BOOL=OFF ..
cmake --build . --config Release --target all -- -j3
sudo cmake --build . --config Release --target install
sudo ldconfig
使用するサウンドカードの指定
aplay -l
上記を実行すると、次のような出力がされると思います。
**** List of PLAYBACK Hardware Devices ****
card 0: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: vc4hdmi0 [vc4-hdmi-0], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: M4 [M4], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: vc4hdmi1 [vc4-hdmi-1], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
今回はオーディオインターフェースM4を使いたいので、以下のjackドライバー設定で-dhw:2
とします(この記事にもある通り、ラズパイに付属のイヤホンジャックはとても音質が悪いです)
#jackドライバー(SuperColliderのブートで自動起動)の起動時設定
echo /usr/bin/jackd -P75 -p16 -dalsa -dhw:2 -r44100 -p1024 -n3 > ~/.jackdrc
# -dhw:0を指定すると元からついているサウンドカードで、別のUSBオーディオインターフェース使うときは-dhw:{card番号}
SuperDirtのインストール
ラズパイを再起動
sudo reboot
再起動後、スタートメニューの「Sound & Video」からSuperColliderを起動して以下のコマンドを実行
Quarks.checkForUpdates({Quarks.install("SuperDirt", "v1.7.3"); thisProcess.recompile()})
sc3-pluginsのインストール
公式のREADMEを参照
cd ~
git clone --recursive https://github.com/supercollider/sc3-plugins.git
cd sc3-plugins
mkdir build && cd build
# for both scsynth and supernova plugins; set -DSUPERNOVA=OFF to build only scsynth plugins
cmake -DSC_PATH=../../supercollider -DCMAKE_BUILD_TYPE=Release -DSUPERNOVA=ON ..
sudo cmake --build . --config Release --target install
TidalCyclesのインストール
sudo apt-get install haskell-platform
cabal update
cabal install tidal-1.7.10 --lib
vim-tidalのインストール
# vimとtmuxのインストール
sudo apt-get install tmux vim
# vim-plugのインストール
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
~/.vimrc
に下記を記載
call plug#begin()
Plug 'tidalcycles/vim-tidal'
call plug#end()
再度vimを開いてvimコマンド:PlugInstall
を実行
その後
# creates symlinks on /usr/local/bin for tidal and tidalvim scripts
cd ~/.vim/plugged/vim-tidal
sudo make install
cd
動作確認
vim example.tidal
としてvimで開き、適当にコードを書いて実行します
setcps (80/60/4)
d1 $ s "bd*2" # gain 0.9
vim-tidalにおいては、「Ctrl+E」で実行できます。vimのノーマルモードで:TidalHush
すればhushになります。
その他のコマンドはREADMEをみてください。
音が鳴らない場合は、再度aplay -l
を実行してみてオーディオインターフェースが接続されているか確認してみたり、SuperColliderのモニタ(Command+Mで立ち上がります)でそもそもServerが立ち上がっているのか確認してみたりしてください。
参考にさせていただいた記事