昨天上图形的Liu sir 在课堂上说学院的某老师接到一个项目,想找一帮研究生去做。呵呵,很高兴, 在无聊的上了一个多学期的课程的时候终于找到个实践的机会了!但是这个项目还是没有最终的谈妥, 做不做的成都还难说,管他呢,先报了名! 昨天下午开始就开始筹备项目的准备工作了;首先是到书店查了下现在的书籍中是否有相关比较现成 的资料。果然,一些编程书中真的有。晚上的时候罗列了一个提纲,看可以到网上什么地方找到相关的 资料和关键字,也比较顺利的找到了。说到这里还是先简单的介绍下项目的情况了: 实现一个类似于“视频会议系统”小型软件系统;
系统基于C/S架构;
初步定为4-6客户端,一个主机服务器;
每一个客户端配备一个即插即用型USB接口摄像头,每一客户端直接与主机之间通信;
客户端上的显示器只要求显示客户端的视频图像,服务器端的显示器则需要同时显示所有的客户端的 视频图像;
考虑网络环境为同一大楼内部的局域网;
显示的速率为 8-12帧/s ;媒体传输协议使用ITU的H.263协议; 下面我就把这个项目叫做x项目吧! X项目主要用到了几个关键的技术,如果这些技术问题得以解决的话,那么做这个项目就没有什么问题 了。 1. USB摄象头的视频采集技术
2. H.263的编码技术
3. 流媒体传输控制协议的实现(网络编程) 今天上午的工作的成果是:
1.找到了 USB摄象头的采集技术的基本方法 - Direct Show. 在DX的SDK中,关于D-Show的部分 就是关于如何实现多媒体播放采集的函数的封装。其中还有一个示例程序-AMcap,一个捕获usb接口ca mera的输出的工程。但是,里面涉及到了COM技术,可能做其来会比较烦,对了,还有本书也比较重要 Direct Show实务开发,好多专题开发的人都是使用的这个书 2.H.263 协议的实现。MS的 NetMeeting 工具就是一个实现视频聊天会议的经典工具。他的sdk 完全可以满足我们这个小型项目的使用了吧!现在的版本是3.01吧 3.最后是传输的实现,昨天在书店看到的某本书上讲到了这个问题,理论上没有什么太大的难题了 现在我的计划就是找一个专题来开始熟悉吧! -- 待续