I think we're good with the ServerInit now. I have an issue in a separate application when opening this stream using:
_VirtualCableId = Bass.BASS_StreamCreateURL(_VirtualCableUrl, 0, BASSFlag.BASS_STREAM_DECODE, Nothing, IntPtr.Zero)
It's inconsistent to the amount of data it buffers and I'm trying to figure out where this could be happening. For example I'll start the app running and the stream could be 500ms delayed, but then other times it can be over 1 second, and it has to be the same all the time.
I do add this to a mixer and if I put a thread sleep in between the creation and adding then I do get a definate delay on the stream.
_VirtualCableId = Bass.BASS_StreamCreateURL(_VirtualCableUrl, 0, BASSFlag.BASS_STREAM_DECODE, Nothing, IntPtr.Zero)
Threading.Thread.Sleep(5000)
BassMix.BASS_Mixer_StreamAddChannel(_Mixer, _VirtualCableId, BASSFlag.BASS_DEFAULT)
Now I can understand why this is happening, because it's buffered 5 seconds of data before it was plugged into the mixer. I suppose my question is, how can I force the stream to get up to date / flush a buffer?