public void BuildColorBitmap(ColorFrame colorFrame, LargeFrameBitmap bitmap, bool withLock)
        {
            WriteableBitmap outBitmap = bitmap.Bitmap;
            ValidateBitmap(outBitmap, Frame.COLOR_WIDTH, Frame.COLOR_HEIGHT);

            if (withLock) outBitmap.Lock();

            // Direct copy
            colorFrame.CopyConvertedFrameDataToIntPtr(outBitmap.BackBuffer, (uint)(Frame.COLOR_PIXELS * FrameBitmap.BYTES_PER_PIXEL), ColorImageFormat.Bgra);

            if (withLock)
            {
                outBitmap.AddDirtyRect(new Int32Rect(0, 0, Frame.COLOR_WIDTH, Frame.COLOR_HEIGHT));
                outBitmap.Unlock();
            }
        }
Beispiel #2
0
        public void BuildColorBitmap(ColorFrame colorFrame, LargeFrameBitmap bitmap, bool withLock)
        {
            WriteableBitmap outBitmap = bitmap.Bitmap;

            ValidateBitmap(outBitmap, Frame.COLOR_WIDTH, Frame.COLOR_HEIGHT);

            if (withLock)
            {
                outBitmap.Lock();
            }

            // Direct copy
            colorFrame.CopyConvertedFrameDataToIntPtr(outBitmap.BackBuffer, (uint)(Frame.COLOR_PIXELS * FrameBitmap.BYTES_PER_PIXEL), ColorImageFormat.Bgra);

            if (withLock)
            {
                outBitmap.AddDirtyRect(new Int32Rect(0, 0, Frame.COLOR_WIDTH, Frame.COLOR_HEIGHT));
                outBitmap.Unlock();
            }
        }