Windows Mobile Camera Native API
自从上次在淘宝上淘了一个Cingular 8125(国内是Dopod 838)以来,总想试试一些模拟器上不能玩的功能,相机就是其中之一。在SDK中有3个sample,其中两个是基于native code的,还有一个是managed code。Managed code的初始平台是classic上的,我又没有装classic的SDK,只装了个professional的,所以就用那两个native code的例子了。
Camera Capture Graph 是基于DirectShow框架的,它可以提供用户极大的可控性和灵活性,具体可以参考MSDN上的ICaptureGraphBuilder2 Interface和在Windows Mobile 5中使用DirectShow控制摄像头-转这两篇文章。程序运行的界面如下图1所示:
图1:Camera Capture Graph运行界面
界面比较简单,我的感受就是运行速度比后面的Camera Capture要快好多,但是拍摄图像的分辨率比较低,不能自己设置。
再讲讲Camera Capture,它调用了SHCameraCapture,在windows mobile SDK 5.0的时候就已经引入了,大家可以参考MSDN上的文章SHCameraCapture和CSDN上的文章在mobile上调用SHCameraCapture接口进行拍照。SHCameraCapture可以调出照相机进行拍照、摄像,并设置图片或视频文件存放的路径。该程序运行界面如下图2所示:
图2:Camera Capture运行界面
这个功能就比Camera Capture Graph丰富多了,提供模式、图像质量和Video类型的选择等等。选择start以后,我们就可以看到传统的相机界面,如下图3所示:
图3:Windows Mobile上的Camera界面
用其拍摄的照片或者是视屏,默认是存放于设备的”我的图片”和”我的视频”这两个目录下,其照片的效果如下图4所示:
图4:Camera Capture的照片效果
视屏的效果一般,可能是与我这个130万像素的摄像头有关吧。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构