Networked audio driver for windows

Linux and MacOS X already have network audio support thru esound, polypaudio or nas. There are also ports of the esound or nas server to windows, using cygwin or java.
But one piece is still missing to complete the picture: a windows device driver that can channel the sound to a remote esound server.

Could such a driver could be used for general-purpose sound channeling?
For example, it might not work nicely for the sound in movies, as the synchronization between the audio and the video is critical. Or is there a way to delay the image, to compensate for the lag on the audio stream?

Links:
Esound server on windows (using cygwin).
Network Audio Driver for Darwin (Mac OS X)
Esound server implementation in java.
Winamp 3 esound plugin.
Microsoft page on audio device drivers.

Posted by Julien on November 09, 2004. Permalink
Comments

Man, are the spiders fast! Found this entry on Google today; but I wished you already had a solution here and not only the idea ;)

I believe it should be easy to write such a Win driver/emu that connects to a remote sound server; though I don't have any interest in doing it. Would like to use this to get one server to play sounds for a dozen other machines in the same room that each lack a soundcard.

Posted by: milky at November 16, 2004 06:20 PM

It is a great idea and one that I have also thought about on and off for a while. I wrote an RPC driven sound distribution system for Unix over ten years ago, great for spaming sound effect sound bites around the office at inopportune moments. The same for Windows should be easy right? And just make it appear as a sound driver so that you can then send audio from your laptop to your main sound system, or vis-versa. Even better would be if Windows let you just network share your audio devices in the normal way.

The problem is that all this stuff would make obsolete at least half of those multimedia streaming boxes people fork out tons of cash for. I think Microsoft has an interest in continuing to make audio streaming something special and proprietary instead of easy and ordinary (and most importantly FREE). They can do it with Windows Desktop connection, why not make it a standalone feature?

Posted by: Blog Gently at November 25, 2004 10:54 PM

One thing I've done on Windows, and this is far from optimal, is use the Virtual Audio Cable driver. It lets you reroute sound to another program. I reroute it to Winamp running a Shoutcast source, and then on the UNIX system have an mp3 player reading that stream

There are definite buffering issues. I haven't tweaked any of the settings, I don't know if it's possible to decrease the buffer size, to get it more in sync.

Posted by: Joshua Gerrish at December 3, 2004 07:24 PM

One thing I've done on Windows, and this is far from optimal, is use the Virtual Audio Cable driver. It lets you reroute sound to another program. I reroute it to Winamp running a Shoutcast source, and then on the UNIX system have an mp3 player reading that stream

There are definite buffering issues. I haven't tweaked any of the settings, I don't know if it's possible to decrease the buffer size, to get it more in sync.

Posted by: Joshua Gerrish at December 3, 2004 07:25 PM

Any new finds on this? I've been trying to figure out if there's already software out there to do this too.

Posted by: Walker at March 18, 2005 10:08 AM

Check http://www.clingman.org/winesd/

Posted by: Tomas at April 9, 2005 03:42 PM

Thanks for the pointer Tomas, I'll check it out.

Posted by: Julien Couvreur at April 15, 2005 03:47 PM

Has anyone made any progress with this?

Posted by: Dan at May 9, 2005 10:13 PM

http://www.liquid-reality.de/main/projects/esound + http://www.clingman.org/winesd/ == networked sound.

Have not tried this yet, but I don't see why it wouldn't work. Will report if it works once I reboot.

Posted by: Keith Rothman at August 2, 2005 05:23 PM

Thanks Keith. I look forward from hearing back from your experiment.

Posted by: Julien at August 3, 2005 11:47 AM

Well it works very well for anything that doesn't need timing. There is a 3-5 second delay before playing. Also the beeping coming from the driver during a failure is extremely annoying. Add to that the setup is a pain in the ass, even if it is well documented.

I wanted to pick up the old code and fix some of the problems, but the code is for a very old DDK, and I am not good enough with the DDK to even build it again. Bleh.

Posted by: Keith Rothman at August 3, 2005 01:52 PM

I second that, works very well even over a 802.11b connection! Exactly what I've been looking for even though its a little clunky to setup.

Thanks to everyone above who found what I couldn't!

Posted by: Ian Gilmour at October 25, 2005 03:00 AM

found ur page while trying to solve the same problem....2 pcs...1set of speakers...surely i can send audio over ethernet...and so the search began. so far the only thing ive managed to get working is called AudioTX Communicator can find it here http://www.audiotx.com/main.html 30day demo with 20min timeout. the app is extremely ugly..but it works with almost 0 delay. audio/video sync can usually be sorted using a decent player like mpc[media player classic] if need be. hope this helps.

Posted by: cray- at January 12, 2006 08:08 AM

I have decided to try and take the task upon myself. I plan to write a virtual audio/server app and a client app. The server will probably only run on Win 2000, XP, and Server 2003 but I should be able to make the client run on older Win so you can use an old tower as a proxy to a stereo system. That's what I'm working on setting up. I'll proly do an installer also for easy setup. could be several weeks though.

Posted by: coder0xff at February 24, 2006 04:02 PM

Sounds awesome.
Let me know when you make some progress.

Posted by: Julien Couvreur at February 24, 2006 04:40 PM

I dont have access to an NT DDK or I'd give a go @ working on the WinESD driver :(

The ESD driver on NT is a Good Thing, anyone who *can* work on this, here's a wishlist: ESD server incorporated as a Line In driver, get rid of the blasted "hello" demo boxes left right & centre, & the beeping.
Nonetheless, on my Win2K box, it works great to the local ESD server with a minute delay, although chews up a bit of cpu (it's only a 350). Will be interesting to see if I can get the ESD client stuff to compile under Interix now...

Posted by: Nathanael Bettridge at March 8, 2006 06:01 AM

arf, so there aren't any free (opensource) solutions yet. Just had a "lighting strike"-type idea of making an audio server attached to my home gigalan that could mix audio from different machines. But if there isn't even a stable&reliable windows driver yet it's gonna take a while till we get end-user ready 5.1 streaming without delays =) oh well, curiosity is bliss.

Posted by: deice at March 27, 2006 01:15 PM

I really have a hard time trying to install the WinESD driver on my XPSP2 box but since it is meant for NT (dated 2000) that does not come as a surprise. I gave up eventually and looked into other solutions.

I have just successfully installed the WinAmp2 Esound output plugin by Lorenzo Keller and depsite it being pretty buggy it kind of 'just works' for me.

I have a zero-decibel homeserver (http://www.lex.com.tw:8080/product/LIGHT.htm) connected to my amp and now am happily playing music from my laptop. Only downside (yes first bug here) is that the volume cannot be controlled from some reason...

Posted by: Dick Visser at May 2, 2006 01:08 PM

this is a stupid question, but I cannot follow the steps on the windows NT enlightened sound site for XP. he says:
# After unzipping the zip file, go to the "Multimedia" control panel.
# Select the "devices" tab.
# Click on "Add"
# choose "Unlisted or Updated driver"

I do not see the "Multimedia" control panel and all subsequent tabs/dialogs. any ideas?

Posted by: red at August 30, 2006 05:03 PM
Trackbacks
Comments are closed. You can contact me by email.