DVB系统中多路TS流的软件复用关键技术及实现
时间:01-10
来源:与非网
点击:
本文分析了多路数字电视节目系统级复用原理,并对数字电视节目专用信息PSI的提取和重构及系统层节目时间参考PCR值的修正等关键技术进行研究,提出了进行软件复用的具体方法,最后在Windows平台上,应用VC++开发环境设计实现了TS流分析与复用软件系统TSAM,测试结果表明软件复用速率达到并远远超过了一路传输码流的处理速度,该软件复用方案是有效可行性的。用软件实现传输流的复用,可以节约硬件成本,降低系统的开发费用;且算法全部软件实现,可移植性高,具有良好的扩展性,可以方便灵活的加入数字电视节目指南等辅助信息。
1.引言 TPF FPT
数字图像通信的最广泛也是最常见的应用就是数字电视广播系统[1],与此对应的 DVB 标准的建立更是加速了数字电视广播系统的大规模应用。DVB 标准选定 ISO JIEC MPEG-2 标准作为音频及视频的编码压缩方式,信源编码进行了统一,随后对 MPEG-2 码流进行打包形成 TS流(transport stream),进行多个传输流复用,最后通过卫星、有线电视等不同媒介传输方式进行传输。
对多个传输流进行复用的意义在于复用后的传输流只占用一个物理的传输信道, 传输流中的每个节目所占用的是传输流提供的虚拟信道。在解码器端,只需要一套固定的接收设备,对不同节目的选择只是在传输流中选择不同的原始码流,这大大简化了接收机的实现,节省了成本,提高了灵活性,而且根据该标准定义,解码器的系统时钟与调制解调器的时钟是完全独立的。这使得在实现这两个子系统彼此功能时是完全分开的,因此接口变得很简单。
在数字电视节目制作及发送时,对多路节目的复用,由于一般的计算机很难处理几十兆到几百兆码率的码流,所以,目前大部分的复用器都是用硬件实现的,但其价格昂贵[2,3]。然而,随着计算机速度越来越快,在多 CPU的服务器上,完全能够实现多路节目的实时软件复用。 与硬件复用相比,软件复用具有灵活性高,开发成本低的优点。在软件复用实现方案中,服务器从卫星电视或其它片源中实时采集 TS流,经过分析和过滤将所选择的基本流复用成一路 TS 流,然后通过普通的 TS 流播出卡发送出去。论文分析多路 TS 流复用原理,针对 TS 流中的信息提取和节目专用信息 PSI (program specific information)合成,及软件复用中的节目时钟参考 PCR ( program clock reference)的修正等问题进行研究,提出了进行软件复用的 具体方法,最后在 Windows 平台上设计并实现多路 TS流的软件复用。
2.TS流的系统级复用
数字电视节目的复用包括两个阶段, 对音/视频 PES包的节目复用和对 TS流的系统复用[4]。本文研究第二个阶段即 TS系统级复用,将多个单路的 TS流合成一个多节目 TS流。数字电视系统级复用是数字电视系统的关键技术之一, 其中数字电视节目专用信息 PSI 的提取和重构及系统层节目时间参考 PCR 值的修正,是复用器的两项关键技术。
基于 MPEG-2 的 TS 流多路数字电视节目 TS 流系统级复用原理如图 1 所示。当多路 TS 流复用成一路 TS流时,首先将对各路 TS流的 PSI 进行搜集并分析其码流,得到各路 TS码流中相应的视频、音频、数据信息的码率、对各路节目的包标识 PID, 数字电视节目专用信息PSI,节目时间参考 PCR 等信息进行处理,丢弃各路原有的 PSI 信息。当出现两路 TS 流中的 PID发生冲突时, 需要修改一路或者多路 TS流中某一数据流的 PID(即复用器需要对修改了 PID的视频/音频包或其他数据包进行 PID更新)。可以看到,无论是否出现 PID冲突,复用器都需要重构 PSI 信息,其滤波的处理过程如图 2 所示。对不同节目的 PID 值进行修改后,与本地产生的这类数据重新整合为复用后新的 PSI 等系统级控制信息,同时插入符合 DVB-SI 规范的业务信息, 并在携带有调整字段的 TS包中, 判断带有 PCR标志位字段的值, 如果该值为"1",那么在该 TS 流离开复用器的时刻,需要对 TS 包中的 PCR 值做相应的修正或重新插入新的节目时钟参考,具体方法将在后面详细介绍。
1.引言 TPF FPT
数字图像通信的最广泛也是最常见的应用就是数字电视广播系统[1],与此对应的 DVB 标准的建立更是加速了数字电视广播系统的大规模应用。DVB 标准选定 ISO JIEC MPEG-2 标准作为音频及视频的编码压缩方式,信源编码进行了统一,随后对 MPEG-2 码流进行打包形成 TS流(transport stream),进行多个传输流复用,最后通过卫星、有线电视等不同媒介传输方式进行传输。
对多个传输流进行复用的意义在于复用后的传输流只占用一个物理的传输信道, 传输流中的每个节目所占用的是传输流提供的虚拟信道。在解码器端,只需要一套固定的接收设备,对不同节目的选择只是在传输流中选择不同的原始码流,这大大简化了接收机的实现,节省了成本,提高了灵活性,而且根据该标准定义,解码器的系统时钟与调制解调器的时钟是完全独立的。这使得在实现这两个子系统彼此功能时是完全分开的,因此接口变得很简单。
在数字电视节目制作及发送时,对多路节目的复用,由于一般的计算机很难处理几十兆到几百兆码率的码流,所以,目前大部分的复用器都是用硬件实现的,但其价格昂贵[2,3]。然而,随着计算机速度越来越快,在多 CPU的服务器上,完全能够实现多路节目的实时软件复用。 与硬件复用相比,软件复用具有灵活性高,开发成本低的优点。在软件复用实现方案中,服务器从卫星电视或其它片源中实时采集 TS流,经过分析和过滤将所选择的基本流复用成一路 TS 流,然后通过普通的 TS 流播出卡发送出去。论文分析多路 TS 流复用原理,针对 TS 流中的信息提取和节目专用信息 PSI (program specific information)合成,及软件复用中的节目时钟参考 PCR ( program clock reference)的修正等问题进行研究,提出了进行软件复用的 具体方法,最后在 Windows 平台上设计并实现多路 TS流的软件复用。
2.TS流的系统级复用
数字电视节目的复用包括两个阶段, 对音/视频 PES包的节目复用和对 TS流的系统复用[4]。本文研究第二个阶段即 TS系统级复用,将多个单路的 TS流合成一个多节目 TS流。数字电视系统级复用是数字电视系统的关键技术之一, 其中数字电视节目专用信息 PSI 的提取和重构及系统层节目时间参考 PCR 值的修正,是复用器的两项关键技术。
基于 MPEG-2 的 TS 流多路数字电视节目 TS 流系统级复用原理如图 1 所示。当多路 TS 流复用成一路 TS流时,首先将对各路 TS流的 PSI 进行搜集并分析其码流,得到各路 TS码流中相应的视频、音频、数据信息的码率、对各路节目的包标识 PID, 数字电视节目专用信息PSI,节目时间参考 PCR 等信息进行处理,丢弃各路原有的 PSI 信息。当出现两路 TS 流中的 PID发生冲突时, 需要修改一路或者多路 TS流中某一数据流的 PID(即复用器需要对修改了 PID的视频/音频包或其他数据包进行 PID更新)。可以看到,无论是否出现 PID冲突,复用器都需要重构 PSI 信息,其滤波的处理过程如图 2 所示。对不同节目的 PID 值进行修改后,与本地产生的这类数据重新整合为复用后新的 PSI 等系统级控制信息,同时插入符合 DVB-SI 规范的业务信息, 并在携带有调整字段的 TS包中, 判断带有 PCR标志位字段的值, 如果该值为"1",那么在该 TS 流离开复用器的时刻,需要对 TS 包中的 PCR 值做相应的修正或重新插入新的节目时钟参考,具体方法将在后面详细介绍。
3.TS流节目专用信息的提取与重构 数字电视节目专用信息 PSI 描述 TS流的组成结构,在 MPEG-2 系统层中极为重要,一个有多路节目和私有数据的 TS 流,需要 PSI 信息将每一路节目的音视频对应起来[5]。PSI 信息将 TS 流中的内容描述成一个树状的结构,如图 3 所示。在 TS 流中可以复用多个节目,每个节目又可以包含多个基本码流(通常是单个视频流、多个音频流)。DVB 系统沿用 MPEG-2 的节目专用信息 PSI 来确定传输的节目和包标识 PID 的关系以及
- 数字机顶盒技术综述 (08-08)
- 全球手机电视三大技术标准对比分析(08-19)
- 浅谈数字电视地面广播(08-30)
- 与众不同交互电视技术数字解决方案(09-02)
- 浅谈数字电视条件接收系统( 上)(09-03)
- 浅谈数字电视条件接收系统(下)(09-03)