PulseAudioの設定
概要
Fedoraの標準サウンドサーバであるPulseAudioの設定について説明する。
インストール
PulseAudioの関連ツールをインストールする。
# yum install pa{devchooser,man,vucontrol,vumeter}
以降の説明はこれらのツールを用いて行うので、必ずインストールしておくこと。
設定
PulseAudioの状態を確認
まずPulseAudioの状態を確認する。メニューから「PulseAudio Device Chooser」を起動するか、コマンドラインより
$ padevchooser &
を起動する。するとタスクトレイにサウンドカード風のアイコンが現れる。これがPulseAudio関連のツールをまとめており、ここから各種ツールを起動することが出来る。
まずこのアイコンを右クリックし、「Manager」を起動する。コマンドラインからは
$ paman &
で同様にPulseAudio Managerが起動する。
Managerを起動すると以下のようなウィンドウが現れる。
ServerInfomationでは、PulseAudioの設定情報などを表示する。Default Sinkがデフォルトの出力デバイスを表し、Default Sourceがデフォルトの入力デバイスを表している。これらは後述する方法で変更することができる。
次に、Devicesのタブでは現在PCに認識されているデバイス一覧を見ることができる。
Sinksが出力一覧で、Sourcesが入力一覧である。複数デバイスを切り替えて使いたい場合、ここのNameを覚えておくこと。デバイス名をダブルクリックすればそのデバイスについて詳細情報がダイアログ表示される。
ClientsタブはPulseAudio経由で再生されているプロセスを表示する。Modulesは現在ロードされているモジュール一覧を表示する。Sample Cacheは後述するサンプル音源が表示される。デフォルトでは何もない。これらのタブはあまり使用することはないだろう。
デフォルトの入出力デバイスを切り替える
一時的な切り替え
複数のサウンドデバイスを使用しており、一時的にデフォルトデバイスを切り替えたい場合は、タスクトレイのpadevchooserを右クリックし、「Default Sink」ないし「Default Source」を選んで、その中にあるデバイスを選択すればよい。もしここに所望のデバイス名が表示されていなければ、「Others」を選択してデバイス名を入力することでデフォルトの入出力を切り替えることができる。
ただし、この方法で切り替えてもServer Infomationの表示は変化しないので注意すること。
恒久的な変更
恒久的にPulseAudioのDefaultDeviceを変更するには「$HOME/.pulse/default.pa」というファイルを作成し、そこにPulseAudioの設定を書き込む必要がある。
default.paファイルを開き、そこに以下の内容を記述する。
### Make some devices default set-default-sink alsa_output.1 set-default-source input.1
「alsa_output.1」、「alsa_input.1」はデフォルトにしたいデバイス名である。各自の環境に応じて書き換えてほしい。
そして
$ pulseaudio -k && pulseaudio -D
と入力し、PulseAudioサーバを再起動する。Server Infomationのデフォルトデバイス名が変化していれば成功である。
各種デバイスの細かな設定
PulseAudioの各種デバイスへの設定は/etc/pulse/default.paファイルに記述されている。これを$HOME/.pulse/以下にコピーし、必要な部分を書き換えてやればよい。
例えば、ALSAデバイスの設定を変更するには
load-module module-alsa-sink device="hw:0,0" rate=48000 tsched=0 sink_name=output
のように書き換えてやるとよい。
module-alsa-sinkとはALSAの出力デバイスを示し、device="hw:0,0"がデバイスを指定している。複数接続している場合は"hw:1,0"のように該当するデバイスを指定する。デバイス名は
$ aplay -l
にて調べることができる。ちなみにALSAの入力デバイスを示したければ「module-alsa-source」とすればよい。入力デバイス名は
$ arecord -l
にて調べることができる。device以降はPulseAudioがALSAに対して与えるパラメータで、上記の例ではサンプリングレートを48000Hz、スケジュールなし、デバイス名を「output」としている。ここで指定したデバイス名はpadevchooserで認識されるデバイス名となるのでわかりやすい名前を付けておくと良い。入力デバイスの場合は「source_name」である
これらの他に、よく使うパラメータとしては「format」がある。formatはサウンドカードが対応している入出力ビット数を指定する。例えば16bitのビッグエンディアンならば「format=s16」となる(これがデフォルト設定)。指定できる例としては「s24le」、「float32」、「float32be」、「float32le」など。通常はあまり変更することはない。
その他の設定について、詳しくはModules - PulseAudioを参考にしていただきたい。実際のところ、ALSAデバイスに対する設定以外は変更することは無いだろう。
PulseAudioはまだ開発されてから日が浅く、頻繁に機能追加が行われているので、default.paの内容はたまにチェックしておくと良いだろう。新しい設定項目が追加されていることがあるかもしれない。
PulseAudioサーバに関する設定
/etc/pulse/default.paではPulseAudioが各デバイスに与えるパラメータなどを設定したが、PulseAudio自身の設定項目は/etc/pulse/daemon.confに記述されている。このファイルも$HOME/.pulse/以下にコピーして編集することで、PulseAudioサーバの設定を変更することができる。
ほぼファイル内のコメントで内容は類推できると思われるのでここでは細かく説明しないが、default-sample-rateやdefault-sample-formatなどを変更することがあるかもしれない。
以上がPulseAudioの設定方法である。PulseAudioを正しく設定しないとFedoraでは音が鳴らせなくなるため、適切な設定を心がけたい。
- 最終更新:2009-10-24 23:36:38