首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用MediaStreamSource捕获图像

用MediaStreamSource捕获图像
EN

Stack Overflow用户
提问于 2014-03-16 20:12:21
回答 1查看 214关注 0票数 0

我用MediaStreamSource来用相机..。一切正常,除了我试图捕捉到的图像!

我认为问题是对象MediaStreamSource

代码语言:javascript
复制
public class CameraStreamSourceModel : MediaStreamSource
{
    private MemoryStream _cameraStream = null; // here I've the stream from camera

    ...

    public async void CapturePhoto()
    {
        // Save the image as a jpeg to the camera roll 
        MediaLibrary library = new MediaLibrary();

        string filename = AppResources.ApplicationTitle + "_" + DateTime.Now.ToString("G");
        Picture pic = library.SavePicture(filename, _cameraStream);  //Here I've the exception
    }
}

例外是

System.InvalidOperationException:发生了意外错误。

我启用了ID_CAP_MEDIALIB_PHOTO

我确信保存图像的代码是有效的,因为我可以在媒体库中保存静态流,但不能保存来自摄像机的流!

有谁可以帮我?谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-03-26 23:01:31

您可以简单地使用camera_capture_task

代码语言:javascript
复制
CameraCaptureTask cameraCaptureTask;


public Transaction()
        {
            InitializeComponent();
            cameraCaptureTask = new CameraCaptureTask();
            cameraCaptureTask.Completed += new EventHandler<PhotoResult>(cameraCaptureTask_Completed);
        }

void cameraCaptureTask_Completed(object sender, PhotoResult e)
    {
        if (e.TaskResult == TaskResult.OK)
        {


            //Code to display the photo on the page in an image control named myImage.
            System.Windows.Media.Imaging.BitmapImage bmp = new System.Windows.Media.Imaging.BitmapImage();
            bmp.SetSource(e.ChosenPhoto);
                pic.Source = bmp;
            pic_name = "" + DateTime.Now.Month + "" + DateTime.Now.Hour + "" + DateTime.Now.Minute + "" + DateTime.Now.Second+".jpeg";
            SaveToIsolatedStorage(e.ChosenPhoto, "" + pic_name);
        }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22442334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档