Curious how Splish Splash works? You can always look at the source, but here are some notes:
  1. It's based on the WASAPI audio API introduced in Windows Vista. This API has an amazing feature of letting you open a render (playback) device as a loopback / capture device. This is how splish.exe is able to capture the audio output and send it over the network. See http://msdn.microsoft.com/en-us/library/dd316551(VS.85).aspx for details.
  2. The downside of using WASAPI is that it doesn't do sample rate conversion for you, so both PC's must have the same default sample rate.
  3. The latency is mostly controlled by splash.exe. It tries to maintain between 500-1500ms of buffer to avoid glitches / buffering. I may tweak this and/or make it configurable in the future, since 500ms of latency is unacceptable for anything that needs to be synchronized with your video.

Let me know if there's anything else interesting I should put here.

Last edited Feb 6, 2010 at 7:50 PM by mikelehen, version 1

Comments

No comments yet.