LinuxReviws.org --get your your Linux knowledge
> Linux Reviews > Howtos >

Sound - Remote Sound with EsounD

Or how I got my windows box to listen. By Jeff -Kuja- Katz

If most casual users of linux are like me (and I think that they are) then most of them have an experimental linux machine, and another machine running windows as their primary. At first, I was content with ssh to play around with my box. Then later when this was not enough, I messed around with various remote viewing things. After settling with remote x via cygwin, I determined that I was not content. I wanted to be able to hear my linux box, as well as interact with it.

After doing some quick research, I found that I was very likely going to have the most success with EsounD, the enlightened sound daemon (http://www.tux.org/~ricdude/EsounD.html). While the development hasn?t stopped, it appeared that updates to the website had. What I liked most about the site, old as it was, was this quote from the overview page: ?Network transparency is also built in, so you can play sounds on one machine, and listen to them on another.? This was exactly what I was looking for.

I emerged EsounD on my linux box, noting the version (0.2.29-r1). It is important to note that I do not have a sound card installed on my box, thusly no /dev/dsp. Now comes the hard part ? getting EsounD on cygwin. I attempted to download and compile it, with horrible errors during the configure/make process. ?It?s alright,? I said to myself, ?I?ll just find cygwin binaries ? how hard could that be?? After some hardcore googling, I happened upon the EsounD binaries for the Cygwin environment on the cygnome sourceforge site (http://prdownloads.sourceforge.net/cygnome/esound-0.2.29-1.tar.bz2?download). I un-bzipped this into my cygwin root, and behold ? EsounD! But wait ? I was missing something? cygaudiofile.dll to be exact. After exclaiming a few obscenities, and a bit more searching, I found that the cygnome project also had a binary download for audiofile (http://prdownloads.sourceforge.net/cygnome/audiofile-0.2.3-1.tar.bz2?download). Score!

After getting and un-bzipping all the required files to the required places, I played around a bit with the options of esd. I finally settled on the following command line: esd ?promiscuous ?tcp ?public ?port 150 &. This sets up the daemon to allow sound externally over tcp on port 150, which is exactly what I wanted. With my EsounD daemon running locally on cygwin, I went to play around on the other side, the linux side. To forward sound without a sound card, I?d have to use the esddsp utility. I set an alias ?rs? to run the following: esddsp -v --server=10.10.1.5:150 ?m where 10.10.1.5 was my windows machine?s ip address. Now the test ? I ran rs mpg123 *.mp3 in my mp3 folder. Awesome ? I was now hearing my mp3?s across the network on my windows pc. Coupled with remote x, I tried my rs alias on a few more programs. Gaim worked great, as did snes9x and gftp. I?m pretty confident this setup will work for any program.

Copyright (c) 2003 Jeff Kuja Katz. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

Meet new people