LinuxでのGuitarixの設定(steinberg UR22 mkII)

これからこのブログではLinuxでの音楽環境の構築について書いていきます。

Linuxといってもディストリビューションがたくさんあります。 音楽環境が整っているのはなんと言ってもUbuntu Studioですが、勉強のためにぼくはManjaro Linuxを使っています。 Linux特有のコマンドが出てきますが、基本的にはManjaro Linux(Arch Linux)のコマンドと理解してください。

まず、第1回目はGuitarixの設定です。

QjackCtrlとGuitarix
QjackCtrlとGuitarix

Guitarixとは

Guitarixとはソフトウェアアンプであり、エフェクターエミュレーターです。

ハードウェア

Linuxではハードウェアがサポートされているか冒険ですが、オーディオインターフェースsteinberg UR22 mkIIも冒険でした。 ですが、現在使っている限りでは完全にサポートされているような気がします。

QjackCtlのインストール

sudo pacman -S qjackctl

Jack2のインストール

sudo pacman -S jack2

(Option) gnome-alsamixerのインストール

alsamixerでも良いのですがちょっと使いにくいのでgnome-alsamixerをインストールします。

sudo pacman -S gnome-alsamixer

Guitarixのインストール

sudo pacman -S guitarix2

Real-time Kernelの導入

コマンドラインでmanjaro-setting-managerを開きます。

manjaro-setting-manager

manjaro-setting-manager
manjaro-setting-manager

ペンギンのアイコンのKernelをクリックしReal-timeカーネルをインストールします。

Real-time Kernel
Real-time Kernel
インストールが完了したら、コマンドラインgrubでメニュー選択できるようにします。

sudo grub-editenv - unset menu_auto_hide

終了したら再起動し、grubのメニューからReal-timeカーネルを起動します。

オーディオインターフェースの設定

オディオインターフェースはUSBで接続するだけで認識してくれます。 モニタースピーカーから音を出す方法は、下記画面のように選択します。

オーディオインターフェースの選択
オーディオインターフェースの選択

選択したらモニタースピーカーから音が出るか確認します。

realtimeグループの追加

参考http://jackaudio.org/faq/linux_rt_config.html

/etc/security/limits.d/99-realtime.confを作成します。

@realtime   -  rtprio     99
@realtime   -  memlock    unlimited

realtimeグループを作成し、自分のユーザーIDをrealtimeグループに追加します。

groupadd realtime
usermod -aG realtime ユーザー名

Jack Audio Connection Kitの設定

QjackCtlを起動する前にユーザーをaudioグループに追加する必要があります。 https://wiki.archlinux.jp/index.php/JACK_Audio_Connection_Kit#インストール

usermod -aG audio ユーザ名

QjackCtlを起動します。

Jackの起動
Jackの起動

Setupをクリックし、"Enable D-Bus interface"と"Enable JACK D-Bus interface"にチェックを入れます。

Qjackctl_Enable_Dbus
Qjackctl_Enable_Dbus

ついでに、"Replace Connections with Graph button"のチェックを外します。 Startを押し、その後にGuitarixを起動します。

Guitarixが起動したら、QjackCtlのConnectを押します。

次の図のように接続します。

GuitarixのJack接続
GuitarixのJack接続
PulseAudio JACK SinkとPulseAudio JACK Sourceが表示されていますが、無視してください。

左のsystemの下のcapture_2がUR22 mkIIのギター入力ですので覚えておいてください。

問題がなければ、これでオーディオインターフェースに繋いだギターの音が、Guitarixを経由してモニタースピーカーから流れ出てくるはずです。

音が鳴らない場合

ここからが本番です。音が鳴らなかったので、ぼくはこのブログを書くことにしました。

音が鳴らない原因はいろいろあると思います。

  • gnome-alsamixerのCaptureのRecのチェックが外れていた。
  • 内蔵マイク入力がGuitarixにリダイレクトされていた。

gnome-alsamixer
gnome-alsamixer

ぼくの場合は後者でした。

Guitarixへの入力はあるようなのですが、どうやらノートパソコンの内蔵マイクの入力らしい。ぼくはThinkpadを使っていますが、おそらくノートパソコンだとこのような現象が起こる場合が多いだろうと思ってこの記事を書きました。

解決方法(オーディオインターフェースのOSでの優先順位を上げる)

まずターミナルを開いてcat /proc/asound/modulesコマンドでOSに利用されているサウンドモジュールを確認します。

$ cat /proc/asound/modules ←ここまでを入力してエンター
0 snd_hda_intel
1 snd_usb_audio

オンボードサウンドチップのモジュールが優先されているのが確認できます。次の/etc/modprobe.d/alsa-base.confファイルを作成し、この順番を入れ替えます。

options snd slots=snd_usb_audio,snd_hda_intel
options snd_usb_audio index=0
options snd_hda_intel index=1

作成できたら、パソコンを再起動します。 そうすると、ぼくの場合はギター入力からGuitarixへの入力を確認できるようになりました。

参考文献