internal static void WaveOutProc(IntPtr hdrvr, int uMsg, int dwUser, ref Win32.WAVEHDR wavhdr, int dwParam2) { if (uMsg == (int)Win32.Enum_MM_MessageOutput.MM_WOM_DONE) { try { WaveOutBuffer loBuffer = (WaveOutBuffer)(((GCHandle)wavhdr.ClientInfo).Target); loBuffer.OnDataSent(); } catch { } } }
private bool m_Recording; // Wird noch auf Daten gewartet? #endregion #region Win32-CallBack-Funktion internal static void WaveInProc(IntPtr hdrvr, int uMsg, int dwUser, ref Win32.WAVEHDR wavhdr, int dwParam2) { if (uMsg == (int)Win32.Enum_MM_MessageInput.MM_WIM_DATA) { try { WaveInBuffer loBuffer = (WaveInBuffer)(((GCHandle)wavhdr.ClientInfo).Target); // Buffer-Instanz ermitteln loBuffer.OnDataReceived(); // An Buffer: Daten erhalten } catch { } } }
public static extern int waveInUnprepareHeader(IntPtr hWaveIn, ref WAVEHDR lpWaveInHdr, int uSize);
public static extern int waveInAddBuffer(IntPtr hwi, ref WAVEHDR pwh, int cbwh);
public static extern int waveOutWrite(IntPtr hWaveOut, ref WAVEHDR lpWaveOutHdr, int uSize);
public static extern int waveOutPrepareHeader(IntPtr hWaveOut, ref WAVEHDR lpWaveOutHdr, int uSize);