我的应用程序需要拍照,我从 uwp 示例 中窃取了 MediaCapture 的大部分优点。但是,默认行为会创建分辨率非常低的照片 (640x480 => 52KB)。
我可以将预览设置为更高分辨率:
mediaCapture.VideoDeviceController.SetMediaStreamPropertiesAsync(MediaStreamType.VideoPreview, prop)
但如果我这样做,预览就会变得非常颗粒状,并且需要永远聚焦。
我做错了什么?我将预览图像直接写入文件,因此我不知道如何以其他方式提高分辨率。
我发誓,在 stackoverflow 上按“Post”通常可以帮助我找到答案:-)。我不太明白为什么,但我终于发现有人建议使用视频设置而不是照片设置。果然!这产生了巨大的差异。
var settings = new MediaCaptureInitializationSettings {
VideoDeviceId = cameraDevice.Id,
StreamingCaptureMode = StreamingCaptureMode.Video,
PhotoCaptureSource = PhotoCaptureSource.VideoPreview,
AudioDeviceId = string.Empty
};
await _mediaCapture.InitializeAsync(settings);