PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zwei identische Soundkarten



Ypsilon
27.03.03, 18:53
Hi,

ich hab hier zwei genau gleiche Soundblaser-Karten, die einzeln auch perfekt laufen (ALSA 0.9.1, snd-ens1370-modul).
Nun erscheint es mir ja logisch, wie ich zwei Soundkarten mit verschiedenen Chips in der /etc/modules.conf einrichte.
Da würde es ja dann so aussehen:



# ALSA portion
alias snd-card-0 snd-ens1370
alias snd-card-1 snd-andererchip

options snd-ens1370 index=0 enable=1
options snd-andererchip index=1 enable=1
[restliches zeugs]


Aber wie mach ich das jetzt wenn ich zwei gleiche Chips hab??



# ALSA portion
alias snd-card-0 snd-ens1370
alias snd-card-1 snd-ens1370

options snd-ens1370 index=0 enable=1
options snd-ens1370 index=1 enable=1
[restliches zeugs]


Das klappt nicht (ist auch irgendwie logisch).

Kann das auch noch anders als mit den Modulnamen unterschieden werden?
So läuft bisher immer nur eine von beiden.

Ypsilon

HackThor
27.03.03, 21:27
Hi!

warum sollte das nicht gehen mit 2 Karten? Habe mal Google angeworfen und das gefunden:
http://www.alsa-project.org/~valentyn/Alsa-sound-mini-HOWTO-5.html
Da gibts einen Abschnitt:

alias char-major-14 snd
alias snd-minor-oss-0 snd-mixer
alias snd-minor-oss-3 snd-pcm1-oss
alias snd-minor-oss-4 snd-pcm1-oss
alias snd-minor-oss-5 snd-pcm1-oss
alias snd-minor-oss-12 snd-pcm1-oss
alias snd-card-0 snd-gusclassic
alias snd-card-1 snd-gusclassic
options snd snd_major=14 snd_cards_limit=2
options snd-gusclassic snd_index=1,2 snd_port=0x220,0x260 snd_irq=5,11
snd_dma1=5,6 snd_dma2=7,3
in dem auch 2 identische Karten funktionieren.

Du mußt lediglich die Optionen richtig angeben (wie bei allen Modulen die mehrere gleiche Devices ansteuern können - eigentlich fast alle)

options snd-ens1370 index=1,2 enable=1,1
(im Prinzip: Parameter=Wert_Karte_1,Wert_Karte_2[,....])

ciao

Michael

Ypsilon
28.03.03, 14:00
Ok, das klappt soweit.
Ich kann jetzt mit alsamixer -c 0/1 die Karten einzeln regeln.

Allerdings hab ich nur ein einziges device /dev/sound/dsp,
und es kommt nur aus der Soundkarte mit index 0 was raus.

Müsste ich da nicht /dev/sound/dsp0 und dsp1 haben?
Ich muss ja irgendwie beide Soundkarten ansprechen können...

geronet
28.03.03, 16:26
Vielleicht musst du dsp1 anlegen mit mknod?

Ypsilon
28.03.03, 20:25
Bei einem devfs-System? :rolleyes:

Mhh also wenn ich ein dsp1 anleg und da waves hinschicke, dann kommen die immernoch aus der selben soundkarte wie wenn ichs nach dsp schick.
dsp nach dsp0 umbenennen geht nicht.
Muss man das net schon beim Laden des Modules angeben, oder zumindest in der devfsd.conf?

RapidMax
28.03.03, 20:35
Na eigentlich hab ich da keine Ahnung, nur eine Idee: Die Soundkarten werden ja anhand der Minor-Number unterschieden, folglich muss das Device dsp0 eine andere Minor-Number als dsp1 haben. Welche, müsste in /usr/src/linux/Documentdation/devices.txt stehen, oder zumindest im entsprechenden Treiber. Mit Devfs kenne ich mich zuwenig aus: Es legt das Devices nicht automatisch an, dann musst du es devfs.conf vermutlich festlegen (Oder macht das der Treiber?).

Und was ist, wenn der Treiber nicht mehrere Instanzen unterstützt, bzw. noch einen Fehler hat? Vermutlich haben nur wenige zwei Soundkarten. Für was brauchst du überhaupt zwei? Gibt das ein selbstgemachtes Mehrkanal-Soundsystem?

Gruss, Andy

Ypsilon
28.03.03, 21:20
Cool, wenn ich dsp1 jetzt per mknod mit den richtigen minor Werten anleg, dann funzt auch die zweite Soundkarte!

Allerdings ist das ja sehr umständlich und unelegant.
Der devfsd müsste diese devices (dsp1, mixer1 etc.) automatisch anlegen wie die der ersten Karte.
Wie krieg ich den dazu? :confused:

HackThor
28.03.03, 23:07
Uff. Devfs.... :rolleyes: (never did...)
Dazu müßtest du in die "/etc/modules.devfs" schauen was da für die "normale" Soundkarte drinsteht. Eventuell ist da schon ein Beispiel für eine 2. Karte (auskommentiert) drin, oder man kann aus der Art und Weise der 1. Karte ableiten was da für die 2. rein muß. An diesem Punkt bin ich aber echt überfragt - habe devfs bisher nur einmal kurz gesehen... Kannst ja mal die "devfsd.conf" und die "modules.devfs" ranhängen - evtl. hat ja jemand anders damit mehr zu tun gehabt (oder ich schaue mal rein :) ).

ciao

Michael