PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Alsa - Standarddevice



lynix
30.01.05, 12:53
Hi!

Die zentrale Frage: Wie ändert man das Standard-device für die ALSA-Soundausgabe?

Die Problemgeschichte:
Ich hab bei diversen Spielen (UT2004, Quake, America's Army, etc.) keinen Sound und in der Konsole wurde "open /dev/[sound/]dsp: No such file or directory" ausgegeben. Also hab ich brav im Forum gesucht und herausbekommen, dass das mit der Alsa-OSS-Emulation zusammenhängt, die ich nicht im Kernel hatte. Also hab ich diese fest reinkompiliert, den Kernel neu gebacken und gebootet. Dann hab ich gemerkt, dass ich keine Alsa-Packages drauf hab und gleich mal alsa-base, alsa-oss und alsamixer installiert. Dann noch ein "alsaconf", in dem ich meine Soundkarte ausgewählt habe und ein "modprobe snd-pcm-oss" und die Fehlermeldung erschien bei den Spielen nichtmehr. Dummerweise scheinen alle Anwendungen als Standardsoundkarte das Dummy-Device zu nutzen. Wenn ich nämlich alsamixer starte, nimmt er Device 0, welches das Dummydevice ist. Starte ich ihn mit "alsamixer -c 1" nimmt er korrekterweise meine Soundkarte. Genauso verhält es sich mit XMMS, wo ich auch nur was höre, wenn ich explizit Device 1 in den Einstellungen auswähle.
Ich habe nun die Vermutung, dass UT und die anderen Games auch standardmäßig das Dummydevice nutzen, weshalb ich nichts höre. Wie ändere ich das?

More Info:
- Debian Sarge mit 2.6.10er Kernel
- SoundBlaster Audigy 2
- emu10k1 funzen, Module geladen

lsmod:


Module Size Used by
snd_pcm_oss 48356 0
snd_mixer_oss 17536 3 snd_pcm_oss
snd_emu10k1 92868 2
snd_rawmidi 20064 1 snd_emu10k1
snd_ac97_codec 72608 1 snd_emu10k1
snd_util_mem 3264 1 snd_emu10k1
snd_hwdep 7236 1 snd_emu10k1
fglrx 234624 9
af_packet 16904 2
usblp 10944 0
ohci1394 31428 0
ieee1394 94648 1 ohci1394
via_agp 7424 1
agpgart 28136 1 via_agp
uhci_hcd 30160 0
ehci_hcd 27460 0
ohci_hcd 19208 0
w83627hf 27488 0
i2c_sensor 2880 1 w83627hf
i2c_isa 1664 0
i2c_viapro 6220 0
ide_cd 38084 0
unix 23412 311


Wäre für Hilfe sehr dankbar,

lynix

Capsad
30.01.05, 23:02
Hi,


Die zentrale Frage: Wie ändert man das Standard-device für die ALSA-Soundausgabe?


Du kannst z.B. in /etc/modules das einfügen:
alias /dev/dsp1 snd-pcm-oss

Damit lädst du gleich beim booten automatisch das Modul snd-pcm-oss und er nutzt in dem Fall /dev/dsp1 als standard device für die Soundausgabe von dem oss emulierten zeugs. Sollte genau das sein was du suchst ;-)
Gruß
Capsad

fuffy
31.01.05, 14:35
Hi!


Dummerweise scheinen alle Anwendungen als Standardsoundkarte das Dummy-Device zu nutzen.
Warum überhaupt hast du das Dummy-Device mitkompiliert? Du hast doch ne Soundkarte.

Gruß
fuffy

lynix
31.01.05, 14:52
@Capsad: THX, gleich mal t3st0rn... :)

@fuffy: KP, hab gedacht so n Dummydevice schadet nie ;) Beim nächsten Mal lass ich es weg

lynix
31.01.05, 15:15
Tja, schade, Capsad, dein Tip geht leider nicht:

Hab die /etc/modules entsprechend ergänzt, aber Effekt gleich null. Das Modul wird überhaupt nicht geladen.

BTW, was mir da auffällt ist, dass ich bei dmesg uA folgendes erhalte:



Advanced Linux Sound Architecture Driver Version 1.0.6 (Sun Aug 15 07:17:53 2004 UTC).
ALSA device list:
#0: Dummy 1


Er findet also nur eine Soundkarte, undzwar die Dummykarte. Komisch, denn bei alsaconf findet er auch meine emu10k1-betriebene Audigy 2. Muss ich emu10k1 fest in den Kernel kompilieren? Hab im Moment als Modul und wird auch automatisch geladen...

Gruß,

lynix

fuffy
31.01.05, 15:19
Hi!

dmesg zeigt nur die "Module" im Kernel an. Die gerade laufenden Karten ermittelst du mit:
cat /proc/asound/cards

Gruß
fuffy

Capsad
31.01.05, 17:30
Hi,
jaa... hatte ne kleinigkeit übersehen. In /etc/modules nur das snd-??? modul eintragen, dann wirds beim booten geladen. In /etc/modprobe.d/aliases die vorher gepostete Zeile einfügen, das sollte diesesmal stimmen, kleiner Auszug aus der Datei:


# These are the standard aliases for devices and kernel drivers.
# This file does not need to be modified. ;)


Sollte dann hinhauen...
Gruß
Capsad

lynix
31.01.05, 20:24
Hi!

@Capsad: Hat immernoch keinen Effekt. Ich hab mal in /etc/init.d/alsa geguckt, da steht auch überall nur /dev/null drin. Wird wohl das Einfachste sein wenn ich bei der Neuinstallation am 06.02. einfach das Dummy-device weglasse ^^

@fuffy: laut /proc/asound/cards gibt aus:


0 [Dummy ]: Dummy - Dummy
Dummy 1
1 [Audigy2 ]: Audigy2 - Sound Blaster Audigy2
Sound Blaster Audigy2 (rev.4) at 0xa000, irq 10


Gruß,

lynix

Capsad
31.01.05, 22:13
So,
das sollte jetzt aber gehen ;-)
KDE-Kontrollzentrum - "Sound & Multimedia" - Sound - System" dort den Register "Hardware" , "Eigene Hardware Gerätedatei" anklicken - /dev/dsp1 reinschreiben --> ut spielen --> diech freuen ;-)
Gruß
Capsad

PS:: In dem alsa teil, das du dir angesehen hast, steht bei mir auch überall /dev/null ... trotzdem hab ich überall sound :-/

fuffy
01.02.05, 11:43
Hi!

Schreib mal folgendes in die /etc/asoundrc oder ~/.asoundrc (ungetestet):
pcm.!default {
type plug
pcm.slave hw:1
}

pcm.dsp0 {
type plug
pcm.slave hw:1
}

ctl.mixer0 {
type plug
pcm.slave hw:1
}

Gruß
fuffy

lynix
01.02.05, 17:47
Hi!

@Capsad: Nun, unter KDE hab ich jetzt Sound, aber am UT-Problem hats nix geändert :)

@fuffy: Leider hat beides keinen Effekt

Naja, da ich am Sonntag ja eh formatiere und total auf Debian umsteige (endlich!), kompiliere ich dann einfachmal ohne Dummydevice, mal sehen was draus wird.

Euch beiden trotzdem Vielen Dank für eure Hilfe! Falls es Sonntag nicht klappt, geht der Topic weiter :)

Gruß,

lynix