オーディオデバイスの認識順序を固定する

  • Linuxではサウンドカードが複数接続されていると、起動するたびに認識順序がコロコロと変わるようになっている。場合によってはアプリケーションから音が出なくなったりするなど不具合が生じるので、認識する順番を固定する。

    を開き、

    cat /proc/asound/modules

    と実行してデバイス名と読み込まれた順序を調べる。次に、

    sudo gedit /etc/modprobe.d/alsa-base.conf

    と実行して管理者権限でGeditを起動し、

    options デバイス名 index=認識させたい順番
    options デバイス名 index=認識させたい順番
    

    と記述して保存、Ubuntuを再起動すると記述した順序で認識する。

    例えば、私の環境ではオンボードサウンドとUSBオーディオの二つのサウンドデバイスが有効になっているので、

    options snd_usb_audio index=0
    options snd_hda_intel index=1
    
    のように記述した。上がUSB Audio、下がオンボードサウンド。

    環境によっては、
    options snd_usb_audio index=1
    options snd_hda_intel index=2
    
    といった具合に数字を0ではなく1からにしないと上手く動作しない場合もある。

    /etc/modprobe.d/sound.confの末尾に設定を記述する方法もある様子。

更新:2009/12/02

USBオーディオデバイスを使う(SBDMULX編)

  • ※オンボードのサウンドデバイスがある場合、BIOSで無効にしておく。

    USB接続型の外付けサウンドカード(Sound Blaster Digital Music LX SBDMULXなど)を使用する場合多少の設定が必要。まず、

    を起動し、

    sudo gedit /etc/modprobe.d/alsa-base.conf

    と実行して設定ファイルを管理者権限で開き、# Prevent abnormal drivers from grabbing index 0以下の行を全てコメントアウトする(行の最初に#を付ける)。次いで以下の行を末尾に加える。

    alias snd-card-0 snd-usb-audio
    options snd-usb-audio index=0
    

    ※USBオーディオ以外からは音が出なくなるらしいので注意。

    その後、再起動するかデバイスを接続し直せば設定が反映される。

    デフォルトの音量を変更したい場合はシステム > 設定 > サウンドで出力の音量を変更するか、GNOMEターミナルで、

    alsamixer

    と実行してミキサープログラムを起動、→キーを押してSpeakerを選択し、↓キーを押してボリュームを下げ、Escキーを押して終了する。

更新:2009/12/12

更新:2009年12月12日
作成:2009年10月12日