private void InitSerializerAndPlayerSouce() { serializer = new DepthCodeMotionFrameSerializer(); serializer.JpegCompression = 60; serializer.UsersOnly = false; serializer.DownSize640to320 = false; serializer.IncludeUserFrame = true; serializer.CompressionQuality = InfoStrat.MotionFx.PointCloud.CompressionQuality.High; playerSource = new PointCloudPlayerSource(serializer); playerSource.MotionFrameAvailable += new EventHandler <MotionFrameAvailableEventArgs>(playerSource_MotionFrameAvailable); playerSource.StatusChanged += new EventHandler(playerSource_StatusChanged); playerSource.PlaybackEnded += new EventHandler(playerSource_PlaybackEnded); KinectSensor sensor = (from sensorToCheck in KinectSensor.KinectSensors where sensorToCheck.Status == KinectStatus.Connected select sensorToCheck).FirstOrDefault(); if (sensor != null) { pointRecorder = new PointCloudStreamRecorder(serializer); } else { cbxKinect.IsEnabled = false; cbxKinect.IsChecked = false; } }
private void Cleanup() { if (pointCloudFrameViewer != null && pointCloudFrameViewer.pointCloudImage != null) { pointCloudFrameViewer.pointCloudImage.Dispose(); } if (playerSource != null) { playerSource.Dispose(); playerSource = null; } if (pointRecorder != null) { pointRecorder.Dispose(); pointRecorder = null; } if (sensorDevice != null) { sensorDevice.Dispose(); sensorDevice = null; } }