我知道微软尚未正式支持任何视频捕获应用程序。我找到了Clarity Consulting博客文章,其中重点介绍了如何通过Silverlight使用相机(条目在这里:http://blogs.claritycon.com/kevinmarshall/2010/12/23/wp7-camera-access-flashlight-augmented-reality-and-barcode-scanning/)。但是,到目前为止,我还没有成功移植XNA框架使用的代码。
在XNA应用程序中使用Windows Phone 7相机有没有运气?如果是这样,小心分享你的智慧?
谢谢!
答案 0 :(得分:1)
通常,您可以像在Silverlight中一样访问相机 - 有CameraCaptureTask
- 您需要首先添加对Microsoft.Phone
的引用,然后从游戏中调用它。
Microsoft.Phone.Tasks.CameraCaptureTask task = new Microsoft.Phone.Tasks.CameraCaptureTask();
task.Completed += new EventHandler<Microsoft.Phone.Tasks.PhotoResult>(task_Completed);
task.Show();
那将是静态捕获,你的事件处理程序是这样的:
void task_Completed(object sender, Microsoft.Phone.Tasks.PhotoResult e)
{
// Do something with e.ChosenPhoto
}
目前,视频录制是通过undocumented way完成的 - 这很可能会让您的应用提交从市场中获得批准,但仍有可能。
这样做是因为录制正在进行中,在IsolatedStorage中不断更新MP4文件。但话说回来,有一些方法可以将文件包含在媒体库中。
答案 1 :(得分:0)
认为你对整个微软和支持摄像头有点不清楚。
微软不久前发布了Expression Encoder 4,它不仅允许您通过视频屏幕捕获屏幕,还可以访问连接到PC的所有设备。
我相信这会更加理想,然后被限制为只使用Windows 7手机,特别是xna游戏。
希望这会有所启发。
答案 2 :(得分:0)
现在您可以使用FileSink将VideoCaptureDevice等CaptureSource中的视频保存到文件中。