机顶盒实时监测视频I帧间隔时间供前端优化研究
来源:用户上传
作者:
摘要 伴随数字电视业务的蓬勃发展,机顶盒已成为普通家庭用户主要娱乐终端设备。广播电视网逐步实现了产品化,网络话,数字化,市场发展前景广阔。用户数量增多带来的各种投诉居高不下,其中,机顶盒换台速度慢占比较大。对此,加强机顶盒快速换台研究,提升机顶盒换台速度已成为相关工程师研究与关注的重点。基于此,在数字电视原理分析与实践工作经验总结的基础上,从机顶盒快速换台展现音视频内容入手,就机顶盒实时监测视频I帧间隔时间供前端优化音视频流数据进行了研究与分析,以供相关专业技术人员参考。
【关键词】机顶盒 I帧间隔 换台速度
“机顶盒”是数字视频变换盒(SetTopBox)的简称,是实现数字音视频信号在电视上展示的关键设备。机顶盒的功能已从一个多频率的调谐器和解码器跃升为大量电影、多媒体事件、新闻等联机数据库的一个控制终端。随着数字电视、机顶盒的普及,和设备日趋复杂,以及加密节目的因素,用传统的工具已经无法分析出用户端节目的I帧间隔,给运营商通过调整播出节目的I帧时间间隔,进而调整用户端节目换台时间过长问题,造成了很大的麻烦。如果运营商能根据I帧时间间隔的检测结果,对I帧过长的节目进行处理,减少I帧的间隔时间,则就可以从本质上提高换台速度。这也是本文研究的主要目标所在。
1 合理设置视频I帧时间间隔的重要性
数字电视机顶盒的换台时间,与遥控器响应时间、高频头锁定时间、ECM获取时间、设置解扰字的时间,运营商节目播出的I帧时间间隔密切相关。
MPEG图像是由I帧,B帧,P帧组成,其中I帧是一个全帧压缩编码帧,解码时仅用I帧的数据就可重构完整图像,I帧不需要参考其他画面可直接构建完整图像,I帧是P帧和B帧的参考帧,I帧是帧组GOP的基础帧。P帧是以I帧为参考帧,在I帧中找出P帧某像素的预测值和运动矢量,取预测差值和运动矢量一起传送。在接收端根据运动矢量从I帧中找出P帧某像素的预测值并与差值相加以得到P帧某像素样值,从而可得到完整的P帧。B帧以前面的I或P帧和后面的P帧为参考帧,找出B帧某像素的预测值和两个运动矢量,并取预测差值和运动矢量传送。接收端根据运动矢量在两个参考帧中算出预测值并与差值求和,得到B帧某像素样值,从而可得到完整的B帧。
I帧和P帧的解码算法比较简单,资源占用也比较少,I帧只要自己就能完成解碼,P帧也只需要解码器把前一个画面缓存一下,遇到P时就使用之前缓存的画面就好了,如果视频流只有I和P,解码器可以不管后面的数据,边读边解码,线性前进,大家很舒服,但占用的空间很大,不适合网络实时传输视频流。
通过网络传输的视频大都都采用了B帧,因为B帧记录的是前后帧的差别,比P帧能节约更多的空间。但这样一来,文件小了,缓解了网络传输压力,解码器任务就重了,因为在解码时,不仅要用之前缓存的画面,还要知道下一个I帧或者P帧的画面,通俗的说就是要预读预解码,而且,B帧不能简单地丢掉,因为B帧其实也包含了画面信息,如果简单丢掉,并用之前的画面简单重复,就会造成画面丢帧,并且由于网络传输的视频为了节约空间,往往使用相当多的B帧,B帧用的多,如果I帧间隔设置不合理,换台速度就会出现较大波动。
I帧的压缩率约为7,P帧的压缩率约为20,B帧的压缩率可以达到50左右,可见使用B帧能节省大量空间,节省出来的空间可以用来保存多一些I帧,这样在相同码率下,可以提供更好的画质,可见合理设置I帧的重要性。
从多年的数字电视实践经验去分析,I帧时间间隔过长是影响机顶盒换台速度的重要原因之一。运营商视频节目来源不同,I帧的间隔时间可能就存在差异,实际播放过程中导致个别节目换台时间较长,用户投诉较多。目前传输的数字电视节目已加密节目为主,用传统的工具已经无法分析出用户端节目的I帧间隔,给运营商通过调整播出节目的I帧时间间隔,进而优化用户端节目换台时间过长问题,造成了很大的麻烦。如果运营商能根据I帧时间间隔的检测结果,对I帧过长的节目进行处理,减少I帧的间隔时间,则就可以从本质上提高换台速度。
2 机顶盒提供实时监测视频I帧间隔时间技术
机顶盒每次换台的时候,当第一帧I帧芯片解码出来的时候,就开始计数和计时,然后每次检测到I帧,则增加计数,同时统计I帧间隔时间。
机顶盒在切换到新的节目时候,首先视频解码器会从锁定的TS码流中寻找,首先找到的I帧参考点,首先找到的这个I帧参考点就是第一个I帧。当视频解码器把I帧数据解码还原成图像后,准备呈现给用户的时候。这个时候就是I帧的起始点时间。我们称为开始基准时间点T0。然后找到第二个I帧数据解码成图像后,我们称为T1时间点,第三个I帧称为T2时间点,第四个I帧称为T3时间点,依次类推我们可以得到T4,T5,T6,T7......这些I帧时间点。相邻两个I帧时间点Tn+1与Tn的时间间隔就称为相邻I帧的间隔时间Dn。
我们把相邻两个I帧的时间间隔最大的Dn称为I帧最大间隔时间,相邻两个I帧的时间间隔最小的Dn称为I帧的最小间隔时间。那么I帧平均间隔时间=(Tn–T0)/n。机顶盒通过技术手段呈现这些内容。例如把统计出来的I帧平均时间间隔、最大时间间隔和最小时间间隔时间通过特定菜单呈现给运维人员,或者通过特定的回传通道传输给统计服务器,供相关专业技术人员分析使用。
3 结论
总之,无论是DVB机顶盒还是IP网络机顶盒,运用本文所述技术方法,数字电视终端能准确的检测运营商加密节目的I帧间隔,解决了常规软件分析不了加密节目的I帧间隔问题,为运营商提供了一个实时监控每个节目的I帧间隔时间的机顶盒解决方案。此方案仅通过优化软件即可完成,不增加硬件成本。如果用户反馈节目换台时间异常,节目运营商可获取用户反馈的指定节目的I帧时间间隔的数据,如果是因为I帧间隔导致的换台时间异常,可以在节目播出端,对节目进行更加合理的优化处理,确保播出节目的I帧间隔合理,提高节目的流畅性和提高终端机顶盒换台的速度,给用户更加好的体验。为有线电视终端事业稳定与可持续竞争发展提供技术支撑,奠定良好基础,促进用户和运营商关系良性发展。
参考文献
[1]王进.视频流媒体的数据结构中IBP帧的格式解析[J].中国科技成果,2016,17(11):38-40.
[2]黄海驰.数字电视机顶盒的基本原理、技术及构成探讨[J].价值工程,2010,29(24).
转载注明来源:https://www.xzbu.com/1/view-14841880.htm