论文部分内容阅读
网络视频会议系统是多个与会者通过网络传输图像、声音、文字等信息,来实现异地会议的一种通信系统。目前的视频会议系统大多是基于H.323规范的集中式会议系统,由于其包括了多点控制单元MCU、多点处理器MP、网关以及网守等设备,尽管性能较优,但其价格昂贵,配置要求较高,不易普遍推广。本文提出并实现了一种低成本高质量的新型视频会议系统,其服务器端能任意指定n个与会者,各客户端实时捕获与会者的视音频数据并将之传送到服务器端,服务器端合并处理各路视音频数据后,以组播的方式回传给各与会者客户端,同时推发布到流媒体服务器上,使得与会者之外的其他用户可通过Windows Media Player实时地观看到视频会议。本系统是由纯软件实现,数据回传给与会者时利用了分布式网络的组播功能,推发布给流媒体服务器时使用了流媒体传输协议,克服了基于硬件的网络视频会议系统所需要的特殊硬件以及固定通道的缺陷,大大降低了网络视频会议的成本。本系统采用面向对象的编程方法,基于Windows平台,使用VC在DirectShow框架下编程并结合Windows Media技术实现视频会议。研究的内容有:根据TCP、UDP和RTP协议的特点,在网络传输的各个部分合理地选择传输协议,保证媒体数据的传输流畅性和响应实时性;采用抠像技术,将人物目标从背景中剥离;服务器端合并处理视音频数据,并以MPEG-4和ADPCM技术压缩视音频数据后,采用IP组播技术进行回传,节约网络带宽,优化网络传输;将合成后的数据以流的方式推发布到流媒体服务器上,使得非与会者能实时地观看视频会议。为实现各类之间的实时消息通信,本系统还设计了一个消息栈基类CMsgStation,其他业务逻辑类均继承它,这样某个类发送的消息可实时地被其它类所接收。由于采用了COM编程规范,极大地方便了软件升级和扩展,为后续工作的开展提供了基础。