The general approach is to use a BufferedWaveProvider (call ToSampleProvider on it if you need to mix it with something), and put audio you receive into that as it arrives.
BufferedWaveProvider can be configured to return a never-ending stream of silence if no audio has been received, which prevents the audio playback from stopping automatically. The NetworkChatDemo in the NAudioDemo application (part of NAudio source code) is a good place to start looking to see how to do this
BufferedWaveProvider can be configured to return a never-ending stream of silence if no audio has been received, which prevents the audio playback from stopping automatically. The NetworkChatDemo in the NAudioDemo application (part of NAudio source code) is a good place to start looking to see how to do this