/dev/dsp: Softphones fuer VoIP geben keinen Ton

Hauke Joachim Zuehl hzuehl at athene.dnsalias.org
Mon Aug 15 13:29:37 CEST 2005


Hi :)

Nach laengerer Zeit der Abwesenheit, melde ich mich gleich mal mit einer Frage 
zu einem merkwuerdigen Phaenomen zurueck:
Per Softphone (KPhone, X-Lite) will ich telefonieren. Dummerweise hoere ich 
aus meinen Lautsprechern keinen Ton :(

Geraet ist /dev/dsp, Gruppenzugehoerigkeit ist in Ordnung, wie mplayer beweist 
(auch xmms brummt):
hauke at fafnir [xten-xlite] >>lsof /dev/dsp
COMMAND  PID  USER   FD   TYPE DEVICE SIZE   NODE NAME
mplayer 8737 hauke    5w   CHR   14,3      127792 /dev/dsp

Dann habe ich auf X-Lite mal einen strace gemacht nud folgender Abschnitt ist 
mir aufgefallen:
open("/dev/sndstat", O_RDONLY)          = -1 ENODEV (No such device)
access("/dev/dsp", R_OK|W_OK)           = 0
rt_sigaction(SIGALRM, {0x4002e7a0, [ALRM], SA_RESTORER|SA_RESTART, 
0x407506f8},
{SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0
alarm(1)                                = 0
open("/dev/dsp", O_RDWR|O_NONBLOCK)     = 6
alarm(0)                                = 1
ioctl(6, SOUND_PCM_READ_CHANNELS, 0xbffff40c) = 0
ioctl(6, SOUND_PCM_READ_CHANNELS, 0xbffff40c) = 0
ioctl(6, SNDCTL_DSP_GETCAPS, 0xbffff408) = 0
ioctl(6, SNDCTL_DSP_GETFMTS, 0xbffff408) = 0
ioctl(6, SNDCTL_DSP_GETTRIGGER, 0xbffff408) = 0
ioctl(6, SNDCTL_DSP_SPEED or SOUND_PCM_READ_RATE, 0xbffff404) = 0
ioctl(6, SNDCTL_DSP_SPEED or SOUND_PCM_READ_RATE, 0xbffff404) = 0
ioctl(6, SNDCTL_DSP_SPEED or SOUND_PCM_READ_RATE, 0xbffff404) = 0
ioctl(6, SNDCTL_DSP_SPEED or SOUND_PCM_READ_RATE, 0xbffff404) = 0
close(6)                                = 0
access("/dev/dsp0", R_OK|W_OK)          = -1 ENOENT (No such file or 
directory)
access("/dev/sound/dsp0", R_OK|W_OK)    = -1 ENOENT (No such file or 
directory)
access("/dev/dsp1", R_OK|W_OK)          = 0
rt_sigaction(SIGALRM, {0x4002e7a0, [ALRM], SA_RESTORER|SA_RESTART, 
0x407506f8},
{0x4002e7a0, [ALRM], SA_RESTORER|SA_RESTART, 0x407506f8}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0
alarm(1)                                = 0
open("/dev/dsp1", O_RDWR|O_NONBLOCK)    = -1 ENODEV (No such device)
alarm(0)                                = 1
access("/dev/dsp2", R_OK|W_OK)          = 0
rt_sigaction(SIGALRM, {0x4002e7a0, [ALRM], SA_RESTORER|SA_RESTART, 
0x407506f8},
{0x4002e7a0, [ALRM], SA_RESTORER|SA_RESTART, 0x407506f8}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0
alarm(1)                                = 0
open("/dev/dsp2", O_RDWR|O_NONBLOCK)    = -1 ENODEV (No such device)
alarm(0)                                = 1
access("/dev/dsp3", R_OK|W_OK)          = 0
rt_sigaction(SIGALRM, {0x4002e7a0, [ALRM], SA_RESTORER|SA_RESTART, 
0x407506f8},
{0x4002e7a0, [ALRM], SA_RESTORER|SA_RESTART, 0x407506f8}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0
alarm(1)                                = 0
open("/dev/dsp3", O_RDWR|O_NONBLOCK)    = -1 ENODEV (No such device)
alarm(0)                                = 1
access("/dev/dsp4", R_OK|W_OK)          = -1 ENOENT (No such file or 
directory)
access("/dev/sound/dsp4", R_OK|W_OK)    = -1 ENOENT (No such file or 
directory)
pipe([6, 7])                            = 0

Also /dev/sndstat fehlt. Braucht man das dringend, wenn ja: Wie sind die 
Parameter zur Erzeugung des Geraetes?

Mache ich unter KPhone / X-Lite ein lsof /dev/dsp kommt nix an und obige ioctl 
Ergebnisse machen mir auch ein wenig Sorge.

Ach ja:
System ist ein Debian Sarge mit Kern 2.4.21.

Danke schon mal und Gruss,
Hauke
-- 
Ich hatte mal ein ähnliches Problem bei Outlook 2003. Habe die Fehlermeldung 
in google kopiert und da habe ich eine Lösung für mein Problem gefunden. Ich 
habe einfach die Zahl beim Posteingangs und Ausgangsserver geändert und 
schwupps konnte ich die Mails wieder verschicken.



More information about the Linux mailing list