ismét ac97-es hangkártya...

Fórumok

Sziasztok!

Megnéztem itt egy-két fórumos oldalt, de erre a hibára nem találok megoldást. Adva vagyon egy Intel 865-ös alaplap, azon egy ac97-es integrált hangkártya és hallgat. Debian Sarge-ot használok, 2.4.32-es kernellel, OSS-sel próbálom hangra bírni. Először csak az ICH és a Creativ Ensoniq AudioPCI 97 modulokat, végén az összeset beleforgattam a kernelbe és modprobe segítségével az alábbi modulokat töltöttem be: sound, ac97, ac97_codec. De a i810_audio modult nem töltötte be és a syslogba ezt írta: i810_audio: unable to allocate region 0. Valami kimaradt a kernel forításból? Hogyan tudnám életre kelteni 2.4-es kernel alatt a hangkártyát? A korábbi 2.4.27-2-386-os "gyári" kernel még nem támogatja, azzal a hibaüzenettel nem tölti be.

Köszönöm a segítségeteket.

Hozzászólások

mért oss alsa helyett? v az nem megy 2.4-en?
-------------------------------------------
Make your choice...

Forrásból lefordítottam mindkettőt.
XMMS nem szól, de az mplayerrel le tudom a zenéket játszani.
Jó, megy, de újraindítás után nem "megy". Beírtam a /etc/modules fájlba azokat a modulokat, amiket be kell tölteni. Betölti, de a hang nem megy. Ha újra futtatom az alsaconfot elindul és újra betölt mindent. Ezzel ismét van hang, de újraindítás után ismét nincs... Mit tegyek, hogy menjen a dolog újraindítás után is?

Kellene csinálni egy initscriptet (?)
Már fingom sincs hogykell csinálni debianban, sőőt én csak uhu-ztam...

Ha az emlékeim nem csalnak, van a /etc/init.d/-ben egy SKELETON nevá fájl, azt lemásolod ugyanoda, és azon kell egy kis módosítást végezni..

Egyebet nemtudok mondani °L°

_______________
"Óra nélkül halottak vagytok! Stimmel?!" (szivatógép rlz)

OSS:

Szerintem igen, valami kimaradt a kernelfordításból. Úgy tudom, hogy a DMA-terület csak bizonyos (alacsony) címtartományban lehet, ehhez rendszerinduláskor le kell foglalni ott egy blokkot, hogy a DMA majd tudja használni. Erre van valahol egy opció a kernel paraméterezésénél, de nem emlékszem, melyik...

ALSA:

> Ha újra futtatom az alsaconfot elindul és újra betölt mindent.

Hát akkor nézz egy lsmod-ot, és mazsolázd ki, hogy mi az, ami újraindítás után nincs bent, de alsaconf után bent van. Mondjuk irányítsd át fájlba:

$ lsmod > modulok-indulas
$ alsaconf
$ lsmod > modulok-alsaconf

Ha ALSA-t használsz, akkor is szükséged lesz egy OSS-felületre, mert sok program még csak azt ismeri. Az ALSA-nak viszont van teljesen jól működő OSS-felülete is. Az snd-pcm-oss és az snd-mixer-oss modulok kellenek hozzá.

Egyébként ezt ,,szépen'' úgy szokás megcsinálni, hogy nem mindent az /etc/modules-be írsz (oda minél kevesebbet, csak amit nagyon muszáj), hanem az /etc/modutils könyvtárban csinálsz egy külön fájlt a hangnak. Nekem ilyen van:

------- /etc/modutils/hang --------

alias char-major-14-0 snd-mixer-oss
alias char-major-14-3 snd-pcm-oss

pre-install snd-mixer-oss modprobe snd-emu10k1
pre-install snd-pcm-oss modprobe snd-emu10k1

-----------------------------------

Ez azt teszi, hogyha valami meg akarja nyitni a /dev/dsp-t (az a (14,3)-as kódú driver), akkor az snd-pcm-oss modul betöltődik, de a pre-install sor miatt előtte betölti az snd-emu10k1 modult. Neked az emu10k1 helyett valami más lesz (nézd meg a hardvertáblázatot az alsa-project.org oldalon, biztos benne lesz, hogy melyik modul kell Neked).

Ezen kívül ott van nálam az /etc/modutils/alsa-base fájl is, amit az alsaconf tett oda, a többi abban van leírva - azt nem bántom.

Ha bármit változtatsz az /etc/modutils könyvtárban, ne felejtsd el kiadni az update-modules parancsot, hogy összerakja a modules.conf fájlt.

man update-modules
man 5 modules.conf
man 5 modules

És így visszanézve egyre gyanúsabb, hogy Neked valóban az OSS-emulációs réteg nincs betöltve. (Remélem, azért jelen vannak, pl. modinfo-val megnézheted. Ha nincs, újra kell konfigurálni és fordítani az ALSA-t.) Gyorssegély:

modprobe snd-pcm-oss
modprobe snd-mixer-oss

Hosszú távra meg amiket leírtam a modutils-nál.

Valószínű mplayer alapból ALSA-t használ Nálad, míg az XMMS OSS-t. Az XMMS-t is át lehet kapcsolni különben ALSA-ra. Szerintem miért ne (kerüljünk ki egy emulációs réteget):
Ctrl + P (asszem a ,,Preferences'' után), ott lent van egy olyan keret, hogy kimeneti (output) modul, ott válaszd ki az ALSA-t.

Ha már minden programod ALSA-val megy, nem is kell majd az OSS-emuláció. :)

Megnéztem lsmod > modulok_start.txt és lsmod > modulok_alsasound.txt kimeneteit, de minden hanggal kapcsolatos modult betölt. Csak nem "használja fel" a múködéshez. Újraindítás után hang csak így van /etc/init.d/alsasound restart ezután minden megy. Ha ezt nem csinálom meg, nem tud semmilyen hangeszközt megnyitni. Az XMMS-t én is megpróbáltam ALSA-val meghajtani, de OSS-sel ment, alsa-nál azt írta nem találja az eszközt. Betöltődnek a modulok, de hang nincsen... Mi lehet a gond?

Alapból /etc/modutils/sound van ilyen fájl. Ebben
alias snd-card-0 snd intel8x0
options snd-intel8x0 index=0

----

Az is döntés, ha most nem döntesz...

Csigaa ötlete után megnézheted azt is, hogy a /etc/modutils/sound fájlban lévő két sor benne van-e a /etc/modules.conf-ban. Ha nincs, akkor kell egy update-modules parancs. (Ez az esetlegesen közvetlenül belebarkácsolt dolgokat törölni fogja.)

Apropó, a fönt említett két sor közül az első:
alias snd-card-0 snd intel8x0
Itt ugye valójában van kötőjel a modul nevében (snd-intel8x0), csak most gépelted el? (Kell kötőjel.)

Amúgy szerintem az furcsa, hogy OSS-sel megy, ALSA-val meg nem... szerintem akkor a kernel OSS Free driver-e megy, nem az ALSA OSS-emulációja. Nincs betöltve snd-pcm-oss, illetve snd-mixer-oss modul, igaz?

Hy!
Nekem is volt hasonlo gondom sarge-l (most meg a testing-gel szivok miatta... :( ) akkor ugy oldottam meg h

apt-cache search alsa k7

ez dobni fog 1 csomagot (vmi ilyen neven: alsa-module-2.4-k7 ) ami belemaszik a kerneledbe es szorabirja a kis szazlabut ;) ) Remelem segit! (tom h ez lemeletileg csak AMD Atholonoknal muxik de nalam 1 Celeronos ASUS lappal (P4S88 ) is pocogott! :) Dontest rad bizom!

Remelem sikerrel jarsz! :)