支持H.323和RTSP协议的双模终端
2010-09-07赵晓焱袁泽明
赵晓焱, 袁泽明, 张 凡
(1.河南师范大学计算机与信息技术学院 河南新乡453007;2.河南财经学院计算机与信息工程学院 河南郑州450002;3.欧特克软件(中国)有限公司 上海200122)
支持H.323和RTSP协议的双模终端
赵晓焱1, 袁泽明2, 张 凡3
(1.河南师范大学计算机与信息技术学院 河南新乡453007;2.河南财经学院计算机与信息工程学院 河南郑州450002;3.欧特克软件(中国)有限公司 上海200122)
随着网络技术及多媒体压缩技术的长足进步,提出了基于分组交换网络的视频会议系统.传统视频会议系统中H.323终端不具有扩展性,而MCU的接入能力有限,极大地限制了参与会议的人数.通过对H.323系统及RTSP协议的研究,提出了可扩展的双模终端.系统采用应用层组播技术,以流媒体接入方式改进了H.323终端,实现了终端的扩展,提高了接入终端数量,促进了视频会议系统的发展.
H.323;RTSP;视频会议;应用层组播
0 引言
视频会议技术的出现和发展逐渐改变了人类的社会活动方式.随着多媒体通信技术的不断发展,视频会议业务的实用性和便利性愈加显示了其突出的优越性,应用越来越广泛[1].国际电信联盟为了使各个不同的厂商生产的视频会议系统终端互通,制定了用于分组交换网络上多媒体通讯的H.320标准和H.323标准[2].标准的制定更加促进了视频会议的发展和普及,视频会议相关技术也成为业界和学术界的一个研究热点.然而在大多数H.323视频会议系统中,由于视频编解码的复杂性,计算机的运算能力不足和网络的带宽限制,一个MCU可接入的终端数有限,极大地限制了参与会议的人数,这也是视频会议技术所面临的一个瓶颈.针对此问题,本文对传统H.323终端进行了改进,加入RTSP服务器和RTSP客户端模块,实现了扩展功能,通过应用层组播技术[3],以流媒体接入方式增加了系统容量.
1 双模终端研究
1.1 基于双模终端的H.323视频会议系统
基于双模终端的H.323系统物理网络拓扑图如图1所示.
图1 双模终端H.323系统物理网络拓扑Fig.1 Physical network topology of dual-mode terminal H.323 system
系统由双模终端、RTSP终端、视频服务器和控制服务器组成.双模终端是一个关键的实体,同时具有H.323终端和流媒体服务器的功能.RTSP终端由RTSP服务器和RTSP客户端组成,使媒体流可以在RTSP终端间实现层层转发.视频服务器是一个可选实体,可以给双模终端提供视频流.控制服务器则是整个系统的控制中心,也是应用层组播系统中的RP点.此外,控制服务器扮演双模终端和RTSP终端之间的信令转发角色,来实现它们之间的协议映射.
1.2 系统中双模终端的设计
RTSP服务器模块和RTSP客户端模块的引入使H.323终端可以实现流媒体服务器功能.基于RTSP会话技术,双模终端主机可通过树型层次实现应用层的互联,并经由应用层的组播分发共享流媒体数据.双模终端主要功能模块如下:
(1)视频流媒体转发模块[4].双模终端从MCU得到的视频数据是图像混合后的RTP数据包,视频的RTP包在通过单向视频逻辑通道H323LogicChannel时被复制一份到RTSP服务器模块的缓冲区中,当有RTSP终端连接到双模终端时,RTSP服务器模块将这些缓冲区中的数据转发给RTSP终端.
(2)音频流媒体转发模块.MCU发送至双模终端音频流中不包含本地的语音.双模终端在收到MCU的音频流后,首先将RTP数据包拆去包头,送到解码器进行解码,然后将解码得到的语音样本和本地语音混合,再将混合后的语音送到编码器进行编码,最后把编码数据打成RTP包,由RTSP服务器模块进行转发.
(3)视频流媒体接收模块.双模终端的RTSP客户端模块连接到RTSP服务器,并得到视频流后,将得到的RTP视频数据包复制到H.323模块,H.323模块则用它们代替本地采集的RTP视频数据包发送至MCU.
(4)音频流媒体接收模块.与视频流媒体接收类似,双模终端的RTSP客户端在收到音频RTP包后就复制到H.323模块,由H.323模块发送至MCU.
2 双模终端实现
2.1 双模终端实现
双模终端实现运用了OpenH323Library、PWLib等API.OpenH323Library是建立在PWLib上的一种开放源码的C++类库,适用于W indow s平台和Unix平台.系统开发中采用PWLib中与GU I无关的类库,如I/O功能API、多线程API等;与GU I有关的部分,采用M FC类库进行开发,保证了终端的用户亲和性与美观性.
传统视频会议系统中,本地视频采集和视频图像显示效果不理想,视频采集图像帧率的最大值为10帧左右.为了解决这个问题,双模终端采用了DirectShow中的视频采集技术及DirectDraw的显示方式,使得视频图像的采集帧率可以从10帧达到20帧.实现流媒体转发是实现双模终端的关键,双模终端和RTSP终端之间用RTSP协议来传输媒体流.双模终端在与MCU之间建立了逻辑通道后,就会启动一个RTSP服务器线程ProcessThread,线程函数主体流程如图2所示.
双模终端接收RTP数据包时,在H323Channel的子类H323UnidirectionalChannel中调用Start()方法,启动了一个用于接收和发送媒体数据的后台线程H323LogicalChannelThread,过程调用H323_RTPChannel中接收Receive()方法来传递媒体数据,Receive()函数流程如图3所示.
2.2 应用层组播实现
在本文研究的系统中,是通过流媒体传输技术来实现应用层组播的[5],这种应用层组播系统可以解决在只有一个数据源时构造大规模组播树的问题.MCU处于组播系统第0层,双模终端处于第1层,RTSP终端所在的层数不小于2.应用层组播系统的控制拓扑和数据传输拓扑如下:
(1)控制拓扑
在本系统中,双模终端和RTSP终端都要注册到控制服务器,它们的注册信息中包含了自己的父节点和子节点信息,控制服务器在收到注册信息后,会将该信息存入数据库,并根据父节点和子节点信息形成一个控制拓扑图.当某个节点要加入时,首先向控制服务器注册,即发送要加入系统的请求,如果该节点是双模终端,则控制服务器接受该节点注册,并通知该节点的子节点去连接它,如果该节点是RTSP终端,控制服务器则在数据库中查询是否有这个节点的父节点,如果存在,则通知该节点去连接它的父节点,如果不存在,则该节点等待其父节点的加入.
(2)数据传输拓扑
为了避免数据循环传输,数据传输拓扑同样选择了树形结构.对基于层次结构的应用层组播协议来说,其特定数据源的数据传输路径已经在控制拓扑中进行了隐式定义.因此,在控制拓扑上系统只需要决定哪些成员需要转发数据:首先,数据源会把数据包发向它在控制拓扑上的所有子节点;然后,这些得到数据包的节点会去判断自己是否有子节点来决定是否要转发数据包.本系统的数据传输拓扑如图4所示.
图4 数据传输拓扑Fig.4 Data transmission topology
2.3 H.323协议到RTSP协议的部分映射
系统由控制服务器来转发从双模终端到RTSP终端的控制信令,从而实现H.323信令和RTSP信令之间的部分间接映射,完成双模终端对RTSP终端控制.控制服务器中运行了一个H.323信令映射状态机线程,每当双模终端状态转换时,例如连接MCU、断开MCU、改变视频格式、改变传输速率等等,双模终端就会发送不同的消息给控制服务器的信令映射状态机,状态机则会根据双模终端不同的状态来通知RTSP终端做出相应的动作.
除了上述信令映射以外,控制服务器的信令映射状态机可进行扩展,将双模终端收到的H.323信令映射为RTSP终端的响应动作,如显示双模终端的当前状态等等.
3 系统性能
由于MCU接入终端能力有限,系统的接入容量主要由改进后终端的扩展能力决定.双模终端可以拓扑接入RTSP终端,RTSP终端作为父节点可以再次接入子节点.系统测试环境:百兆以太网,P4 2.6 G CPU, 512 M内存,Intel 915集成显卡,Window s XP操作系统.每个双模终端接入RTSP终端容量测试结果如表1所示.
从试验结果可以得出:双模终端接入RTSP终端数小于等于20时,在带宽允许范围内,数据包在双模终端转发的延时,即双模终端收到数据包到转发该数据包的时间在300~400 m s之间,RTSP终端与双模终端之间画面显示延时小于300 m s,此时传输速率为384 kbp s,CPU占用率为30%~40%.当接入终端数大于20时,图像运动程度越激烈,传输所占带宽越多.
表1 双模终端接入容量测试结果Tab.1 The test results of access capacity w ith dual-mode terminal
4 结束语
H.323视频会议技术的出现带给人们一种全新的交流方式,视频通信也已发展成为人类社会经济生活中不可缺少的一部分.本文对H.323系统提出了以流媒体接入方式来增加系统容量的改进方法,这种改进方法对视频会议系统具有一定的学术价值和应用前景.
[1] 张瑞.多媒体视频会议系统及其应用浅探[J].科技情报开发与经济,2008,18(6):160-161.
[2] 董伽俐,李祥和.对H.323标准及其关键技术的研究[J].通信技术,2008,41(5):167-169.
[3] 章淼,徐明伟,吴建平.应用层组播研究综述[J].电子学报,2004,32(12):22-25.
[4] 陈东伟,韩娜.嵌入式数据库在基于多核处理器的视频监控中的应用[J].郑州大学学报:理学版,2007,39(4):52-55.
[5] 雷启明,周利平.主动流媒体编码转换机制研究[J].四川师范大学学报:自然科学版,2008,36(6):770-774.
A Double Mode Term inal Supporting RTSP Protocol for H.323 System
ZHAO Xiao-yan1, YUAN Ze-m ing2, ZHANG Fan3
(1.College of Com puter and Inform ation Technology,Henan N ormal University,Xinxiang 453007, China;2.College of Com puter and Inform ation Engineering,Henan University of Finance and Econom ics,Zhengzhou 450002,China;3.Autodesk Inc,Shanghai 200122,China)
W ith the great development of netwo rk technology and m ultimedia comp ression technology,the video conference system has been achieved based on sw itch packet netwo rk.The H. 323 terminal of the traditional video conferencing system does not have the scalability and MCU access capacity is limited,w hich greatly limits the number of peop le participating in themeeting. Aim ing at the p roblem,a method based on streaming media using the app lication layer m ulticast technology is put fo rw ard to enlarge the num ber of terminals through the research of H.323 system and RTSP p rotocol.It p romotes the development of video conference system.
H.323;RTSP;video conference;app lication levelmulticast
TP 393
A
1671-6841(2010)02-0083-04
2008-12-26; < class="emphasis_bold">修回日期:20
2009-10-19
河南省科技攻关项目,编号082102210109
赵晓焱(1981-),女,讲师,硕士,主要从事多媒体网络通信研究,E-mail:sonny009@sohu.com.