private void CreateBuffers() { buffers = new WaveOutBuffer[NumberOfBuffers]; for (int n = 0; n < buffers.Length; n++) { buffers[n] = new WaveOutBuffer(waveOutHandle, waveIn.bufferSize); } }
private void CallBack(IntPtr hdrvr, int msg, IntPtr dwUser, WaveHeader waveHeader, int dwParam2) { Console.WriteLine("WaveOut"); if (msg == WinMM.WaveOutDone && playing) { try { GCHandle hBuffer = (GCHandle)waveHeader.userData; WaveOutBuffer buffer = (WaveOutBuffer)hBuffer.Target; lastReturnedBufferIndex = Array.IndexOf(buffers, buffer); //buffer.Use(); } catch { } } }