I think I've found the way of having Sound work OK in KDE.

I used a combination of several preexistent methods, based on OSS 
redirection to ESD.

I've did it in a test environment, with Debian testing, KDE 3.5.4 and 
LTSP 4.2 running on an AMD K7 with 1.5GiB RAM, and an EPATec eTHinClient 
as server (which forced to specify the sound module sis7019).

Let me introduce myself before going into it. I'm Noel Torres, master 
technician and developer of Ejercicios Resueltos SLU, a company from 
Canary Islands which works into LTSP classrooms, general Linux teaching 
and system maintenance. We also participated, as members of Grupo CPD, 
in the development of mEDUXa Linux 1.0, the educative Linux distro of 
the Canary Islands Autonomous Government.

Going into matter:

Firstly, I configured my thin clients to have a working ESD using

   SOUND = Y
   SOUND_DAEMON = esd

as said in Wiki. Then, I created a script (It needs to be modified for 
Debian, as stated below) saying

 REMOTE_X11=${DISPLAY%:*}
 if test "$REMOTE_X11" == ""
 then
  export REMOTEX_11=false
 else
  export ESPEAKER=$REMOTE_X11:16001
  export ESDDSP_MIXER=1
  export LD_PRELOAD="/usr/lib/libesddsp.so.0 /usr/lib/libesd.so.0 
$LD_PRELOAD"
  export REMOTE_X11=true
 fi

as said in Wiki too, but I didn't place it at xdm nor any other DM, but 
on $HOME/.kde/env directory for every single user with name 
"startsound.sh". This is not very well documented by KDE, but scripts on 
that subdirectory are executed from within KDE when it starts, and 
environment variables you set in those scripts are available to any 
application started from KDE, which includes almost everything.

Finally, I set KDE to use OSS. This way, all apps using KDE are sounding 
through OSS which is redirected to ESD, which in turn is sent to 
client's ESD and client's speakers, and apps trying to use OSS directly 
are in the same case.

Additional note: in Debian you must modify

  export LD_PRELOAD="/usr/lib/libesddsp.so.0 /usr/lib/libesd.so.0 
$LD_PRELOAD"

to

  export LD_PRELOAD="/usr/lib/esound/libesddsp.so.0 /usr/lib/libesd.so.0 
$LD_PRELOAD"

As I said, this was done in a test environment, but we will try it in a 
large production environment soon.

Noel Torres
ejerciciosresueltos.com

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_____________________________________________________________________
Ltsp-discuss mailing list.   To un-subscribe, or change prefs, goto:
      https://lists.sourceforge.net/lists/listinfo/ltsp-discuss
For additional LTSP help,   try #ltsp channel on irc.freenode.net

Reply via email to