I try to concatenate some data in different durations but same sample rate.
I concatenate the data with MemoryStream.CopyTo(memoryStream) method.   
Is there any way to play a data from a memory stream which don't have a wav header in the start?
And if not, is there any way to append a wav headers to to start after the stream was appended?
(I want to avoid generating a file in the disk..)
                        
To do this with NAudio, just use a
RawSourceWaveStreamand pass in theMemoryStreamcontaining the raw concatenated audio to its constructor. You'll also need to explicitly specify that theWaveFormatis.