Still having trouble with sound in Gnome



    As of Gnome 1.0.40, sound is broken on my system.  When esd is
running, nothing at all will play.  It doesn't matter if I launch it to
use tcp or unix sockets.  I can play an mp3 file with a version of
mpg123 compiled not to use esd, when esd is not running.  As soon as I
launch esd, it gives me the startup tones.  Then when I try to use
esdplay or anything else, I get the message that /dev/dsp is busy.
fuser says that esd has control over that device, but apparently it has
absolute control because nothing else can use it.  One interesting thing
I noticed is that if I kill esd, when I use esdplay a sound comes out.
What gives with that?  A ps reveals that esd is not running.
    Here's part of an strace output of esd, right after it gets done
playing the startup tones but before I kill it.  Can anyone tell me if
this looks right?  I'm not sure about the error messages coming back
from selec, fsync, and accept.  Do these occur on a system where esd
actually works?

write(5, "\0\0\223f\0\0|\222\0\0\352&\0\0="..., 4096) = 4096
ioctl(5, SNDCTL_DSP_POST, 0)            = 0
select(5, [4], NULL, NULL, {0, 11000})  = 0 (Timeout)
fsync(5)                                = -1 EINVAL (Invalid argument)
ioctl(5, SNDCTL_DSP_POST, 0)            = 0
time(NULL)                              = 940115774
accept(4, 0xbffffab8, [16])             = -1 EAGAIN (Resource
temporarily unavailable)
select(5, [4], NULL, NULL, NULL)        = ? ERESTARTNOHAND (To be
restarted)

Here is a sample strace from esdplay when esd is running and it can't
play the sound:

read(5, "127.0.0.1\t\tlocalhost localhost"..., 4096) = 300
close(5)                                = 0
munmap(0x400f3000, 4096)                = 0
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 5
fcntl(5, F_SETFD, FD_CLOEXEC)           = 0
setsockopt(5, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
connect(5, {sin_family=AF_INET, sin_port=htons(16001),
sin_addr=inet_addr("146.122.128.80")}, 16) = -1 ECONNREFUSED (Connection
refused)
close(5)                                = 0
open("/dev/dsp", O_WRONLY)              = -1 EBUSY (Device or resource
busy)
open("/usr/share/locale/locale.alias", O_RDONLY) = 5
fstat(5, {st_mode=0, st_size=0, ...})   = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x400f3000
read(5, "# Locale name alias data base.\n"..., 4096) = 2032
brk(0x804c000)                          = 0x804c000
read(5, "", 4096)                       = 0
close(5)                                = 0
munmap(0x400f3000, 4096)                = 0
open("/usr/share/i18n/locale.alias", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT
(No such file or directory)
write(2, "/dev/dsp: Device or resource bus"..., 34) = 34
munmap(0x40045000, 4096)                = 0
_exit(0)                                = ?


    I'd appreciate any input as to what else I can look at, where esd
config files are found, or where I can focus my efforts to figure out
this extremely aggravating problem.  Can anyone tell me what changed
with sound in Gnome starting with 1.0.40?  Note that I went back to
older versions of audiofile and esd, and the problem is still there, so
I believe the problem is due to something the 1.0.40 install process did
to my system, not the daemon or library itself.

Help!
Dan



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]