I'm trying to get this audio streaming client/server app working using the java sound API. The audio is supposed to sync up with some sort of visual, so I'm concerned that if there is some sort of network delay that the sound with be off by the delay for the rest of the life of the program. Anyways, SourceDataLine is supposed to generate a STOP event if the buffer becomes empty, but it's not (I've checked using the available() method). Any thoughts? Ideas? I would like to either find out why it's not generating the stop event (like the API specification says it should) or find a fix.