Ubuntu DTM(?) Tips
Ubuntu (18.04) でDTM的なことするためのTips
ソフトウェアの選択肢
波形編集: Audacity
DAM: Ardour, Reaper 0.999(wine)
新たに環境を作れるなら低レイテンシカーネルの Ubuntu Studio を導入すると早い。
一般的 Linux のオーディオシステム
最もカーネルに近いのは ALSA 。基本はこれを通す。 ALSA のミキサーは alsamixer や amixer でコントロールされる。 Firefox 等多くのアプリケーションは更に Pulse audio を介して音を鳴らしている。 Pulse のミキサーは pavucontol や Gnome 等のデフォルトのサウンド設定からコントロールされる。 アプリケーションを超えた入出力の管理ができ、より遅延を抑えたDTM向けのサウンドサーバーとして JACK がある。 Pulse も JACK も基本的に ALSA の上のより高いレイヤーで動く。後述するように少し設定すれば併用が可能。
Ardour
JACK の導入
Ardour では Pulse は使えず ALSA直 か JACK を選ぶ必要がある。 ALSA直 が一番楽だが排他利用になって他のアプリケーションから音が出なくなる。 最近の JACK2 なら Pulse と併用できるので少し手間だが JACK2 を導入すると良い。
JACK は jackd パッケージからインストールできて多分 ardour5 の依存で既にインストールされてるのではないだろうか。
ただし、低レイテンシーの設定をしないと Ardour で使おうとしてもエラーが出る。
次を参考に audio グループにユーザーを追加する。
https://jackaudio.org/faq/linux_rt_config.html
Pulse と併用するのには pulseaudio-module-jack のインストールが必要。再起動すると pavucontrol から仮想デバイスとしてJACKが選べるようになる。 JACKの単体での起動は qjackctl でできる。
a2jmidid
The Ardour Manual - MIDI on Linux
qjackctl の connection を開くと ALSA タブがあり aconnectgui と同等のことができるが、Ardour のようなJACKのMIDIポートに繋ぐことができない。
JACK MIDI と ALSA MIDI を繋ぐには a2jmidid をインストールする必要がある。
インストールした後 qjackctl の Setup > Misc から "Enable ALSA Sequencer support" を無効にすると、ALSA MIDI のポートが a2j グループとしてJACKの MIDIタブに表示される。
( daemon 起動はa2jmidid -e
毎回やる必要)
Ardour の MIDI 入力に繋げば MIDI recording もできるようになる。
Ardour で音を鳴らす
JACK サーバーと Ardour で音を鳴らそう! 注意すべきは Ardour のトラックそれ自身が JACK のポートを独立に持っているのでちゃんとルーティングしないと音が出ない。 それと回路にループがあると現実と同じく大音量でハウリングが起きる。(これ必要ある?) 音を出すには最後の行き先を "system" に繋げば良い。
Ardour のトラックを右クリックして Output か Input を選ぶと何やら斜めったカッコイイダイアログが出てくる。 トラックの出力とJACK ポートの行き先 (destinition) がチャンネルごとに表になっていて、クリックして緑の点を付けると回路ができる。 ここで設定できる内容は qjackctl の connection で設定できるのと同じ内容になる。 Ardour の Output ダイアログでは "Ardour Busses" にバス(マスターのような音声をまとめるトラック)"Ardour Tracks"のタブに他のトラックの入力ポートが表示される。 普通のトラックならとりあえず "Master" に繋いどくのではないだろうか。 そして "Master" を "system" に繋げば音がなる。 ちなみに MIDI トラックを a2j で Timidity に繋ぐと音はなるが、Ardourの中で鳴っている訳ではないのでマスタリングに乗らない。 timidity の出力オプションに "-Oj" で JACK 出力があるのでこれを再度繋げば取り込めるかも?(遅延が多そう)
track1 を Master に繋いで Master を system に繋ぐ。 ちなみに Pulse を併用する場合は "Pulse Audio JACK Sink" も system に繋がないと Pulse からの音が出ない。
Wavetone on wine
アレ制作用に非常に便利な Wavetone を wine で動かす。 インストール不要なので特に何もせずとも起動できるが MIDI を適切に設定する必要がある。
Ubuntu での MIDI 接続設定は技評のこのコラムを見ると良い。
ALSA が MIDI ルーティングを担っているので GUIラッパーの aconnectgui で繋ぐ。
Windows の MSGS の代わりに timidity に送る。
端末で
timidity -iA --sequencer-ports=1
を実行して ALSA からの入力を拾う状態にしておく。
(-iA が入力の設定 sequencer-ports 設定しないとデフォルトでは4つ開かれる。
他の引数特に必要ないと思う。
オプション凡例
timidity のオプションはやたら短縮されていて分かりづらい。
古い情報のせい環境のせいかか今は通らないオプションが多い。man を見るのが確実)
先に timidity を建ててから wavetone を起動すると設定の MIDI デバイスから timidity が選べるのでそれを選べば鳴らせるはず。 aconnectgui が別に必要なかったがちゃんとルーティングできてるか確認できるのであると便利かな。