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

Ubuntu Weekly Recipe 第169回 Ardourの実力(前編)マルチトラック・レコーディング編

JACK の導入

Ubuntu Weekly Recipe 第161回 オーディオインターフェイスを使う ― Firewire活用編
UbuntuでJACKとPulseAudioを同時に使う

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 でできる。

JACK as virtual device in pavucontrol

仮想デバイスとしてJACKが選べる。

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 もできるようになる。

connecting vkbd to Ardour via a2jmidid

a2jmidid を介して vkbd を Ardour に繋ぐ例 (timidityにも繋いでいる)

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 出力があるのでこれを再度繋げば取り込めるかも?(遅延が多そう)

routing of tracks

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 が別に必要なかったがちゃんとルーティングできてるか確認できるのであると便利かな。

wavetone on wine with timidity

なんかこんな感じ


トップ