#pragma section-numbers 1 #title Firewire接続のサウンドデバイス用の設定 * '''対象とするUbuntu Studioのバージョン''' * 11.04 Natty Narwhal * 10.10 Maverick Meercat * 10.04 Lucid Lynx * 9.10 karmic Koala * 9.04 Jaunty jackalope 10.10以前のUbuntu Studioは、標準状態ではFirewire接続のサウンドデバイスを使うことができません。ここでは、使えるようにするための方法を解説します。 なお、11.04以降は様々な点が改善され、標準状態のままFirewire接続のサウンドデバイスが利用可能となりました。そのため、以下の設定を見直すだけで十分となります。 === Firewire接続のサウンドデバイスを利用するために必要なこと === 以下が必要です。 1. IEEE1394インターフェイスの導入 1. IEEE1394インターフェイス用カーネルモジュールのロード 1. IEEE1394インターフェイスへのアクセス許可設定 1. ユーザをaudioグループに追加 1. FFADOパッケージのインストール 1. JACKサウンドサーバの起動 === IEEE1394の導入 === お使いのコンピュータに、IEEE1394インターフェイスを導入し、装置としてのFirewireポートを設けて下さい。 === Firewire用ドライバ(カーネルモジュール)のロード === LinuxのFirewireドライバ(カーネルモジュール)がロードされていない可能性があります。端末で以下のコマンドを実行し、カーネルモジュールがロードされているかどうか確認して下さい。 新カーネルモジュールの場合 {{{ $ lsmod | grep firewire; firewire_ohci 30801 0 firewire_core 54903 1 firewire_ohci crc_itu_t 12331 1 firewire_core }}} 旧カーネルモジュールの場合 {{{ $ lsmod | grep 1394; ohci1394 27024 0 ieee1394 81069 1 ohci1394 }}} 新カーネルモジュールの場合は、「firewire_ohci」「firewire_core」「crc_itu_t」が、旧カーネルモジュールの場合は、「ohci1394」「ieee1394」がロードされている必要があります。 新旧が入り混じっていると、デバイスにアクセス出来なくなる可能性がありますので、コマンド「rmmod」を利用してアンロードして下さい。もし、有効になっていて欲しいモジュールがロードされていない場合は、端末でコマンド「modprobe」を使ってモジュールをロードして下さい。 なお、どちらが有効になるかの設定はファイル「/etc/modprobe.d/blacklist-firewire.conf」で行われています。標準状態では、10.04以前は旧カーネルモジュールセットが、10.10では新カーネルモジュールセットが有効となり、11.04では新カーネルモジュールセットのみ利用できます。 旧カーネルモジュールセットを利用する場合はさらに、「raw1394」もロードする必要があります。自動的にロードされるようにするには、ファイル「/etc/modules」に以下を追記して下さい。 {{ raw1394 }} === IEEE1394インターフェイスへのアクセス許可設定 === ここまでの設定で、新カーネルモジュールではファイル「/dev/fr*」(*は0から始まる通し番号)が、旧カーネルモジュールではファイル「/dev/raw1394」が自動的に設けられます。これはLinuxの作法のひとつで、デバイスへの入出力はこれ(特殊ファイル)を通して行われます。 初期設定では、この特殊ファイルにはroot権限がないとアクセスできません。権限のコントロールはUDEVという仕組みで行われています。このUDEVの設定ファイルを作成することで、一般ユーザでも特殊ファイルへ アクセス出来るようにします。 11.04では、パッケージ「libffado2」がUDEVの設定ファイルをインストールするため、ユーザが何かする必要はありません。 10.10以前では、以下のコマンドを実行して、設定ファイルを作成します。 {{{ $ sudo gedit /etc/udev/rules.d/65-permission-raw.rules; }}} カーネルモジュールセットの新か旧のどちらを有効化しているかで、設定ファイルの内容が変わります。 新カーネルモジュールセットの場合 {{{ SUBSYSTEM!="firewire", GOTO="ffado_end" ATTR{vendor}=="0x000166", GROUP="audio", ENV{ID_FFADO}="1" # TC GROUP A/S ATTR{vendor}=="0x0001f2", GROUP="audio", ENV{ID_FFADO}="1" # Mark of the Unicorn, Inc. ATTR{vendor}=="0x0003db", GROUP="audio", ENV{ID_FFADO}="1" # Apogee Electronics Corp. ATTR{vendor}=="0x000595", GROUP="audio", ENV{ID_FFADO}="1" # Alesis Corporation ATTR{vendor}=="0x0007f5", GROUP="audio", ENV{ID_FFADO}="1" # Bridgeco Co AG ATTR{vendor}=="0x000a92", GROUP="audio", ENV{ID_FFADO}="1" # Presonus Corporation ATTR{vendor}=="0x000aac", GROUP="audio", ENV{ID_FFADO}="1" # TerraTec Electronic GmbH ATTR{vendor}=="0x000d6c", GROUP="audio", ENV{ID_FFADO}="1" # M-Audio ATTR{vendor}=="0x000f1b", GROUP="audio", ENV{ID_FFADO}="1" # Ego Systems Inc. ATTR{vendor}=="0x000ff2", GROUP="audio", ENV{ID_FFADO}="1" # Loud Technologies Inc. ATTR{vendor}=="0x001260", GROUP="audio", ENV{ID_FFADO}="1" # Stanton Magnetics,inc. ATTR{vendor}=="0x00130e", GROUP="audio", ENV{ID_FFADO}="1" # Focusrite Audio Engineering Limited ATTR{vendor}=="0x001486", GROUP="audio", ENV{ID_FFADO}="1" # Echo Digital Audio Corporation ATTR{vendor}=="0x001564", GROUP="audio", ENV{ID_FFADO}="1" # BEHRINGER Spezielle Studiotechnik GmbH ATTR{vendor}=="0x001c2d", GROUP="audio", ENV{ID_FFADO}="1" # FlexRadio Systems ATTR{vendor}=="0x001c6a", GROUP="audio", ENV{ID_FFADO}="1" # Weiss Engineering Ltd. ATTR{vendor}=="0x0040ab", GROUP="audio", ENV{ID_FFADO}="1" # ROLAND DG CORPORATION # The devices below abuse another Vendor's ID, and therefore we need more advanced rules for those. ATTR{vendor}=="0x00000a", ATTR{model}=="0x030000", ATTR{units}=="*0x00a02d:0x010001*", GROUP="audio", ENV{ID_FFADO}="1" # CME, Matrix K FW ATTR{vendor}=="0x00000f", ATTR{model}=="0x01006?", ATTR{units}=="*0x00a02d:0x010001*", GROUP="audio", ENV{ID_FFADO}="1" # Mackie, Onyx Firewire ATTR{vendor}=="0x000a35", ATTR{units}=="0x000a35:0x00000[12]", GROUP="audio", ENV{ID_FFADO}="1" # RME LABEL="ffado_end" }}} 旧カーネルモジュールセットの場合 {{{ KERNEL=="raw1394", OWNER="root", GROUP="audio", MODE="660" }}} === ユーザをaudioグループに追加する === UDEVの設定で、audioグループに属するユーザがFirewireデバイスの特殊ファイルにアクセス可能となりましたので、ユーザ自身が「audio」グループに所属するようにします。 システム管理から「ユーザとグループ」を実行し、「ユーザ設定」ウィンドウを開きます。「グループの管理」ボタンをクリックして開く、「グループの設定」ウィンドウで自分をvideoグループに追加します。 この作業は、端末で以下のコマンドを実行することでもできます。 {{{ $ sudo adduser あなたのユーザー名 audio; }}} 以上の設定を行ったら、システムを再起動して下さい。 === FFADOパッケージのインストール === Synapticパッケージマネジャーを起動して、以下のパッケージをインストールします。 * libffado2 * ffado-tools * ffado-dbus-server * ffado-mixer-qt4 * jackd2-firewire ==== 接続されているデバイスの確認 ==== Firewire接続のサウンドデバイスをシステムと接続し、デバイスの電源を入れて九ださい。ここまでの設定がうまくいっていると、端末でffado-testコマンドを使って、接続されているデバイスを確認できます。 {{{ $ ffado-test ListDevices; }}} [[attachment:LiseDevices.png|{{attachment:LiseDevices.png|the output sample of ffado-test|width=561, height=324}}]] === JACKサウンドサーバの起動 === Ubuntuを含むLinux環境において、Firewire接続のサウンドデバイスとの音声情報のやりとりは、JACKサウンドサーバを介して行う必要があります。ここまでの設定で、システム側の準備は終わったので、JACKサウンドサーバを起動します。 JACKサウンドサーバに関しては、[[UbuntuStudioTips/Application/qjackctl|JACKサウンドサーバの設定と起動]]を参照して下さい。