esound for Debian
esound for Debian
-----------------

When using the -tcpip option
----------------------------

The error message "unable to bind port 16001" is commonly caused by two things:

1. esd is already running, bound to port 16001.
2. TCP/IP networking is not configured.  You need at least the lo
   interface configured for esound to work.
   To configure the interface, try ifup lo
   If that does not work, try ifconfig lo 127.0.0.1

Applications saying they can't connect to esd?

1. Ensure that esd is running, or is set to autospawn.  You can
   set it back to autospawn by editing /etc/esound/esd.conf
2. Ensure that TCP wrappers allow the connection.  If a default is
   specified to deny all traffic, ESD will be denied.
3. If you are trying to do remote esd, make sure -public is specified
   when starting ESD on the server end (the one with sound hardware)
   and that TCP wrappers will allow the remote connection.

Why does esound not default to autospawn?

esound used to default to autospawning, which means that programs would try to
start the esd daemon if it wasn't running.  The problem is, if you don't have
sound hardware correctly setup, esd would take a long time to try opening
the sound device(s) at all possible supported rates, and people would think
that the Gnome desktop had "hung" for two minutes.

Why don't you make it configurable, like it used to be?

esd.conf is a conffile, and you can edit it if you want the default to be
autospawning.  I've set up the default to work with Gnome and esound, the
main two users of libesd.  As esd.conf is a conffile, it can't be edited
by maintainer scripts, including debconf.  The question is also a very
confusing one for new users, so I think it is much better if the default
works with the users of libesd, and experts can edit the conffile to turn
on autospawning if they like.

Why does esound not use libasound2?  ALSA 0.9 will be in 2.5 and OSS will
be going away!

esound was not written to use libasound2.  alsa 0.9 in Debian currently does
not build on several architectures that libasound1 does build on, and did not
work with the sound cards the maintainer has at all.  esound is very lightly
maintained upstream, and the gnome project wants to stop using it for Gnome
version 2.  The alsa API also keeps changing rather frequently.  I won't
be adding support for it, until most of these issues are resolved, and most
likely until it is in a real kernel tree.  Use the OSS compatibility layer
in the meantime.

Esound should be a daemon, that's what the D is for in esd, right?

Esound was designed mainly to be used as a "daemon" that is started on each
login session, and ended when the user logs off, much like the other gnome
bits (gconf, oaf, etc).  While it can be used as a system daemon and stay
running all the time, it does open some security issues for a multi-user
system.  The default of upstream and this packaging is for a multi-user system
with users allowed to use audio in the audio group.