Windows 8 开发之摄像头的使用方法

1.更新项目中package.appmanifest 文件,本文让webcam和microphone可用。只需要在功能选项卡中勾选对应的框即可。如下图所示:

如果不按照上面的设置,那么这些功能是不可以使用的,所以,确保首先设置好了。

在Windows 8中,非常好的是摄像头的所有事情都由你来决定。也就是说,有些事情,你不得不考虑好了。首先,当你试图访问摄像头时,程序将会提示用户将使用摄像头和麦克风,由用户决定是否授权。

2.代码实现

1).照片的获取和保存

复制代码

代码如下:

private async void Camera_Click(object sender, RoutedEventArgs e)
{
CameraCaptureUI camera = new CameraCaptureUI();
camera.PhotoSettings.CroppedAspectRatio = new Size(16, 9);//获得图片的宽高比例
StorageFile file = await camera.CaptureFileAsync(CameraCaptureUIMode.Photo);
if (file != null)
{
StorageFolder folder = KnownFolders.PicturesLibrary; //将图片保存到图片库中
await file.CopyAsync(folder,file.Name,NameCollisionOption.ReplaceExisting);
}</p><p> }

这里有几个选项可以设置(比如分辨率和计时器),然后通过tap 或者单击屏幕,就可以触发照相。如果我们设置了一个CroppedAspectRatio,那么将会看到画面中将会出现四个白点,画面中有4个白色的圆圈,表示裁减的区域。用户可以改变这个box的size,不过指定一个CroppedAspectRatio,我们可以强制用户选这个具有一定比例的图片。在示例中,我使用16:9,如果1:1这是一个正方形图片。没有这个选项的话,用户就不必裁减图片,不过在bottom中的菜单选项中,有一个任意裁剪的选项:

如果用户选择Crop,那么用户就可以裁减图片的任意内容:

最后,当用户点击OK按钮,将会返回一个图片到我们程序中,这个图片我们可以随意使用。

2).获得视频和保存视频

复制代码

代码如下:

private async void Video_Click(object sender, RoutedEventArgs e)
{
CameraCaptureUI video = new CameraCaptureUI();
video.VideoSettings.Format = CameraCaptureUIVideoFormat.Mp4;
video.VideoSettings.AllowTrimming = true;
video.VideoSettings.MaxResolution = CameraCaptureUIMaxVideoResolution.HighestAvailable;
video.VideoSettings.MaxDurationInSeconds = 600;
StorageFile file = await video.CaptureFileAsync(CameraCaptureUIMode.Video);
if (file != null)
{
StorageFolder folder = KnownFolders.VideosLibrary;
await file.CopyAsync(folder,file.Name,NameCollisionOption.ReplaceExisting);
}
}

首先可以指定视频的格式:MP4或WMV。一般你是看不出这些格式的区别的。MP4要比WMV使用更流行,但是MP4文件会很大,所以值得考虑一下。

其次,我将AllowTrimming设置为true,这样用户可以选择根据喜好,选择录制视频的片段。如下是相关截图,用户可以拖动白色的裁减圈来裁减视频:

第三,我指定了一个MaxDurationInSeconds,这个值显示用户录制视频的最长时间。如果用户录制的视频比这个时间长,那么用户只能选择30秒(或者是你指
定的一个长度)的视频。
最后,我还指定了一个MaxResolution,这是管理用户可以录制的分辨率,这也决定了最终文件的大小,有下面四个可选项:

以上就完成了windows8中摄像头的应用。

简单的来说,从用户摄像头获取相片和视频的很容易的,并且可以定制。大多数复杂的UI都是有Windows 8直接处理了,所以,我们不用担心与用户的交互
问题 。

(0)

相关推荐

  • windows gtk+开发环境搭建方法详解(图解)

    GTK+开发环境搭建 “工欲善其事,必先利其器”首先介绍一下GTK+开发环境的搭建,网上很多所谓的GTK的开发环境的搭建基本都是抄来抄去,也不知道有没有人使用他们介绍的方法搭建并编译成功,很不幸的是我 ...

  • win7如何打开摄像头 5种方法打轻松开Win7摄像头

    随着WIN7的占有率不断上升,很多朋友也逐渐把系统升级到WIN7了,但是关于摄像头的打开,我们都习惯了windows XP在我的电脑里面硬盘符下面有一个摄像头快捷方式,通过此可快捷启动摄像头功能的使用 ...

  • win7在"我的电脑"中无法看到摄像头的解决方法

    在本文中我们将会看到的是在win7下“我的电脑”中无法看到摄像头的解决方法! 问:我刚买的笔记本装的是32位的Windows 7旗舰版。技术员说在Win 7系统“我的电脑”中无法看到摄像头,只有开QQ ...

  • win7笔记本摄像头打开的方法 笔记本摄像头怎么开?

    今天有网友问了编辑这样一个问题,笔记本摄像头怎么开?目前绝大多数笔记本都自带有摄像头,其实开始笔者以为很简单,因为以前使用windows xp系统的时候直接在我的电脑里可以看到视频设备点击打开就可以打 ...

  • Windows(win7/win8/xp/2003)进入安全模式方法详细汇总

    不管你用的是笔记本还是台式电脑,都可以使用此方法进入系统安全模式 WIN XP/WIN2003进入安全模式方法 在电脑刚开机的时候,也就是屏幕还在出一些英文字母的时候就狂按F8,也就是按一下F8,再松 ...

  • win8提示配置windows更新失败正在还原更改解决方法

    win8配置windows更新失败正在还原更改解决方法来咯~如果你遇到了Windows8系统提示“配置windows更新失败,正在还原更改”,可以试一试下文的解决方法,希望能帮助到大家。 1.运行ms ...

  • Windows 8技巧:Windows 8开发知识储备[实用篇]

    在本文中将整理出一些Windows 8开发前需要了解的一些基础知识并且列为相应的几个表格以供大家参考,如有误之处请指正,谢谢。 一、新建常用XAML项目类型模板和各种语言的关系 项目类型名 项目类型作 ...

  • windows 8 开发之开发平台与开发框架的应用

    windows 8 开发之开发平台与开发框架的应用 win8 App开发主要分成两部分,desktop app和metro app。右边蓝色的部分就是desktop app的部分,也是从win7延续过 ...

  • Windows XP系统虚拟内存的标准设置方法

    当你游戏玩得正酣,或者在激情冲浪开启多个窗口时,你的系统总会出现如右图的提示。机器此时慢如蜗牛,刚才好的心情顿时没了。这一问题引起许多新手朋友的兴趣,这是他们经常遇到的情况。虚拟内存的作用是什么?到底 ...