如何从MediaCapture获取ImageStream?

时间:2016-03-24 15:58:23

标签: c# windows-phone-8.1 windows-phone-silverlight

在WP 8中,我使用PhotoCamera制作相机应用程序并将图像保存在相机胶卷中我使用了这种方法:

private void cam_CaptureImageAvailable(object sender, ContentReadyEventArgs e)
{
    string fileName = "photo.jpg";
    MediaLibrary library = new MediaLibrary();
    library.SavePictureToCameraRoll(fileName, e.ImageStream);
}

在WPSL 8.1中我使用MediaCapture并使用相同的样式在相机胶卷中保存图像,但我不知道如何从ImageStreamMediaCapture检索e.ImageStream }}。即使使用其他编程风格保存到相机胶卷,我仍然愿意接受建议。

1 个答案:

答案 0 :(得分:0)

        var file = await Windows.Storage.KnownFolders.PicturesLibrary.CreateFileAsync(IMAGECAPTURE_FILENAME, Windows.Storage.CreationCollisionOption.ReplaceExisting);

        await _exceptionHandler.Run(async () =>
        {
            await _mediaCapture.CapturePhotoToStorageFileAsync(_imageEncodingProperties, file);
            var photoStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read);
            await bitmap.SetSourceAsync(photoStream);
        });

以上内容取自UWP应用程序,用于将图像保存到存储,然后将其作为流从磁盘读取。我从来没有能够直接将图像捕获为流。