Rosegardenの導入方法

Domino風なRosegarden

RosegardenDomino風なピアノロール編集を主体にしたLinux系・Unix系OS向けのFLOSS(自由ソフトウェアかつオープンソース)なDigital Audio Workstation(DAW)。我がantiX 19 i386(Debian 10 BusterベースのLinuxディストリビューション)で愛用中。その特徴は以下のとおり。

  • Dominoと同じくそもそもMIDIシーケンサーである。私みたいなDominoをずっと使ってきた人間にはとっつきやすい。ただ、WAV形式ファイル等へのエクスポート機能がないため、代わりに例えばAudacityで録音する。
  • 比較的軽量。古いPCや非力なPCでもそこそこキビキビ動作するし、滅多にクリックノイズでプチプチしない。ただ、そのぶん機能は驚くほど少ない。
  • LADSPAやDSSIプラグインを扱える。Linux系・Unix系によくあるALSAやJACKでの外部MIDIとの連携(ルーティング)はややこしいので助かる。
  • FluidSynth-DSSIというSF2形式に対応したサウンドフォントシンセがある。Debian公式パッケージから導入し、FreePatsあたりからオープンなSF2形式のサウンドフォントをダウンロードすれば、音源はだいたい何とかなる。
  • dssi-vstというブリッジを導入すれば、WindowsのVSTプラグインも扱える。ただし、Debian 10 Busterには公式パッケージがないため、私はUbuntuの古い公式パッケージに加え、WineHQをインストールして導入しているが、動けばラッキー程度の動作確率なのでアテにならない。
  • トラックでWAV形式ファイルなどの音声ファイルを直接扱える。ただ、当該ファイルの編集機能がないため、代わりに例えばAudacityで事前に当該ファイルを編集しておく。
  • JACKクライアントとのルーティングは苦手。ALSA MIDIなら問題ない。

DAWはどんどんと進化する傾向にあるが、Debian公式パッケージのRosegardenは最新バージョンではないため、以下のとおりRosegardenの最新安定版をビルドし、Debian公式パッケージからアップグレードした。

Rosegardenのビルドとインストール

まず、Rosegardenとプラグインのインストール先を作成しておく。

mkdir -p ~/.local/bin
ln -s ~/.local ~/local
ln -s ~/.local/bin ~/bin
mkdir -p ~/.local/lib/dssi
ln -s ~/.local/lib/dssi ~/.dssi
ln -s ~/.local/lib/dssi ~/dssi
mkdir -p ~/.local/lib/ladspa
ln -s ~/.local/lib/ladspa ~/.ladspa
ln -s ~/.local/lib/ladspa ~/ladspa

では、ビルドしてみる。

sudo apt update
sudo apt build-dep rosegarden
sudo apt install build-essential git cmake doxygen
git clone --recursive -b 19.12 https://git.code.sf.net/p/rosegarden/git rosegarden
mkdir rosegarden/build
cd rosegarden/build
cmake -DCMAKE_INSTALL_PREFIX=$HOME/.local -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS='-msse2 -mfpmath=sse -mfxsr -DSTABLE' -DCMAKE_CXX_FLAGS='-msse2 -mfpmath=sse -mfxsr -DSTABLE' ..
cmake --build . --config Release
cmake --install . --prefix $HOME/.local

これでJACKサーバー起動後にターミナルからrosegardenと入力、エンターで起動する。主な操作方法は『第176回 Rosegardenで作曲する | gihyo.jp』に詳しい。

DSSIプラグインのインストール

インストゥルメント系のFLOSSなDSSIプラグインの有名どころは以下のとおり。なお、一部は音がやや弱っちいため、後述のLADSPAプラグインのフィルター、イコライザー、コンプレッサー、マキシマイザー等を駆使して底上げする。

  • amSynth: 減算方式シンセで、そこそこ使える
  • FluidSynth-DSSI: 前述のSF2形式に対応したサウンドフォントシンセ(ご覧のとおりドラム系がないため、ドラムはAVL DrumkitsのSF2ファイルで)
  • Hexter: YAMAHA DX7をシミュレートしたシンセで、DX7のSYX形式のパッチをそのまま使える
  • Nekobee: nekosynthによるRoland TB-303をシミュレートしたベースシンセだが、音だけ(パターンはない)
  • Xsynth: Ensoniq ESQ-1やOBERHEIM Matrix-6にインスパイアされたシンセ
  • Wsynth: nekosynthによりXsynthをハックしたウェーブテーブルシンセ
  • WhySynth: そこそこ使える多用途シンセ
  • Zynaddsubfx: かなり使える加算合成シンセだが、パッチの選択に骨が折れる

これらを以下のとおり導入してみる。ちなみに以下のうちmusescore-general-soundfont-losslessとは、Debian公式パッケージの中でおそらく最も高品質なSF2形式のサウンドフォント。

sudo apt update
sudo apt install amsynth fluidsynth-dssi hexter musescore-general-soundfont-lossless nekobee wsynth-dssi whysynth zynaddsubfx-dssi zynaddsubfx-data
ln -s /usr/lib/i386-linux-gnu/dssi/amsynth_dssi.so ~/.dssi/amsynth_dssi.so
ln -s /usr/lib/i386-linux-gnu/dssi/amsynth_dssi ~/.dssi/amsynth_dssi
sudo apt install libcairo2 libglib2.0-0 libgtk2.0-0 liblo7
wget http://ja.archive.ubuntu.com/ubuntu/pool/universe/x/xsynth-dssi/xsynth-dssi_0.9.4-3_i386.deb
sudo dpkg -i xsynth-dssi_0.9.4-3_i386.deb

これらのパッチはLinuxSynths.comからダウンロードできる。また、これらに加え、DISTRHO DPF PluginsからKarsというボタン1つのストリングシンセを導入しておく(ダウンロードして展開して出てきたdssiディレクトリ内のすべてを~/.dssiディレクトリにぶっ込むだけ)。ただし、Debian公式パッケージ以外のプラグインをインストールするときは、以下のとおり依存しそうなパッケージを事前にインストールしておいたほうが良い。

sudo apt update
sudo apt install libasound2 libjack-jackd2-0 libpulse0 libsndfile1 libgl1 libxcursor1 libxext6 libxrandr2 libcairo2 libsdl2-2.0-0

それでも動作しないときは、例えば以下のようにlddコマンドで依存パッケージを探す。依存パッケージに問題がないときは、自分でプラグインをビルドする。ビルドできなかったときは、諦める。

ldd ~/.dssi/Kars-dssi.so

LADSPAプラグインのインストール

エフェクト系のFLOSSなLADSPAプラグインはDebian公式パッケージにそこそこ存在する。とりあえず有名どころや便利そうなものをインストールしておく。

sudo apt update
sudo apt install bs2b-ladspa calf-ladspa caps cmt guitarix-ladspa fil-plugins invada-studio-plugins-ladspa rev-plugins rubberband-ladspa ste-plugins swh-plugins tap-plugins wah-plugins zam-plugins

これらに加えLoudMaxと、前述のDISTRHO DPF PluginsからMax-Gen examples、Mini-Series、ndc-Plugs、MVerbを導入しておく(ダウンロードして展開して出てきたladspaディレクトリ内のすべてを~/.ladspaディレクトリにぶっ込むだけ)。あとは、マシンパワーに余裕があれば、Linux Studio Plugins(LSP)を導入するのもアリ。

その他のDebian公式パッケージ

JACKサーバーの管理のためにQjackCtlを、音声キャプチャー、ループ素材等の音声ファイルの編集、ミックスダウンのためにAudacityをインストールしておいたほうが良い。加えて、仮想キーボードを導入すると、Rosegardenがよりとっつきやすくなる。ちなみに私は、以下のとおりvkeybdというALSA・MIDIキーボードを導入している。すべてFLOSS。

sudo apt update
sudo apt install vkeybd
vkeybd --octave 7

~/.vkeybdmapでキーマップをカスタマイズすると、vkeybdはより使いやすくなる。以下、日本語キーボードでの一例。

global keymap
set keymap {
  {a 8}
  {z 9}
  {s 10}
  {x 11}
  {c 12}
  {f 13}
  {v 14}
  {g 15}
  {b 16}
  {n 17}
  {j 18}
  {m 19}
  {k 20}
  {comma 21}
  {l 22}
  {period 23}
  {slash 24}
  {colon 25}
  {backslash 26}
  {bracketright 27}
  {q 24}
  {2 25}
  {w 26}
  {3 27}
  {e 28}
  {r 29}
  {5 30}
  {t 31}
  {6 32}
  {y 33}
  {7 34}
  {u 35}
  {i 36}
  {9 37}
  {o 38}
  {0 39}
  {p 40}
  {at 41}
  {asciicircum 42}
  {bracketleft 43}
}

Rosegarden以外のDomino風DAW

Debian公式パッケージにはRosegarden以外にも以下のとおりDomino風のピアノロール編集を主体にした、MIDIシーケンサー上がりのFLOSSなDAWがある。DAWはどんどんと進化する傾向にあるが、どれも最新バージョンではないため、自分で最新安定版をビルドしたほうが良い。

コメント記入

次のフォームにコメントを記入してください。