*

FreeBSD をクライアントとして利用する (サウンド)

公開日: : 最終更新日:2013/12/14 FreeBSD, FreeBSD くらいあんと

Seichan です.FreeBSD をクライアントとして利用する為の覚え書き其ノ一.
まずはやっぱり音でしょう.と言う事でサウンド関連.

FreeBSD は割と多くのオーディオチップをサポートしており,ローダブルモジュールになっているので,まずは pciconf でデバイスを確認しつつ kldload でロードしてみるのが手っ取り早いです.

[seichan@ayanami:~] > pciconf -lv | grep -B3 -C3 multimedia
hdac0@pci0:0:27:0:    class=0x040300 card=0x02111028 chip=0x293e8086 rev=0x02 hdr=0x00
    vendor     = ‘Intel Corporation’
    device     = ‘82801IB/IR/IH (ICH9 Family) HD Audio Controller’
    class      = multimedia
    subclass   = HDA
pcib2@pci0:0:28:0:    class=0x060400 card=0x02111028 chip=0x29408086 rev=0x02 hdr=0x01
    vendor     = ‘Intel Corporation’

手元の環境だと,Intel の HD Audio なチップがのっています.
サウンド関連の kernel module をロードしてみる.sound.ko はサウンド関連で必須なモジュールです.
その後,それぞれチップにあったモジュールをロードします.

[root@ayanami:~] > kldload sound
[root@ayanami:~] > kldload snd_hda

無事チップにあったモジュールがロード出来ると,次のような出力がコンソールに出ます.dmesg コマンドや,/var/log/messages ファイルも合わせて確認して下さい.

hdac0: HDA Codec #0: Analog Devices AD1984
pcm0: <HDA Analog Devices AD1984 PCM #0 Analog> at cad 0 nid 1 on hdac0
pcm1: <HDA Analog Devices AD1984 PCM #1 Analog> at cad 0 nid 1 on hdac0

この PC の場合,前面,背面の両方にオーディオジャックがある為か 2つの pcm デバイスが現れます.
また,pcm0 が背面,pcm1 が前面にアサインされている様です.
合わせて,/dev 以下に dsp デバイスが生えているか確認して下さい.

[seichan@ayanami:~] > ls /dev/dsp*
/dev/dsp0.0  /dev/dsp0.1  /dev/dsp1.0  /dev/dsp1.1  /dev/dsp1.2

デバイスが上記の様に生成された事を確認したら,/boot/loader.conf に反映させます.

[root@ayanami:~] > echo ‘sound_load=”YES”‘ >> /boot/loader.conf
[root@ayanami:~] > echo ‘snd_hda_load=”YES”‘ >> /boot/loader.conf

この状態で,xmms 等のアプリケーションから音を鳴らす事が出来ます.上記の様に2つ以上のデバイスが生えている場合,どのデバイスを使っているか.を確認して下さい.
例えば,xmms の場合,サウンドデバイスを指定する事が出来ます.この PC の場合前面のジャックにスピーカを接続していて,pcm1 を利用する形となっている為,出力デバイスは /dev/dsp1.0 になりました.

もし,アプリケーション側で出力デバイスを指定出来ない場合,次の様に sysctl を設定する事でデフォルトデバイスを変更する事が可能です.動作としては devfs によって /dev/dsp のリンク先を /dev/dsp.n にアサインする動作となります.まず,現在の設定値の確認です.

[seichan@ayanami:~] > sysctl hw.snd.default_unit
hw.snd.default_unit: 0

default_unit が 0 の場合,pcm0 (/dev/dsp0.0) を使う事になります.他のデバイスをデフォルトとしたい場合は次の様に sysctl でデバイス番号を渡します

[root@ayanami:~] > sysctl hw.snd.default_unit=1
hw.snd.default_unit: 0 -> 1

これで改めてサウンド出力を確認して下さい.問題なく音が出るようになったら,/etc/sysctl.conf に変更を反映してしまいましょう.

[root@ayanami:~] > echo ‘sysctl hw.snd.default_unit=’ >> /etc/sysctl.conf

以上で,再起動後もサウンドデバイスが利用でき,且つデフォルトデバイスが変更された状態で利用が可能になります.

その他,sysctl で色々と変更出来ます.詳細は man sound(4) を参照すると良いでしょう.

取り合えず,今回はこんな感じで.

SPONSORED LINK
  ☆ ブログランキング参加しました (*≧∀≦)ノシ
にほんブログ村 IT技術ブログ FreeBSDへ 

関連記事

no image

FreeBSD 6.0 RELEASE キター

newvers.sh のコミットログには Welcome to 6.0-RELEASE. の文字が.

記事を読む

仕事中ですが臨時のカキコです

本日,仕事中にも関わらず,某社勤務の Seichan が Blog に記事を投稿するという暴挙に打っ

記事を読む

no image

もっともセキュアなOSはBSDだそうだ

ITmediaによると,もっともセキュアな OS はオープンソースプラットホームの BSD と Ma

記事を読む

PHPki で簡単証明書運用 (1)

この記事は phpki-0.83.tar.gz を元に書きましたが,不具合多数の為最新のソースコード

記事を読む

no image

mod_php の pgsql.so

自宅サーバにインストールしてある ports/Packages を最新版にすべく作業して Apach

記事を読む

FreeBSD で NFS (5) 【NFSクライアントとマウントオプション】

Seichan です.こんばんわ.公私ともにドタバタしていてまったく進みません... 前回「Fre

記事を読む

GEOM_LABEL をちょっと理解してみる

Seichan です.こんばんわ. 「GEOM 再学習」で宣言したとおり,GEOM の何かについて

記事を読む

GEOM 再学習

Seichan です.こんばんわ. 最近,GEOM (modular disk I/O reque

記事を読む

no image

RBL は使ってはならない

Seichan です.毎度様です. 最近めっきり使う人がいなくなったと思っていたのに,いまだ使ってい

記事を読む

no image

antibadmail その後

2005/12/24 に antibadmail を導入し,約3週間たちました.現状の状態を報告して

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Google Adsense

PHPki で簡単証明書運用 (5) 【管理ユーザのメンテナンスとCRLの取得】

Seichanです.こんばんわ. いつものとおり,だいぶ日が経ってし

PHPki で簡単証明書運用 (4) 【作成した証明書を管理する】

Seichanです.こんばんわ. 先日の「PHPki で簡単証明書運

PHPki で簡単証明書運用 (3) 【署名されたサーバ証明書を作る】

Seichan です.こんばんわ. さて,先日の「PHPki で簡単

PHPki で簡単証明書運用 (2) 【初期設定と Root CA 証明書作成】

Seichan です.こんばんわ. さて,先日の「PHPki で簡単

PHPki で簡単証明書運用 (1) 【PHPki の修正と導入 (修正版)】

Seichan です.こんばんわ. 先日「PHPki で簡単証明書運

→もっと見る

PAGE TOP ↑