本文在第二部分将阐述基于控制理论的通用的多媒体自适应视频质量控制方案。与传统的方案不同,该方案几乎可以实现在所有不可预约带宽的网络环境下的多媒体自适应传输;同时,该方案可以适用于大部分通用编码和码率整形算法,并有坚实的理论保证。考虑到已有的流媒体服务器解决方案存在并发用户受限,传输图像画面不连续,视频质量低下等问题,第三部分阐述了我们自主研发的独立知识产权、与国际标准完全兼容的流媒体服务器:Clear Media Server。Clear Media Server采用新颖独特的架构以提高其并发用户数,并初步实现视频质量和发送速率控制及符合工业标准的拥塞控制以大幅提高流媒体服务质量。最后,本文各部分内容统一于第三部分的实现(产品化)部分。
在流媒体服务质量研究工作的基础上,我们联合上海清鹤数码科技公司设计了一个全新的拥有独立知识产权的,与国际标准完全兼容的流媒体服务器:清灵流媒体服务器(Clear Media Server)。Clear Media Server采用新颖独特的架构以提高其并发用户数;并初步实现视频质量和发送速率控制及符合工业标准的拥塞控制以大幅提高流媒体服务质量。本节着重讲述了Clear Media Server的架构、视频质量和发送速率控制在Clear Media Server中的统一实现模式。
其中,主进程(Main PRocess)管理和协调其他进程的运行;RTSP(Real Time Streaming Protocol)通信进程负责与客户端的RTSP控制信息的传输;媒体数据发送进程(Media Data Sender Process)负责发送媒体数据。
对于流媒体服务器,其主要性能瓶颈在于需从硬盘读取和向网络发送以吉比特计的媒体数据,相比而言,进程之间通信的开销很小。所以Clear Media Server的这种架构非常有利于系统的扩展性和灵活性。比如,可以针对用户的不同需求,配置不同数量的媒体数据发送服务器(运行媒体数据发送进程的机器);各个媒体数据发送服务器可以集中在一起,也可以分散在广域网中,使得既能就近为客户提供媒体服务从而节省网络资源和提升服务质量,主控服务器(运行主进程和其他管理进程的机器)又能集中管理各个媒体数据发送服务器和客户机;从开发和升级的角度来看,这种系统架构使得各个进程具有相对的独立性,便于开发管理和升级。
媒体数据发送进程是Clear Media Server的核心模块,该模块统一实现了视频质量控制、发送速率控制和媒体数据的RTP打包发送。媒体数据发送进程设一个定时器,每隔一定时间(如100ms)轮询一遍该进程的活跃session(即已经建立连接的Session)的状态,若当前Session的状态为play,则对该Session的各个缓冲器内的数据进行合理的调度,并按照质量控制或速率控制的策略进行数据发送。
[1] Wu D,Hou T,Zhang YQ.Transporting real-time video over the Internet:Challenges and approaches.Proc of the IEEE, December 2000.1855~1875
[2] Ye Dejian,Zhang Zuo,Wu Qiufeng.A receiver-buffer-driven approach to adaptive internet video streaming.IEE ElECTRONICS LETTERS,2002,38(22):1405~1406
[3] Ye Dejian,Cam Barker,et al.Wavelet-Based Smoothing of VBR Video Traffic.to appear on IEEE Transactions on Multimedia(full paper),available on http://research.microsoft.com/asia/dload_files/group/wireless/2002p/TMM_wavelet.pdf
[4] S Jacobs,A Eleftheriadis.Streaming video using TCP flow control and dynamic rate shaping.Journal of Visual Communication and Image Representation,September 1998,211~222
[5] G Franklin,J Powell,A Emami-Naeini.Feedback Control of Dynamic Systems,Addison-Wesley,1995