Linuxを日常的に使う実験ブログ

Linuxで使える作曲ソフトRosegardenをPipeWire環境下で動かしてみた

 2024-07-05

 Void Linux

今回やろうとしたこと

Linuxで作曲に使えるDTMソフトRosegardenについて調べるとオーディオサーバであるJackを用いる例が多く出てきます。今回は最近筆者がオーディオサーバーとして導入したPipeWire環境下でRosegardenを使ってみようという試みです。PipeWireをVoid Linuxに導入した例はVoid LinuxのオーディオサーバーをPulseAudioからPireWireに切り替えてみたに記事化しました。Jackを使っているけど他のオーディオシステムとの共存が面倒だなと思っている方の参考になれば幸いです。尚、今回はRosegardenの詳細な使い方は省略します。(筆者の作曲スキルが拙すぎて難しかったです)

Rosegardenとは

Rosegardenは楽譜ベースでの作曲を好む人向けのDTMソフトでありMIDIシーケンサーです。DAWソフトではあるのですが、録音ベースで音楽制作するよりもMIDIの打ち込みで音楽を制作する人向けのソフトウェアです。

Rosegarden自体にはMIDI音源がなくMIDI信号の発生しかできませんので音を出すにはMIDI音源にRosegardenを接続する必要があります。RosegardenはAlsaシーケンサー機能を用いて出力をしますので、Alsaシーケンサーに対応したMIDI音源(ソフト/ハード)が必要です。今回はソフトウェアMIDI音源としてfluidsynthを利用して音を出してみます。

また、オーディオサポートのためにはJackをしますので、オーディオを取り込みたいなどの理由でオーディオを使用したい場合はJackが必要になります。もしオーディオを扱わずMIDIだけで作曲が完結する場合はJackは必ずしも必要ではありません。

PipeWireを導入する

PipeWireの導入と設定に関してはVoid LinuxのオーディオサーバーをPulseAudioからPireWireに切り替えてみたに詳細を書きました。Void Linux向けの記事ですが、Ubuntu, Arch Linuxでもほとんど変わらないと思います。参考にしてみてください。

Qsynthの導入と設定

まずは音源であるQsynthを導入しましょう。QsynthはfluidsynthのQtフロントエンドです。Void Linuxの場合は以下のコマンドでインストールします。Ubuntuの場合はAPT , Arch Linuxの場合はpacmanでインストール可能です。サウンドフォントであるsoundfont-fluidもインストールしておきましょう。Voidのコマンドを例として示しますが、Ubuntu/Debian、Arch系でもリポジトリからインストールしてください。 

sudo xbps-install qsynth

Qsynthを起動したら、setupボタンで設定画面を出します。MIDIタブを選択し「MIDI Driver」をalsa_seqに設定します。

qsynth settings

Audioタブを選択し、「Audio Driver」をpipewireに設定します。これでPipeWireから音を出せます。

qsynth settings

Rosegardenの起動

まだRosegardenをお持ち出ない場合は各ディストリビューションの公式リポジトリから入れてしまいましょう。

Arch Linuxの場合は

# pacman -S rosegarden

Void Linuxの場合は

# xbps-install rosegarden

UbuntuやDebianの場合は

# apt install rosegarden

で問題なくインストールできると思います。ではRosegardenを起動しましょう。ここで注意があります。Rosegardenでオーディオを扱うためには以下のコマンドで起動します。

pw-jack rosegarden &

このコマンドで起動することでPipeWireがJackの代わりをし、録音などのオーディオ機能を扱うことができるようになります。

Qsynthとの接続

まずはMIDIの音を出せるようにRosegardenから音源であるQsynthに接続しましょう。「スタジオ」タブから「MIDIデバイスの管理」を選択し、接続したい機器を選択します。

qsynth connect

これでRosegardenからQsynthを経て音が出力されるようになりました。この接続はAlsaでの接続です。念の為qpwgraphで確認してみます。Rosegardenとfluidsynthが接続されているのが分かりますね。またfluidsynthからPipeWire出力で音声出力している様子も分かると思います。

qsynth connect

オーディオを扱う

pw-jackコマンドでRosegardenを起動していればJackを使っているかのようにオーディオインターフェースや他の音楽ソフトと接続して音源を取り込むことができるようになります。今回はオーディオインターフェースからギターの音を録音してみます。

まずはPipeWireのGUIツールであるqpwgraphを用いて機器とRosegardenの接続を確認します。

qsynth connect

トラックパラメータを「オーディオ」に設定して音声がRosegardenに入っていることを確認し録音します。

qsynth connect

qsynth connect

まとめ

PipeWireを用いてJackなしでRosegardenを使用する方法を模索するという内容でした。Jackを用いるよりも煩わしくなく、Jack使用中にOSのオーディオが使えなくなる不便さもありません。LinuxでDTMを調べると必ず出てくるJackオーディオサーバーですが、PipeWireで代替することでJackなしでもDTMソフトを使えそうだと思いました。筆者はオーディオ関連はあまり詳しくないので、記事の内容に誤りがありましたらそっと教えていただけると幸いです。