野宮です。 総括です。 In the Message; Subject : Re: [suse-linux-ja] Hammmerfall HDSP9632が鳴らない Message-ID : <s5hwthwvw3x.wl%tiwai@suse.de> Date & Time: Fri, 23 Dec 2005 13:25:22 +0100 [Iwaiさん] == Takashi Iwai <tiwai@suse.de> has written: 松本さん> > この例だと、どうやらFirmwareのバージョンが関係しているみたいなんですが、 松本さん> > いかがでしょうか? どうもそのようです。 手許にあるカードのFirmwareは、152、つまり、0x98 で、このFirmwareの違いが問 題の根源のように思われます。 松本さん> > (/usr/src/linux-VER-REL/sound/pci/rme9652/hdsp.c です) 松本さん> > どちらも同じソースのようでした。 松本さん> > 松本さん> > ソースの中に 松本さん> > 松本さん> > static int hdsp_playback_to_output_key (hdsp_t *hdsp, int in, int out) 松本さん> > { 松本さん> > switch (hdsp->firmware_rev) { 松本さん> > case 0xa: 松本さん> > return (64 * out) + (32 + (in)); 松本さん> > case 0x96: 松本さん> > case 0x97: 松本さん> > return (32 * out) + (16 + (in)); 松本さん> > default: 松本さん> > return (52 * out) + (26 + (in)); 松本さん> > } 松本さん> > } 松本さん> > 松本さん> > …という箇所があり、Firmwareのバージョンが 0x97 よりも新しいと問題が起こ 松本さん> > る可能性がある、ということなんじゃないかと思うんですがどうでしょうか? alsa-driver-1.0.10.tar.gzのソースを static int hdsp_playback_to_output_key (hdsp_t *hdsp, int in, int out) { switch (hdsp->firmware_rev) { case 0xa: return (64 * out) + (32 + (in)); case 0x96: case 0x97: case 0x98: return (32 * out) + (16 + (in)); default: return (52 * out) + (26 + (in)); } } と書き換えたりしました(もう一カ所同じような部分があり、そこも変更しました) が、現象に変化ありませんでした。やってみて、全然関係ないようにさえ思えまし た。 どうも、44.1KHZのデータを8KHz位(?) に変換して再生しているように思われます。 そうは言うものの、動画再生に於て、おかしな音声に同期して画像が再生されるの が不思議でなりません(Flash Player、MPlayer)。 Iwaiさん> HDSP ドライバはいくつかの設定が非標準的にコーディングされていて、 Iwaiさん> alsactl で以前の状態に戻すことができないため、ボリュームの設定など Iwaiさん> hdspconf を起動する必要があります。さらに細かい設定は hdspmixer を実行 Iwaiさん> してください。 これですが、hdspconf ではボリュームの調節が出来ません。つまり、ボリューム調 節に該当する部分が無く、スピーカーの方でボリュームを調節するしか手がありま せんでした。 また、hdspmixer での調節は、ボリュームの微調整に止まるものです。 ともあれ、Net で調べてもみましたが、Firmware 0x98 では何の情報も得られませ んでした。 --- 野宮 賢 mail-to: nomiyac360@mg.point.ne.jp 「eメールや携帯電話に縛られた社会は、自分自身と向き合ったり、 空想にふけったりする自由を奪う。」 -- M. Crichton --