FreeBSD 8.3 diskless構築、その9

目的から考えると優先順位は低いのだが、ディスクレスクライアントのサウンド出力が試してみたのでメモしておく。

FreeBSD のX11でサウンド出力を行う

FreeBSD のX Windowを使用する場合サウンド出力がある方が都合がよいことがあるという口実でサウンド機能を有効にすることを試る。

古いFreeBSDでは、サウンドドライバーを組み込む必要があったが、現在のFreeBSD  では多くのサウンドチップで /boot/loader.conf に一行記述するだけでサウンド機能が有効になるようになっている。
私の場合、現時点で AD2700-ITX と Dell Vostro 1000 をディスクレスクライアントとして使う場合があるが、搭載されているサウンドチップが異なるようだ。

こういうケースでは、クライアントの /boot/loader.conf に全てのサウンドドライバーを有効にする記述を行えばいい。

snd_driver_load="YES"

実際には、サーバーの /diskless/boot/loader.conf に記述する。
このディスクレスクライアントを再起動し、X Window を立ち上げて、FireFoxで Youtube で動画再生してみればいい。幸い、どちらのホストでも無事にサウンドが出力された。dmesg を確認したところ以下のように、どちらも hdac ドライバーを使っているようだ。

AD2700の場合

hdac0: HDA Codec #0: Realtek ALC892
hdac0: HDA Codec #1: Intel (Unknown)
pcm0: <HDA Realtek ALC892 PCM #0 Analog> at cad 0 nid 1 on hdac0
pcm1: <HDA Realtek ALC892 PCM #1 Digital> at cad 0 nid 1 on hdac0
pcm2: <HDA Intel (Unknown) PCM #0 HDMI> at cad 1 nid 1 on hdac0

Vostro 1000 の場合

hdac0: HDA Codec #0: Conexant (Unknown)
hdac0: HDA Codec #1: Sigmatel STAC9220
pcm0: <HDA Sigmatel STAC9220 PCM #0 Analog> at cad 1 nid 1 on hdac0

全部のサウンドドライバーを入れてメモリを消費する必要は無いので、hdac ドライバーだけ有効になるように /boot/loader.conf を修正することにした。

snd_hda_load="YES"
# snd_driver_load="YES"

以前の行は、別のPCをディスクレスクライアントとして使用する場合に備え、コメントアウトしておく。

余談だが、AD2700-ITXのGMA3650ビデオはCUI 画面はボロボロに文字化けするが、X-Window を起動すれば画面表示の問題は解決する。ただし、現時点ではIntelドライバーではなく、VESA ドライバーで動かすことになるようです。従って 4:3 画面モードで利用することになります。

次回は、日本語入力に挑戦する。

 

コメントを残す