《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > 基于DVB和IP双结构传输模式流媒体视频点播系统的设计与实现

基于DVB和IP双结构传输模式流媒体视频点播系统的设计与实现

2008-07-07
作者:黄新强1, 朱珍民2

    摘 要: 针对互联网流媒体" title="流媒体">流媒体视频点播" title="视频点播">视频点播传输带宽问题,对数字广播协议原理和多协议封装技术做了简单介绍,提出了一种基于IP OVER DVB传输模式" title="传输模式">传输模式互联网-广播网双结构流媒体视频点播系统的设计方案,并给出了一种Web网页视频点播应用具体实现方法;该系统综合了互联网和广播网的网络特性,具有双向交互、稳定可靠,不受用户规模限制等诸多优点。
    关键词: 流媒体  视频点播  DVB协议  多协议封装  IP OVER DVB

 

    流媒体是网络和数字媒体技术相融合的产物。多媒体数据在传输前先经过编码器压缩成码流,用户可以通过网络或者特定数字信道接收数据并实时解码播放。这种压缩传输、边下载边播放的工作方式既可以减少对网络资源的带宽占用,又能为用户提供实时同步的视频服务。如今流媒体技术已广泛用于新闻出版、电子商务、视频会议、远程教育等互联网信息服务领域。
    即便如此,目前互联网的网络状况也很难支持大用户规模、稳定可靠的、高品质的视频服务。因互联网遵循的是“端对端”的原则,网民规模难以摆脱带宽限制;它的网络层只提供“尽力而为之”的服务,规模越大,可靠性与安全性越没有保证,而流媒体采用边下载边播放的工作方式,要求有较稳定的带宽环境;虽然多媒体文件在传输前经过压缩,但是相对文字和图片,容量仍然比较大,因此服务器端仍然需要承担大量数据的传输,况且互联网路由复杂,往往从视频源到接收端要经过路由转接跳数多达十几个,对整个传输网络也有不小的负担。通常互联网站只能支持视频直播的码流在600kbps左右,难以达到满意的视听效果,在很大程度上限制了流媒体应用的发展和普及。
    与此相反,覆盖全国的广播网,由于采用广播方式播送,其数据通过卫星传输或者有线网传输直接入户,中途没有路由转接,没有信道拥堵,不仅能保证稳定的视频码流,而且不受用户数量限制。由此可见,互联网与广播网具有很强的互补性。随着广播网的数字化,通过数字广播协议封装IP协议数据技术可以实现互联网-广播网双网互联,为构建互联网-广播网双结构网络开展流媒体视频点播应用提供了平台支持。本文主要讨论在互联网-广播网双结构网络基础上,基于IP over DVB传输模式,构建流媒体视频点播平台的设计方案和实现方法。

1 数字视频广播协议和网络拓扑结构
1.1 数据视频广播

    数字视频广播DVB(Digital Video Broadcasting)简称数字广播,是由欧洲电信联盟(ETSI)制定的基于MPEG-2的国际标准传输技术,信源编码和系统复用部分都遵循MPEG-2国际标准,信道编码部分则根据信道不同而有卫星传输(DVB-S)、有线传输(DVB-C" title="DVB-C">DVB-C)、地面开路广播(DVB-T)等。我国已经将DVB-S作为卫星数字电视标准,而DVB-C也已经成为我国现行数字电视的“行业标准”。下面对有线网(HFC网)数字广播网进行说明,它利用现有的CATV网络进行传输,一个原来8MHz带宽模拟频道,采用DVB-C传输技术,利用64QAM调制传输数字信号,传输速率可以达到42Mbps,扩充了传输带宽,在不影响传统模拟电视传输的同时,能够同时开展数字电视、高速数据传输、VOD等应用。数字广播能够以很高的速度将文本、图形、视频、音频、数据等传输到PC、机顶盒等智能设备,这种数据传播方式不仅信源丰富,传播广泛,而且还避免了信道拥堵、不能保存等不足。图1给出了有线网数字广播网络拓扑结构。

    前端的数据可以是本地服务器的文件,也可以是来自互联网的IP数据包。DVB网关侦听网上的IP数据包,按照DVB的标准将IP数据包封装成MPEG-2传输流,通过复用器与其他TS流(如数字电视TS流)进行复用。复用后的TS流调制到某个模拟频道并与其他模拟节目混合在一起通过有线网络进行传输。在接收端,用户通过安装在个人电脑上的DVB数据接收卡" title="接收卡">接收卡或者机顶盒将来自有线电视网中符合DVB-C标准的有线电视信号进行解调、纠错、解扰、解复用等处理,最后将数据存储到PC上或者直接在电视上播出。
1.2 多协议封装-IP OVER DVB传输模式
    针对不同的应用类型,DVB定义了以下六种方式:数据管道、数据流、多协议封装、数据传送带、对象传送带、用户自定义的服务。图2为DVB数字广播协议结构。


    协议封装提供了在MPEG-2 TS流之上传送IP协议数据的一种机制即IP over DVB传输模式。由图2可见,通过IP over DVB传输模式,应用层的IP数据包最终被封装成MPEG-2传输流。其中,传输流的包长为固定的188B,包含TS头、适配域和净荷数据。TS头由同步字节、标志位、指示位、PID加上其他诸如纠错的定时等信息组成。其中PID用于区别不同的流和不同的节目特定信息(PSI)。图3为MPEG-2 TS流数据包结构。

 

2 双结构视频点播系统设计方案
2.1总体设计思想

    在视频发送端和接收端间建立互联网-广播网两种网络连接,形成一个通信的闭环。互联网负责信息交互和传输控制,而大容量的视频内容通过数字广播通道单向传输。这样既秉承了互联网的交互特性,也保证了视频传输的可靠性和安全性,即使是视频直播,也不受接收用户数量的影响;在广播接收终端,PC机通过镜像存储,把瞬态存在的广播数据流变成可以本地点播观看的视频资源;机顶盒也可把收到的视频内容写入终端存储器。这样信道只需传输新鲜内容或差分内容,进一步提高了广播通道的使用效率,最终实现不受用户规模限制、可双向交互、稳定可靠的高品质视频点播服务。图4为互联网-广播网双结构流媒体视频点播网络拓扑结构。

 

    互联网前端视频播出系统主要由Web网页服务器、视频服务器、节目采集系统、视频节目库组成,所有数据经由互联网传输,如图4所示。双结构前端视频点播系统构架与互联网视频播出系统构架基本一致,只需将视频服务器视频数据传输路径设置为数字广播即可。
2.2 IP over DVB传输模式和透明传输
    前端视频播出系统发送的IP数据被封装成DVB协议的TS流,通过数据广播网络传输,接收端采用PC机中的DVB-C接收卡或TV的DVB-C机顶盒的宽带接入方式,可将来自广播网中的视频数据送入PC机或DVB-C机顶盒中,并最终还原成TCP/IP协议数据,以IP数据包的形式提交给上层应用程序,DVB-C接收卡的协议层模型如图5所示。

 

    由于采用IP over DVB传输模式,屏蔽了互联网和广播网网络传输差异。用户在使用计算机系统时,无需感知应用程序和信息资源的具体所在,只要用户提出要求,就可以得到相应的信息,实现“跨网”的透明传输。
2.3 基于COM组件的网页视频点播功能实现方法
    COM组件是遵循COM规范编写、以Win32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行二进制代码, COM组件在应用开发方面具有以下特点:
    (1)同一COM组件可以在不同的应用环境中重复使用。COM组件不一定是为专门的系统而设计,可以有较宽的应用领域,不会因为某一系统的“过时”而被“废弃”。
    (2)COM组件之间彼此独立。应用则被看成COM 组件集合。当应用需求发生变更时,可能需要更换中间层的个别COM组件,但这并不会影响其他组件的继续使用。
    (3)COM组件具有若干对外接口(属性和方法),根据不同的应用需求,可以有选择地使用不同的方法,调用方无需了解组件内部具体实现。
    (4)COM组件既可以被嵌入动态Web页面,又可以在VB和VC等开发环境中使用。
    因此,COM组件非常适合于Internet中的各种事务处理。笔者采用Window Media Player插件作为网页播放器,将DVB-C接收卡COM组件嵌入到Web页面中,用户访问该页面时将下载该组件并自动在本地注册,脚本描述语言(Script)可以通过调用方法(Method)与DVB-C接收卡COM组件进行通信,无需了解DVB-C接收卡具体工作过程。图6为视频点播网页脚本工作流程图。


    DVB-C接收卡COM组件对外接口的调用方法定义为:DVBCtl.SetMsg(ULONG DVBMsg)。其中,DVBCtl为COM组件类对象名称;SetMsg(ULONG DVBMsg)为调用方法名称;ULONG DVBMsg 为IE网页脚本向COM组件DVBCtl. COM传递的字符串参数,包括频道、PID、符号率、QAM调制方式信息。
    利用面向对象的可视化开发工具Microsoft Visual C++可以很便捷地开发DVB-C接收卡COM组件,而DVB-C接收卡功能的具体实现则被封装在COM组件中。DVB-C接收卡COM组件内部的主要功能函数定义为:
    ·void OnNcOpen();//打开DVB-C卡
    ·void OnNcClose();//关闭DVB-C卡
    ·void OnNcTune(ULONG Channel,ULONG Sym,ULONG Qam);//设置DVB-C卡参数(通道、符号率、调制方式)
    ·void OnNcQuerystatus();//DVB-C卡状态查询
    ·void OnNcAddpid(ULONG Pid);//添加PID
    ·void OnNcDelpid(ULONG Pid);//删除PID
    ·void OnSaveToFile(ULONG Filename);//读数据并将TS流转换成IP数据文件。
    图7为DVB-C接收卡COM组件内部控制流程图。


    该方案充分考虑到互联网和数字广播网的特点,取长补短,在不对现有互联网流媒体视频点播软件系统作大调整的基础上,同时有效利用丰富的广播网络带宽和用户资源,建立一套不受用户规模限制、可双向交互、稳定可靠的高品质视频点播系统,为我国企业流媒体视频应用提供了一种经济有效的技术方案。
互联网和数字广播网各有特点、互有长短,两者之间的区别比较如表1所示。

 

    如果能发挥两网各自优势、取长补短,当用户提出内容需求时,信息资源将自动以最低成本的方式到达用户端,而用户无需感知信息资源是来自何种网络,实现“跨网”透明操作,将有助于实现互联网、广播网等多种网络的真正融合。
参考文献
[1]  EN301192V1.2.1.Digital Video Broadcasting(DVB).DVB specification for data broad casting[S].1999-06.
[2]  Information technology-ceneric coding of moving pictures and associated audio information-Part6:Extension for Digital Storage Media Command and Control(DSM-CC)-International Standard(IS)[S].ISO/IEC13818-6.
[3]  Digital Video Broad casting(DVB)[S].Network-independent  protocols for DVB interactives revices,ETS300802-1997.
[4]  ETSI standard EN 300 421-1998, Digital Video Broadcasting(DVB),Framing structure, channel coding and modulation for cable systems.
[5]  马卫东,李幼平,袁宏春. IP 0ver DVB技术及其应用[J].微电子学与计算机,2001,(5).
[6]  陈彪,石旭刚,朱广信.基于IP/DVB-C的HFC网高速数据广播系统[J].电视技术,2002,(7).
[7]  周志,王贻良.DVB数据广播标准及实现[J].电视技术,2000,(5).
[8]  STEVENS W R.TCP/IP详解(卷1,协议)[M].北京:机械工业出版社, 2001.
[9]  钟玉琢,白哲,沈洪.流媒体和视频服务器[M].北京:清华大学出版社,2003.
[10]  [美]MACK S著, 刑栩嘉译.流媒体宝典[M].北京:电子工业出版社,2003.
[11]  DAVID J K著.潘爱民,王国印译. Inside Visual C++ 4th Edition [M].北京:清华大学出版社,2001.
[12]  黄维通. Visual C++面向对象与可视化程序设计[M].北京:清华大学出版社, 2003.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。