Hi, I need to play multiple wave files using directsound or any other method. My application is similar to this: http://msdn.microsoft.com/en-us/library/ms973091.aspx, where i need to create beats. The problem is that when I play two or more sounds, there will be some delay between both files. The program provided in that link does not have any delays present when more than 1 file is played but I couldn't understand the coding since it is extremely difficult and im just a beginner. Is there a way to remove the delay completely? I am using the following method:
var dev = new Device();
dev.SetCooperativeLevel(this, CooperativeLevel.Priority);
MemoryStream ms = new MemoryStream(Sample1);
SecondaryBuffer sound = new SecondaryBuffer(@"C:\1.wav", dev);
var dev1 = new Device();
dev1.SetCooperativeLevel(this, CooperativeLevel.Priority);
MemoryStream ms1 = new MemoryStream(Sample2);
SecondaryBuffer sound1 = new SecondaryBuffer(@"C:\3.wav", dev1);
var dev2 = new Device();
dev2.SetCooperativeLevel(this, CooperativeLevel.Priority);
SecondaryBuffer sound2 = new SecondaryBuffer(@"C:\VEE Bassdrum 012.wav", dev2);
sound.Play(0, BufferPlayFlags.Default);
sound1.Play(0, BufferPlayFlags.Default);
sound2.Play(0, BufferPlayFlags.Default);
I also converted the wavefiles to streams and played them using memorystream but the delay is the same.
Thanks!