使用PhotoCamera时,必须创建PhotoCamera的实例以及VideoBrush - 然后在初始化相机之前将该PhotoCamera实例指定给VideoBrush实例的源。例如:
PhotoCamera camera;
VideoBrush brush;
camera = new PhotoCamera();
camera.Initialized += CameraInitialized;
brush = new VideoBrush();
brush.SetSource(camera);
VideoBrush在开发人员希望通过将VideoBrush实例与Canvas.Background或Rectangle.Fill等可视对象的画笔相关联来为摄像机视频流创建取景器的情况下非常有用。然而,当情况并非如此时,要求开发人员仍然经历创建VideoBrush的动作,乍一看似乎有点随机。
所以有两个问题,为什么PhotoCamera总是需要与VideoBrush相关联?
将PhotoCamera附加到VideoBrush有什么影响?具体来说,GetPreviewBuffer(Argb | Y | YCbCr)的调用如何受相关VideoBrush的影响?
谢谢!
PS。希望无论如何都不会出现这种情况,我只是想更好地理解为什么存在这种要求 - 以及它如何影响性能。
PPS。 WP7 SDK for Mango的改进令人惊叹 - 我期待看到人们现在提出的对传感器的访问已经开放。
答案 0 :(得分:0)
在芒果中你只需要两个选项,或者像你上面建议的那样在你的应用程序中使用一个框架(一个视频帧)来拍照,基本上是从视频画笔中抓取一个帧。 或者您可以使用旧的NoDo方法使用PhotoChooser Task,它将单独启动框架相机应用程序并返回图像。
显然,这两种方法的专业和缺点都只选择适合你的方法。