一种数字电视瞬间换台的实现技术
2016年6月06日 16:59 作者:缪理宾 创维南京研究院第一研究所 210缪理宾 创维南京研究院第一研究所 210037
【文章摘要】
本文设计一种数字电视瞬间换台的实现方式,属于数字电视领域。本设计实现在同一物理频点下不同节目之间的瞬间切换。在无需对硬件进行改进的情况下,完全通过软件的方法实现瞬间换台,提升用户体验。
【关键词】
DVB ;数字电视;瞬间换台;PAT
1 背景技术
数字电视在我国已经大范围全面普及,我国有线数字电视采用的是DVB-C 数字电视传输标准。卫星数字电视则是DVB-S、ABS-S 两种数字电视传输标准。目前用户在观看数字电视时,通过遥控器上的频道加减键进行换台时,一次换台需要等待的时间大约是3~5 秒左右,用户体验非常不好。目前市面上会有一些数字电视机顶盒通过硬件性能提升的方式来提升换台速度,但是这样会增加硬件成本;本文将介绍一种在无需对硬件进行改进的情况下,完全通过软件改进的方法来实现数字电视的瞬间换台。
2 普通的数字电视换台过程
在模拟电视时代,一个物理频点只能传送
图一
图二033
软件开发
Software Development
034
电子制作
一套电视节目;在数字电视时代,由于数字电视节目信息采用了高效的视频压缩算法,所以一个物理频点下可以传送8 套左右电视节目。传输方式可以是多种方式,比如卫星传输、有线传输、地面发射塔等等。
接收设备(机顶盒、数字电视机等)播放电视节目流程如下图(图一)所示:
在用户换台之后,接收设备通过Tuner 进行频点锁定,再经过Demod(解调)之后得到TS 流。
根据PSI ( 节目特定信息) 的规范,接收设备首先从TS 流中去抓取PAT 表(Program associate tabel,节目关联表) ,PAT 表的PID (Packet identifier)为0,这是DVB 标准中已定义的。 PAT 表中包含了当前物理频点下的所有节目的PMT 表(Program mapping table,节目映射表)的PID。通常一个物理频点下有8 套左右数字节目。
接收设备抓取PAT 表成功后, 再根据PAT 表中的数据去抓取PMT 表(Program mapping table, 节目映射表), 如图一所示, PMT 表的PID 包含在PAT 表中; PMT 表中包含了当前这个频点的节目所需要的内容的PID。最后根据PMT 的数据来设置Demux (解复用),抓取所需要的信息进行解码播放。
每一次换台,接收设备都会重复以上过程,以上整个过程单次耗时在3~5 秒左右。
那么我们有没有办法通过软件改进的方式来提升换台的速度呢?
3 瞬间换台的实现方法
通常,普通的接收设备的做法是,用户换台换到哪个节目,接收设备就去抓取哪个节目的数据。比如用户换到“节目1”,接收设备就只抓取“节目1”的数据。其他的数据一概不管。
通过上面图一的描述我们可以看到,同一个物理频点下的所有的节目数据信息都是可以拿到的;在切换到一个新的物理频点后,首先把需要播放的节目数据抓取完成,开始解码播放;然后利用空闲的CPU 与内存,继续抓取同一物理频点下的所有节目信息的数据包,那么用户在同一物理频点下换台时,就可以直接把需要的数据“解码播放”即可,从而实现瞬间切换;切换时间在1 秒左右,相比原来的3~5 秒,会有质的提升。改进前后的换台流程对比如下图(图二)所示:
【作者简介】
缪理宾,男,学历:本科,职称:工程师,职务项目经理。