数字多媒体广播平台及其关键技术

发表于:2007-06-23来源:作者:点击数: 标签:
【提 要】本文提出了“数字多媒体广播平台”作为D VB 数字广播完整 解决方案 ,并对解决方案中所涉及到的关键技术进行了探讨。 【关键词】DVB TS码流 复用 数字广播 1 概 述 随着广播电视技术数字化步伐的加快,数字广播平台作为数字广播的基础,成为一个巨

   


 
  【提 要】本文提出了“数字多媒体广播平台”作为DVB数字广播完整解决方案,并对解决方案中所涉及到的关键技术进行了探讨。

  【关键词】DVB TS码流 复用 数字广播


  1 概 述

  随着广播电视技术数字化步伐的加快,数字广播平台作为数字广播的基础,成为一个巨大的潜在市场,各个设备厂商也因此对数字广播平台的系统解决方案倍加关注。作为快速成长的DVB设备开发厂商,我们对数字广播平台做了长时间的跟踪和研究,综合各家之长,提出了“数字多媒体广播平台”(DMBP)这样一个完整的数字广潘平台解决方案,并投入很大力量进行了相应的研发工作。下面就我们的数字多媒体广播平台的方案和实现路径进行讨论。

  2 系统结构

  数字多媒体广播系统是一个结构庞大的系统,一个比较完整的数字多媒体广播系统结构如图所示。图中的下半部分是针对实时节目源的,而上半部分是针对静态源的,它们是独立的两个子系统。本文主要对静态源子系统做详细讨论。

数字多媒体广播平台及其关键技术(图一)



  2.1 以太网

  以太网是前端设备信息交换及数据传输通道,由于传输的负载比较大,采用100M网络设备。数据服务器所需要的数据,及播控服务器所需的视/音频流都经过以太网传输。

  2.2 播控服务器

  此设备是整个系统的核心设备之一,它的功能是按照节目管理服务器提供的所要播出的节目信息,对指定的视频素材和数据服务器输出的数据TS进行复用、播出。它通过以太网访问磁盘阵列读取静态视频数据,同时接收数据服务器传送过来的数据TS流,数据TS可以通过以太网传送到播控服务器,也可以通过播放卡,以ASI形式传送给播控服务器的接收卡。在复用播出过程中,完成PCR抖动的校正、流量控制、SI/PSI信息的插入。

  2.3 数据服务器(DVB网关)

  数据服务器是整个系统的另外一个核心设备。它根据节目管理工作站提供的节目信息的数据部分完成对数据的TS流封装,把各种形式的数据打成TS流包。它的源可以是磁盘中的文件,也可以是动态的IP数据报和动态的证券信息。起码应该支持多协议封装(Multi-Protocol Encapsulation)和DSM-CC数据轮播的格式,它的输出应该是一个独立的TS流,应该有完整的PSI/SI 信息。输出支持两种形式的输山,一是播放卡的ASI接口输出,一是以太网输出。同时完成根据分配的带宽对数据流量的控制。

  2.4 素材管理工作站

  素材管理工作站负责对磁盘阵列的素材进行管理。包括对素材文件的增加、删除、分类、搜索、属性设置等,同时还应该有编辑、浏览、生成素材的能力,对于视频素材应该与TS码流非线性编辑配合使用,强调界面的友好和易用性。

  2.5 节目管理工作站

  节目管理工作站负责根据即将播出的内容,对节目中的素材进行编排,生成播出节目信息及节目指南信息。播出节目信息传送给播控服务器和数据服务器,由播控服务器和数据服务器根据播出节目信息确定即将播出的视频素材和数据素材。另外,节目管理也应该指出一些实时数据源的播出信息。

  2.6 磁盘阵列

  磁盘阵列用来存储节目素材,其容量应该可以根据实际的应用进行扩充,而且还应该可以高速访问。另外,数据素材和视频素材存在于共同的磁盘阵列或者分别存储,可以进一步考虑。

  2.7 WEB服务器

  WEB服务器向数据服务器提供所需要的实时IP数据报。

  2.8 PC加接收卡终端

  这种终端针对计算机用户,用户通过个人计算机观看电视节目,浏览数据广播信息。它应该具备根据用户密码解扰的功能。

  2.9 用户管理工作站

  用户管理工作站与CA有条件接收系统密切相关,在这里不做阐述。

  2.10 机顶盒终端

  机顶盒的功能可以做得非常强大,一个很重要的发展方向是支持MHP中间件。我们如何来和机顾盒厂商合作,来支持我们的前端,是很重要和很现实的问题。

  2.11 DVB—C的发送卡和接收卡

  发送卡和接收卡是TS流传播的媒介,前端系统中的数据服务器和播控服务器的TS流的传送以及PC加接收卡终端需要这些卡。在前端的接收卡和发送卡:ASI接口,码流速率应该达到40M 左右,另外有WINDOWS2000的驱动;在终端应是同轴电缆接口,有QAM解调功能。

  2.12 CA系统

  CA完成对指定输出节目的加扰,产生EMM、ECM信息。如果没有CA系统,那么多媒体广播系统就不是一个完整的系统。

  3 实 现

  3.1 概述

  如前所述的数字多媒体广播平台是一个非常庞大的系统,整个系统的所有设备很难全部由一个公司完成,比如CA系统和机顶盒这些设备一般由专业厂商研制,可以把它们做得很深入。实现数字多媒体广播平台的比较可行的做法是,研发本公司最为擅长、最为关键的设备,相关的设备通过集成和定制完成。平台中,前端、CA、机顶盒终端、个人计算机终端有很密切的联系,如何来集成或定制CA和机顶盒来支持平台的工作,需要怎样的合作形式,在研发前都应该有一个明确的认识和规划。由于这是一个比较庞大的系统,如果把研发的工作全面铺开,从人力上说,会需要更多的人参与进去;从时间上说,这个研制周期会拖得相当长。鉴于目前情况,根据笔者的理解,可以先根据不同的应用环境,设计出针对性强、结构相对简单、能独立使用的系统,作为系列产品中的一种来推广,等这些小的系统比较成熟之后,做一定的修改组成最后一个完整的数字多媒体广播系统。根据这一设想,提出以下几个既相关又相对独立的系统。

  3.2主要设备的技术目标及关键技术

  3.2.1播控服务器

  播控服务器在视频广播系统中可以称为视频服务器。它应该有以下的指标和功能:①与节目管理系统的接口,按照节目管理系统编辑的节目信息文件来安排播出内容;②多路统计复用;③PSI/SI信息的自动生成和插入;④支持动态的数据TS流的输入,与硬盘视频流复用;⑤与有条件接收系统的接口;⑥电子节目单的生成和插入;⑦输出DVB-ASI,能实现小间隔连续可调;⑧字幕的插入。下面有几个问题需要讨论。

  (1)PCR校正

  对于视频TS流,多路复用成一路后,原来的PCR已经不能精确地表示当前的节目参考时钟,出现了扰动,所以在复用过程中必须对PCR的扰动进行重新调整。对于静态的视频码流的PCR调整与动态码流的PCR调整有很大区别又有密切联系。对于静态的视频码流,调整的方法是把存储于硬盘阵列中的TS流文件假设成没有PCR扰动的实时TS流输入,然后根据码流中的PCR和间隔可以计算出实时码率,也就可以求出每一个包“到达”的时刻。同时在复用时必须知道此包“离开”的时刻,这时就可以对扰动进行校正。所以在实现时软件必须时刻记录当前每路输入流和输出流的实际码率和码流数据流量,在这个基础之上,算出当前每路码流的当前时刻,根据输入码流与输出码流的时刻差来适时地插入空包和调整输出的PCR。

  (2)离线复用与播出的关系

  对于以静态TS流为源的视频播出服务器,必须讨论的是离线复用和播出的关系问题。一些厂商在实现过程中采用先做离线复用,把复用后的码流存储,然后再通过播出软件播出。在早期由于机器速度问题和读盘延时没有解决之前是一个比较省力的选择。但是现在看来,完全可以与播出模块实时通信,把复用后的TS流传送出去,而把复用后的TS流放到硬盘基本上没有任何好处,且浪费巨大的存储空间。可以考虑离线复用与播出是分为一个进程中的两个线程,还是分别为两个独立的程序。如果做到一个进程中操作起来会简便一些,但是分开的好处是两个功能模块比较独立,这样软件的结构比较清晰,另外在进行程序修改升级时也比较方便。当前的离线复用与播出分别有两个进程实现。作为例子,我们在研发过程中,复用与播出通过共享内存的方式实现通信,共享内存大小设置为:1024k字节,前32个字节作为信息标识字节。其中第一个字节是表示当前通信状态:0x00,表示正常的通信状态,当共享内存区有5120个数据包后,播出软件就把数据送出;0x80,表示不管当前共享内存中有多少数据包,都要把它们送到发送卡上去,但是播出线程并不推出;0xff,复用程序会结束复用,播出把当前的共享内存中的有效数据包送出,同时结束播出。第2字节表示共享内存中有效数据包数目的低8位,第3字节表示共享内存中有效数据包数目的高8位。

  (3)节目信息文件

  复用程序是根据节目信息文件所编排的节目内容和顺序对素材进行复用的,节目信息文件应该由节目管理软件生成,它包含节目的构成和素材编排以及每个素材的基本信息,如播出长度、文件长度、码流格式(包长)、内容简单描述等信息。节目信息文件可以是一个标准的数据库,也可以是一个自定义的文本文件,节目信息文件可以由节目管理软件来生成,也应该在必要的时候由手工生成。节目信息文件的定义一定要考虑可扩展性,以后对节目信息的添加不会导致重新定义文件格式。另外,节目信息文件也是EPG信息生成的基础。

  (4)PID的分配

  考虑到节目素材的不同来源,在被编排到同一节目的不同的节目素材的PTD很可能是不同的,而不同的节目中的素材的PID有可能相同,所以必须对复用后的TS中PID重新设置。目前是按照一定的规律设置固定的PID;第一套节目PMT-PID为0x100,视频PID为0x111,音频PID为0xll2,PCR-PID为0xlll;第二套节目PMT-PID为0x200,视频PID 为0x211,音频PID 为0x212,PCR-PIC为0x211……,这种设置方式可以支持31套节目。在将来可以考虑允许用户在一定范国内自由设置PID,设置PID的工作在节目管理软件中完成。

  (5)复用过程中的流量控制

  复用过程中的流量控制主要保证素材码流按照其原始的码流码率均匀地流进复合TS流中,同时均匀插入空包。当前的做法是,每一套节目以及输出码流都有一个时间标记,在复用过程中根据随时计算的码率可以得出每一套节目和输出码流的时间标记值,比较每一套节目与输出码流的时间标记。当某一套节目的时间标记小于输出码流的时间标记,则读入这一套节目素材的一个TS包,如果所有的节目的时间标记都大于输出码流的时间标记,则插入空包。

  (6)PSI/SI的插入以及于CA的关系

  当前的PSI的插入策略是,当第一套节目的PAT到来时,换成复用后的PAT,而各路的PMT 来时,把原来的PMT 换成复用后各套节目的PMT,这种方法不用单独为插入PAT来计时,比较方便。缺点是如果第一套节目先于其它套节目结束,则在第一套节目结束之后无法重新搜索节目。可以改变方法,把PAT的插入改为计时插入。在需要加扰的情况下,TS流中需要CAT表的插入,而且PMT表中应该有 CA—Descriptor。插入CAT表和修改PMT应该是由复用完成还是应该由CA系统完成(应该是空包替换,否则会导致视频流的PCR抖动)。另外,ECM和EMM信息的插入是由复用来完成,还是预留带宽,也就是有一定比例的空包,然后由CA 系统把部分空包替换成ECM和 EMM。我认为这些有关CA的工作由CA系统来做比较合理,但是这需要明确当前CA系统的工作模式,是否能按所设想的那样做。所以,必须明确我们集成什么样的CA系统。

  3.2.2数据服务器(DVB网关)

  数据服务器主要职责是把各种类型的数据封装成TS包。它应该有以下的指标和功能:①与节目管理软件的接口。接收节目管理软件生成的节目信息文件,并根据节目信息文件对数据部分的描述,对数据素材进行数据封装并复用成复合TS流;②支持多协议封装(Multi-Protocol Encapsulation)和对象/数据轮播(Object/Data Carousel);③数据源可以是静态的数据文件,也可以是 IP数据包;④PSI/SI信息;⑤电子节目单;⑥与CA的接口;⑦支持DVB-ASI输出,以太网输出(可以讨论确定是否需要)。

  (1)多协议封装与对象/数据轮播

  多协议封装可以完成对IP数据报的TS流转换,它在进行TS打包时,是把IP数据报放进一个与TS专用段兼容的数据段中。数据轮播是基于DSM-CC协议的,这是十分丰富也比较复杂的协议。利用这种协议传输,所有的数据、控制命令都是以消息形式(Message)存在的方式。对于广播方式,只有两种类型的消息从前端到后端:ControlDown和DataDown。对于多协议封装和轮播,实现过程中的 SI/PSI的安排比较类似,以数据轮播为例。SDT或 EIT中插入data-broadcast-descpritor,且在这个描述符的selector- byte字段中包含data-carousel-Info-structure结构。在描述数据轮播的PMT中,ESPID给出包含多协议封装数据的TS包的PID值。SDT中data-broadcast-descriptor中的 cormponent tag 字段与 PMT 中stream_identifier_descriptor(位于 ES-info- length之后)的component-tag相同。

  (2)流量控制

  数据服务器的流量控制与播控服务器的流量控制不同,它不用像对视频TS流那样实时计算流的码率,而是根据事先分配好的带宽均匀地把各种TS流穿插输入。如果实际的数据码率之和小于输出码率,则需要插入空包。空包的插入可以由软件来完成,也可以由播出卡来完成。

  (3)数据服务器与播控服务器的关系

  在视频播出系统和数据播出系统中。播控服务器和数据服务器直接输出TS流,二者没有任何关系;但是在完整的数字多媒体广播系统中,数据服务器输出的TS流是要给播控服务器的,播控服务器在把数据TS 流与视频TS流再复用成复合TS流,然后再进入QAM调制。所以,对于数据服务器来说就有两种不同的输出模式:①直接进入QAM,针对于数据广播系统;②进入播控服务器,针对于完整的数字多媒体广播系统。对于第一种情况,输出可以就是通过播出卡的ASI接口输出。对于第二种情况,可以通过播出卡的ASI接口与播控服务器的接收卡相连接,或者通过以太网向播控服务器输出。

  3.2.3节目管理和素材管理

  节目管理软件是前端用于编排节目的工具,具备以下指标和功能:(1)对节目素材数据库检索;(2)编排节同:安排要播出多少套节目,每一套节目的内容(素材),为每一套节目设置属性,包括PMT-PID,基础流PID,以及PCR-PID等;(3)为输出为多协议封装的数据设置地址;(4)生成节目信息文件;(5)EPG的编辑和生成;(6)与播控服务器和数据服务器通信;(7)对素材的预浏览。   素材管理用于对素材的管理、编辑和简单编辑。具体来说:(1)素材数据库的创建和修改;(2)素材浏览;(3)素材分类;(4)素材录制;(5)素材编辑。

  素材管理与节目管理都属于管理类型的软件,由操作员直接面对,应该有一个易用的图形化操作界面,支持如拖放等功能。在实际实现中,对于较小的系统可以考虑把这两系统合成一个软件。在互为独立的两个软件时,素材管理软件对素材数据库进行各种操作,而节目管理软件只是对素材数据库的内容查询浏览,不能修改数据库。对于这两个管理软件的开发,由丁没有涉及到低层的一些东西,倾向于快速开发工具加上数据库的模式。

  4 结束语

  数字多媒体广播系统是比较庞杂的系统,涉及到的东西比较多,加之数字广播也处在成熟的过程之中,有许多地方需要改进完善。近年来,国内许多厂商在数字广播方面加大了投入,我相信在今后不久时间内,肯定会有更加完善、更符合中国实际情况的数字广播方案提出并实现。

原文转自:http://www.ltesting.net