/// <summary> /// Place this buffer back to record more audio /// </summary> public void Reuse() { // TEST: we might not actually need to bother unpreparing and repreparing MmException.Try(WaveInterop.waveInUnprepareHeader(waveInHandle, header, Marshal.SizeOf(header)), "waveUnprepareHeader"); MmException.Try(WaveInterop.waveInPrepareHeader(waveInHandle, header, Marshal.SizeOf(header)), "waveInPrepareHeader"); //System.Diagnostics.Debug.Assert(header.bytesRecorded == 0, "bytes recorded was not reset properly"); MmException.Try(WaveInterop.waveInAddBuffer(waveInHandle, header, Marshal.SizeOf(header)), "waveInAddBuffer"); }