コード例 #1
0
        /// <summary>
        /// Creates an instance of the AdvancedPhotoCapture, configures it to capture HDR images, and registers for its events
        /// </summary>
        /// <returns></returns>
        private async Task EnableHdrAsync()
        {
            // No work to be done if there already is an AdvancedCapture
            if (_advancedCapture != null)
            {
                return;
            }

            // Explicitly choose HDR mode
            var settings = new AdvancedPhotoCaptureSettings {
                Mode = AdvancedPhotoMode.Hdr
            };

            // Configure the mode
            _mediaCapture.VideoDeviceController.AdvancedPhotoControl.Configure(settings);

            // Prepare for an advanced capture
            _advancedCapture = await _mediaCapture.PrepareAdvancedPhotoCaptureAsync(ImageEncodingProperties.CreateJpeg());

            Debug.WriteLine("Enabled HDR mode");

            // Register for events published by the AdvancedCapture
            _advancedCapture.AllPhotosCaptured += AdvancedCapture_AllPhotosCaptured;
            _advancedCapture.OptionalReferencePhotoCaptured += AdvancedCapture_OptionalReferencePhotoCaptured;
        }
コード例 #2
0
        /// <summary>
        /// Creates an instance of the AdvancedPhotoCapture and registers for its events
        /// </summary>
        /// <returns></returns>
        private async Task EnableAdvancedCaptureAsync()
        {
            // No work to be done if there already is an AdvancedCapture instance
            if (_advancedCapture != null)
            {
                return;
            }

            // Configure one of the modes in the control
            CycleAdvancedCaptureMode();

            // Prepare for an Advanced Capture
            _advancedCapture = await _mediaCapture.PrepareAdvancedPhotoCaptureAsync(ImageEncodingProperties.CreateJpeg());

            Debug.WriteLine("Enabled Advanced Capture");

            // Register for events published by the AdvancedCapture
            _advancedCapture.AllPhotosCaptured += AdvancedCapture_AllPhotosCaptured;
            _advancedCapture.OptionalReferencePhotoCaptured += AdvancedCapture_OptionalReferencePhotoCaptured;
        }
コード例 #3
0
ファイル: CameraControl.xaml.cs プロジェクト: lulzzz/Miriot
        private async Task InitializeForLowLight()
        {
            _lowLightSupported =
                _mediaCapture.VideoDeviceController.AdvancedPhotoControl.SupportedModes.Contains(Windows.Media.Devices.AdvancedPhotoMode.LowLight);

            _mediaCapture.VideoDeviceController.DesiredOptimization = MediaCaptureOptimization.Quality;

            if (_lowLightSupported)
            {
                // Choose LowLight mode
                var settings = new AdvancedPhotoCaptureSettings {
                    Mode = AdvancedPhotoMode.LowLight
                };
                _mediaCapture.VideoDeviceController.AdvancedPhotoControl.Configure(settings);

                // Prepare for an advanced capture
                _advancedCapture =
                    await _mediaCapture.PrepareAdvancedPhotoCaptureAsync(ImageEncodingProperties.CreateUncompressed(MediaPixelFormat.Nv12));
            }
        }