NewTOAPIA.Media.WinMM.WaveSpeaker.DefaultAudioCallback C# (CSharp) Method

DefaultAudioCallback() protected method

protected DefaultAudioCallback ( IntPtr deviceHandle, int uMsg, IntPtr dwUser, IntPtr wavHdr, IntPtr reserved ) : void
deviceHandle System.IntPtr
uMsg int
dwUser System.IntPtr
wavHdr System.IntPtr
reserved System.IntPtr
return void
        protected override void DefaultAudioCallback(IntPtr deviceHandle, int uMsg, IntPtr dwUser, IntPtr wavHdr, IntPtr reserved)
        {
            switch ((WaveCallbackMsg)uMsg)
            {
                case WaveCallbackMsg.OutputClosed:
                    Console.WriteLine("WaveOutCallback - Closed");
                    break;

                case WaveCallbackMsg.OutputDone:
                    // When the sample comes back, stick it back in the queue
                    // after unpreparing it.
                    // 
                    MediaSample aSample = null;
                    if (fSamples.TryGetValue(wavHdr, out aSample))
                    {
                        UnprepareHeader(aSample.GetHeader());
                        fAvailableBuffers.Enqueue(aSample.GetHeader());
                    }
                    break;

                case WaveCallbackMsg.OutputOpened:
                    Console.WriteLine("WaveSpeaker.WaveOutCallback - Opened");
                    break;
            }
        }