Rohan's notes on the sound player/server (slightly modified by Tom Roeder) [1] This code will currently only receive the first packet and play it. I would first advise you to see if you can get the initial packet playing. The packet size is set by the sender and if the first packet received is passed onto the sound buffer and is audible, I would then suggest putting a while(1) loop, starting before minithread_receive and ending right after the code that's commented as "Wait until sound finishes playing". This will play all incoming packets. [2] Right now, the audio file link (http://members.tripod.com/~CotMan/basket.au) I've provided is a 11025 Hz, 8bit-mono file Sun .au format (Green Day - Basket Case). You will notice that in Sndplayer.c, the buffer is setup with similar parameters in WaveFormat.nChannels = 1; // 1=Mono 2=Stereo WaveFormat.wBitsPerSample = 8; // Bits per sample per channel WaveFormat.nSamplesPerSec = 11025; // Sample Per Second The reason for such low sampling is that minithreads is generally very slow and therefore we want to send as little as possible to get some feeling of continuous audio. If you were to switch to high sampling i.e. 44.1Khz, you'd have to pump through a lot more data and I doubt if anybody's implementation will be able to handle such data without the listener experiencing lag. You can alternatively try playing around with these numbers. For example, they could try converting their favourite song into .au of 22Khz and trying the same. [3] The BUFFERSIZE values can also be varied if one finds packets are getting through reasonably without getting dropped. For example, you could start with small BUFFERSIZE values and keep increasing it (to get rid of lag on the listener's side) and at some point you'll begin to experience a lot of losses and can cut back. This value is purely emperical and depends on the implementation, where and when the test was tried out. [4] I remember trying this out on csuglab machines and for some reason I couldn't get any audio to work on a few machines but it did work on a few others.