private void Player_FrameArrived(object sender, VitruviusFrame frame)
 {
     if (frame != null)
     {
         viewer.Image = frame.Image.ToBitmap(frame.Visualization, PixelFormats.Bgr32);
         viewer.DrawBody(frame.Body);
     }
 }
        void Reader_MultiSourceFrameArrived(object sender, MultiSourceFrameArrivedEventArgs e)
        {
            if (_recorder.IsRecording)
            {
                var reference = e.FrameReference.AcquireFrame();

                VitruviusFrame recordingFrame = new VitruviusFrame();

                // Infrared

                /*using (var frame = reference.InfraredFrameReference.AcquireFrame())
                 * {
                 *  if (frame != null)
                 *  {
                 *      _bitmapGenerator.Update(frame);
                 *
                 *      recordingFrame.Image = _bitmapGenerator.Pixels;
                 *
                 *      viewer.Image = _bitmapGenerator.Bitmap;
                 *  }
                 * }*/

                using (var frame = reference.DepthFrameReference.AcquireFrame())
                {
                    if (frame != null)
                    {
                        bitmap.Update(frame);

                        recordingFrame.Image = bitmap.Pixels;

                        viewer.Image = bitmap.Bitmap;
                    }
                }

                // Body
                using (var frame = reference.BodyFrameReference.AcquireFrame())
                {
                    if (frame != null)
                    {
                        var body = frame.Bodies().Closest();

                        if (body != null)
                        {
                            recordingFrame.Body = BodyWrapper.Create(body, _sensor.CoordinateMapper, Visualization.Depth);

                            viewer.DrawBody(body);
                        }
                    }
                }

                _recorder.AddFrame(recordingFrame);
            }
        }