我正在为我的 Windows Phone(带有 Windows 10 的 Lumia 950)开发通用 Windows 应用程序。这是一个非常简单的应用程序,它使用手机的前置摄像头拍照。
问题是正在拍摄的照片默认处于横向模式,当它是自拍时,这不是很好。我想将它旋转 90 度,使其成为肖像。我使用 MediaCapture 对象来初始化相机。我尝试了以下方法来旋转图像:
await _mediaCapture.InitializeAsync(settings);
var videoEncodingProperties = _mediaCapture.VideoDeviceController.GetMediaStreamProperties(MediaStreamType.VideoPreview);
videoEncodingProperties.Properties.Add(new Guid("C380465D-2271-428C-9B83-ECEA3B4A85C1"), 90);
await _mediaCapture.SetEncodingPropertiesAsync(MediaStreamType.VideoPreview, videoEncodingProperties, null);
但最后一行抛出异常“提供的流号无效。PreviewState”。我猜这与提供的 GUID 有关,但经过无数小时的谷歌搜索后,我不断发现开发人员为此使用的这个值。
我尝试了另一种旋转图像的解决方案:
_mediaCapture.SetPreviewRotation(VideoRotation.Clockwise90Degrees);
但这无济于事。
有什么想法可以旋转图像吗?非常感谢!