MissionPlanner.OSDVideo.ISampleGrabberCB C# (CSharp) Method

ISampleGrabberCB() private method

sample callback, NOT USED.
private ISampleGrabberCB ( double SampleTime, IMediaSample pSample ) : int
SampleTime double
pSample IMediaSample
return int
        int ISampleGrabberCB.SampleCB(double SampleTime, IMediaSample pSample)
        {
            if (!m_bGotOne)
            {
                // Set bGotOne to prevent further calls until we
                // request a new bitmap.
                m_bGotOne = true;
                IntPtr pBuffer;

                pSample.GetPointer(out pBuffer);
                int iBufferLen = pSample.GetSize();

                if (pSample.GetSize() > m_stride*m_videoHeight)
                {
                    throw new Exception("Buffer is wrong size");
                }

                NativeMethods.CopyMemory(m_handle, pBuffer, m_stride*m_videoHeight);

                // Picture is ready.
                m_PictureReady.Set();
            }

            Marshal.ReleaseComObject(pSample);
            return 0;
        }

Same methods

OSDVideo::ISampleGrabberCB ( double SampleTime, IntPtr pBuffer, int BufferLen ) : int