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

artsd + esd + xmms CAN work at the same time =)

Hash: SHA1

I would suggest the problem is that some programs are using artsd (the KDE 
sound server) and others are not. XMMS might be, depending on whether you're 
using the aRts output plugin. If all programs use artsd, they can play sounds 
at the same time and artsd will mix them. This is the method I use.

Applications not written with artsd in mind can be made to use it with 
artsdsp, which intercepts the audio, see the man page. A similar thing can be 
achieved with esd and esddsp. AFAIK all kde2 apps will use artsd and all 
gnome apps will use esd. Actually you can have _everything_ working by 
wrapping esd in artsd as follows (it works the other way around too):

* Make sure artsd is running (i.e. check "start sound server" in the KDE 
control panel). Check with "ps auxww |grep artsd".

* Use the xmms aRts output plugin (available from xmms.org).

* Wrap esd in artsd by renaming /usr/bin/esd to /usr/bin/esd.real (debian 
users can use dpkg-divert to make any upgrades use esd.real), and putting the 
following in /usr/bin/esd (don't forget to chmod 755):

exec /usr/bin/artsdsp /usr/bin/esd.real "$@"

I've done this, and now xmms, everybuddy, and kde2 apps like konsole can all 
play sounds at the same time! The only thing that doesn't work is quake. I've 
so far had no luck wrapping it in anything. You just have to wait for artsd 
to release the device or do killall artsd and restart it when you're done.

Hope this helps someone... =)

- -- 
Chris Boyle - Winchester College - http://archives.wincoll.ac.uk/
For my PGP key visit: http://archives.wincoll.ac.uk/finger.php?q=chrisb
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: For info see http://www.gnupg.org


Reply to: