/// <summary>
        /// Handles frame arrive event and sets latest color and infrared frame.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        public void FrameReader_FrameArrived(ExampleMediaFrameReader sender, ExampleMediaFrameArrivedEventArgs args)
        {
            try
            {
                using (var mediaFrameReference = sender.TryAcquireLatestFrameBySourceKind(args.SourceKind))
                {
                    {
                        if (mediaFrameReference != null)
                        {
                            if (mediaFrameReference.SourceKind == MediaFrameSourceKind.Color)
                            {
                                colorFrame = mediaFrameReference.VideoMediaFrame.SoftwareBitmap;
                            }

                            if (mediaFrameReference.SourceKind == MediaFrameSourceKind.Infrared)
                            {
                                if (mediaFrameReference.VideoMediaFrame.InfraredMediaFrame.IsIlluminated)
                                {
                                    irFrame = mediaFrameReference.VideoMediaFrame.SoftwareBitmap;
                                }
                            }
                        }
                    }
                }
            }
            catch (ObjectDisposedException) { }
            finally
            {
            }
        }
示例#2
0
        private void FrameReader_FrameArrived(ExampleMediaFrameReader sender, ExampleMediaFrameArrivedEventArgs args)
        {
            try
            {
                // Access the latest frame
                // More information:
                // https://docs.microsoft.com/en-us/windows/uwp/audio-video-camera/process-media-frames-with-mediaframereader#handle-the-frame-arrived-event
                // ExampleMediaFrameReference interface is based on Windows.Media.Core.FaceDetectionEffect.FaceDetected
                // https://docs.microsoft.com/en-us/uwp/api/windows.media.capture.frames.multisourcemediaframereference

                using (var mediaFrameReference = sender.TryAcquireLatestFrameBySourceKind(args.SourceKind))
                {
                    FrameCollection.Add(mediaFrameReference);
                }
            }
            catch (ObjectDisposedException) { }
            finally { }
        }