论文部分内容阅读
网络摄像头应用的不断拓展,使其不仅在娱乐领域,在更多的专业领域都有着独特的应用,这样的背景下开发网络摄像头应用软件的需求也不断增多。如何快速开发出质量好、功能完善的摄像头应用,对于技术复杂的多媒体领域并不是一件简单的事。本文针对这一现状,提出了以SDK(Software DevelopmentKit)的形式解决这一问题的方案,分析了现行的几种可行技术,分析比较后选定DirectShow为底层的支持技术,致力于为广大开发者提供专业的开发途径。本文的主要工作包括:1.介绍DirectShow的相关知识,包括过滤器及过滤器的管理原理,滤波器的连接实现机制,视频捕获和图像获取的原理。2.需求分析及接口的设计,包括接口的详细定义,硬件与平台的分析,整个系统架构的说明,主要数据结构的介绍。本套SDK的提供形式,包括ActiveX、NPAPI、.NET三种控件形式。介绍了从DirectShow到浏览器内核的通信方式和数据交互原理。系统包括WebcamManager, WebcamProcess和Webcam三大模块,以视频的创建为中心,三大模块分别为其提供数据,用户界面,环境准备。最底层是DirectShow的COM接口,为所有的上层模块提供可行的技术支持。3.实现结果的分析,控件的安装步骤,以及使用该套SDK开发出程序的界面展示,通过不同摄像头硬件测试遇到的问题分析,提出解决方案。4.本文研究内容的应用创新总结。ActiveX和NPAPI技术的结合使用解决了绝大多数浏览器上的开发问题,COM技术实现了开发语言上的多样性,.NET控件专注于托管程序开发应用,减去了注册COM组件的步骤,硬件方面,该套SDK涉及不同型号硬件的兼容性,在不同标准和平台的硬件设备上进行充分测试,解决了主流硬件上的常见问题,文中列出了支持的主要摄像头型号,以上几方面的实现了该套SDK的跨平台、跨语言、可定制、可扩展的优良特性。