[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:23797] Re: Sound failure on 2.4.0 + alsa



  村田です。

Reply to
  Date: Sun, 3 Sep 2000 01:25:37 +0900
  Message-ID: <20000903012308W.tach@xxxxxxxxxxxxx>
  From: tach@debian.or.jp (Taku YASUI)
 tach> fmurata> ~/.esd.conf に
 tach> fmurata> spawn_options= -terminate -nobeeps -as 2 -unix -r 44100
 tach> fmurata> を書いてみてください。-unix がポイント。
 tach> fmurata> #CONFIG_PACKET=m だからなんて落ちは無いと思うけど。
 tach> 
 tach> こんどは,.gnome-errors に,
 tach> 
 tach>     Unix domain sockets are disabled for security reasons
 tach>     - server format: sample rate = 44100 Hz
 tach> 
 tach> と出てきました(しかも,大量に).
disable と言いながら、esd のソース見る限り、メッセージを出すだけに
みえるんですが…

 tach> #そして,この大量のメッセージのあと,申し訳なさそうに,
 tach> #「Unable to bind port 16001」がしぶとく残ってます.
では、-unix の代わりに -public 付けてみてください。

 tach> mpg123 -sq foobar.mp3 | aplay -m したら,なんと,音が鳴りました.
 tach> mpg123 foobar.mp3 でも鳴りました.
 tach> 
 tach> よって,OSS 互換と ALSA ネイティブでの音は鳴ってるみたいです.
aplay で鳴るのは esd とは関係ないと思います。
私の記憶があってるなら、es1371 は 2つの PCM を持っていたと思います。
で、aplay -d 1 でいつでもなるような気がする。
念のため、/proc/asound/pcm を見せてください。

 tach> しかし,esd からの音は出ません.
 tach> xmms では OSS ドライバだと鳴るのですが, Esound プラグインだと,
 tach> さきほどの Unix domain socket 云々が出てきて,鳴りません.
 tach> #CONFIG_PACKET=m だから?
そうならば、modprobe af_packet として実験してみては?

 tach> というか,esd 立ち上がってない… ps の出力にありませんでした.
 tach> で,コマンドラインから esd ってやってみると,ピポパパっと例の
 tach> 音が鳴りました.

 tach> fmurata> # es1371 なら esound-alsa を使う意味はあると思う。
 tach> というのは,どういう理由からでしょうか.
 tach> sound 関係は疎くて(ほかが詳しいわけでもないんですが…),なぜ
 tach> esound-alsa のほうがいいのか,よくわからないのです.
 tach> #alsa ネイティブを使うか,OSS 互換を使うかのちがいですよね?
esound は OSS の場合、決められた1つの PCM デバイスしか見に行きません。
ところが、ALSA の場合、PCM デバイスが複数ある場合、利用可能なデバイスを
探してくれます。
というような違いがあるので、PCM を複数持つカードの場合 esound-alsa の方が
良いわけです。
#ただし、4DWave のように大量のサブチャンネルを持たない場合ですけど。

 tach> fmurata> あと同様に ALSA なアプリケーションでの結果を教えてください。
 tach> fmurata> たとえば、mpg123 -s [ファイル] | aplay -m てな具合いで。
 tach> 
 tach> ~/.esd.conf を書く以前の状態の時は,まったく音が鳴りませんでした.
 tach> #エラーメッセージもなし,当然,/proc/interrupts の数値も 0 でした.
~/.esd.conf を消して mpg123 -s %s | aplay -m -d 1 ではどうでしょう?
音が鳴らないと判断するのは /proc/interrupts の変化が無い場合にしてください。

 tach> esd が悪さをしていた?
 tach> しかし,以前は,ブート直後のコンソールログイン時も鳴らなかった
 tach> んだけどなぁ.

/etc/modules に
snd-card-ens1371
snd-mixer-oss
snd-pcm-oss
を書いて、/etc/modules.conf の ALSA 関係のところに
post-install snd-card-ens1371 /usr/sbin/alsactl restore
を書いてリブートしたらどんな状態でしょうか?

 tach> しかし,もうちょっとで,完全に音が鳴りそうです.
頑張って下さい。

以上
--
  村田 文彦 (Fumihiko Murata)
  E-mail:  fmurata@xxxxxxxxxxxxxx
  UIN: 19199445