Linuxで音声を出す方法(ALSA編)
Linuxをインストールすると、たまに音が出ないときがあります。そんな時の音の出し方。
Linuxの音を出すための2大ソフトはALSAとOSS(オープンソースソフトウェアの略じゃなくて、ちゃんとこういう名前のものですよ)です。
今回はALSAで音を出す方法を解説いたします。
まずはALSAをインストールします。インストールするソフトは「alsa」です。ちなみにDebianでalsaというキーワードで検索してみると
$ aptitude search alsa
以下のような結果が返ってきます。
v alsa - i alsa-base - ALSA driver configuration files p alsa-oss - OSS アプリケーション用 ALSA ラッパー p alsa-source - ALSA driver sources p alsa-tools - Console based ALSA utilities for specific hardware p alsa-tools-gui - GUI based ALSA utilities for specific hardware i A alsa-utils - ALSA ユーティリティ p alsamixergui - ALSA サウンドカードドライバ用のグラフィカルなサウンドカードミキサ v alsaplayer - p alsaplayer-alsa - ALSA 用に設計された PCM プレイヤ (ALSA 出力モジュール) p alsaplayer-common - PCM player designed for ALSA (common files) p alsaplayer-daemon - ALSA 用に設計された PCM プレイヤ (非対話式版) p alsaplayer-esd - PCM player designed for ALSA (EsounD output module) p alsaplayer-gtk - PCM player designed for ALSA (GTK version) v alsaplayer-interface - p alsaplayer-jack - PCM player designed for ALSA (JACK output module) p alsaplayer-nas - ALSA 用に設計された PCM プレイヤ (NAS 出力モジュール) p alsaplayer-oss - ALSA 用に設計された PCM プレイヤ (OSS 出力モジュール) v alsaplayer-output - p alsaplayer-text - ALSA 用に設計された PCM プレイヤ (テキスト版) p alsaplayer-xosd - ALSA 用に設計された PCM プレイヤ (OSD バージョン) p balsa - GNOME 向けメールクライアント p balsa-dbg - An e-mail client for GNOME p bluez-alsa - Bluetooth ALSA support p bse-alsa - ALSA plugin for BEAST p gnome-alsamixer - GNOME 用 ALSA サウンドミキサ p gstreamer0.10-alsa - GStreamer plugin for ALSA p libalsa-ocaml - OCaml bindings for the ALSA library p libalsa-ocaml-dev - OCaml bindings for the ALSA library p libalsaplayer-dev - PCM player designed for ALSA (interface library, development files) p libalsaplayer0 - PCM player designed for ALSA (interface library) p libclalsadrv-dev - Development file for libclalsadrv p libclalsadrv1 - ALSA driver C++ access library p libesd-alsa0 - Enlightened Sound Daemon (ALSA) - Shared libraries p libpt-1.10.10-plugins-alsa - Portable Windows Library Audio Plugin for the ALSA Interface p libpt-1.11.2-plugins-alsa - Portable Windows Library Audio Plugin for the ALSA Interface v libpt-plugins-alsa - i A libsdl1.2debian-alsa - Simple DirectMedia Layer (with X11 and ALSA options) p libsnack2-alsa - Sound extension to Tcl/Tk and Python/Tkinter - Tcl/Tk library p libsox-fmt-alsa - SoX alsa format I/O library p libwine-alsa - Windows API implementation - ALSA sound module p mpg123-alsa - LSA をサポートした MPEG layer 1/2/3 オーディオプレイヤー - ダミーパッケージ p python-alsaaudio - Alsa bindings for Python v snd-gtk-alsa - p tuxguitar-alsa - tuxguitar plugin for sound playback using ALSA p vlc-plugin-alsa - dummy transitional package p xfce4-mixer-alsa - Xfce4 Mixer ALSA backend p xmms2-plugin-alsa - XMMS2 - ALSA output p yate-alsa - ALSA module for yate
ちなみに、正確にはalsaはalsa-baseの別名なので、alsa-baseをインストールしても同じ意味です。
$ su - # aptitude install alsa
もしくは
$ su - # aptitude install alsa-base
Debian以外のディストリビューションでも、恐らく「alsa」というパッケージ名でALSAが提供されているはずです。
インストールしただけで音がなる場合もあるかもしれませんが、音が鳴らない場合はrootユーザーから(もしくはsudoなどを使ったroot権限で)以下のようなコマンドを入力します。
# alsaconf
もしくは
$ sudo alsaconf
alsaconfはLinuxの音声のための設定ツールです。
これを実行すると以下のような画面が表示されます。
なんか英語で言っています。初心者の皆はドキドキするがいいさ。簡単に訳すと「これはLinuxの音声設定のためのスクリプトだよ」って書いています。下の方に「設定するからもし今音声を出すソフトとか使っていたら止めてね」とか「testingバージョンとかsidバージョンのDebianを使っていて、Linuxの(カーネルの)バージョンが最新の人はこのスクリプトを使わなくても自動的に音が出てるはずだよ」とか書かれています。
「testingバージョン〜」というのはDebianを使っている人にしか関係無いと思います。他のディストリビューションを使っている人は無視していいです。つまり「既に音声が出てるんだったら、もう一回このスクリプトで設定しなおす必要はないよね?」と言っているわけですね。今回の例では「皆さんは音が出ていない」という前提なので、Enterキーを押して「了解」しましょう。
設定を進めると「音声を出すためのシステムを見つけたからどれ使うか選んでね!」っていうのが出ます。
最近のLinuxは凄いな。音を出すためのものを勝手に探知してくれるんだもんな、と思いながら好きなものを選びましょう。
この後、私の場合は以下の画面が表示されましたが、皆さんは多分表示されないと思います。
実は既に私は一回alsaconfで音声を設定していて、この解説ページで画像を使うために、再度alsaconfを実行したんですね。偉いな、私。もしこんな感じのが出たら「はい」を選びます。
最後に「設定が完了したよ。後はamixerでデフォルトの音量を設定するなり、alsamixerとかgamixで音量を調節したりしてね」って出てきます。
「え?まだ何か設定しないといけないの?」と思うかもしれませんが、実はもう(とりあえず)音が出ます。最後のは「音量の調節とかは他のソフト使ってね」ってことです。
さて、音量の調整ですが、現在使用しているデスクトップ環境の最初から付属している音量調整ソフトで普通に設定できるはずです。
音量調整メニューが無いようでしたら好きなのをインストールしましょう。GNOMEなら先ほどのalsaと言うキーワードで検索した時に出てきたgnome-alsamixerとかどうでしょう。Xfceならxfce4-mixerとか。KDEならkmixとか。本当になんでもいいんです。
なぜなら、ALSAで設定した音声デバイスを認識しているのはデスクトップ環境ではなくLinux本体その物だからです。
ちなみに「mixer」とか「mix」とソフトウェア名についているものが、(基本的に)音量調整ソフトになります。
まぁでもLinuxの音声関係は私も苦手なので、これで上手くいかない可能性もあります。その場合は他のサイトの解説サイトを参考にするがいいさ。
なお、alsaconf実行時に表示される言語が日本語ではなく、最後まで英語である場合があります。その場合でも基本的な手順は上記の通りです。