浅谈H.264 DVB-T机顶盒解决方案
扫描二维码
随时随地手机看文章
H.264作为新一代的视频编解码技术,与传统的MPEG-2相比,其卓越的压缩性能,使其能在较小带宽下实现更高画质的视频传输,在视频数据存储中占用更少的存储空间。
传统的DVB-T市场,MPEG-2是主流视频编解码格式。近年来,随着带宽和频率资源越来越珍贵,欧洲新兴地区、俄罗斯、土耳其等地区的运营商选择H.264作为视频编解码格式,形成了一定规模的市场,引起了机顶盒厂商的关注。
上海富瀚微电子有限公司在几年前就看到这一需求,推出了H.264解码芯片FH8601。这款ASIC芯片与业已成熟的DVB-T机顶盒芯片组合成一种双芯片解决方案。FH8601作为协处理器可接收来自主芯片(如LSI9700、NEC61123)的指令和H.264码流数据,解码后再将图像通过601/656显示接口送回主芯片,由主芯片做显示处理。此方案已被俄罗斯DVB-T运营商量产选用。
如何在传统的DVB-T机顶盒平台基础上实现新一代具有H.264视频解码能力的解决方案?工程师在实现这样的双芯片组合解决方案时需要解决哪些关键的技术问题?本文将主要针对H.264解码芯片FH8601在与传统平台进行集成的过程中需要注意的如下技术关键点做出阐述:
1.控制接口和视频I/O接口;
2.实现视音频(A/V)同步;
3.应对H.264编码码流兼容性;
4.主机系统软件。
控制接口和视频I/O接口
如图所示,在一个机顶盒终端中,FH8601是作为一个协处理器来实现视频解码。它提供了与主芯片通信和数据传输的接口,即最基本的LocalBus接口。只要主芯片可以提供访问RAM或Nor型闪存的数据地址总线,就可以实现对FH8601的控制和视频数据传送。而主芯片怎样获得FH8601解码后的视频数据也是系统工程师需要考虑的一个问题,FH8601为此提供了标准的ITU601/656视频输出接口。
主机接口LocalBus:FH8601芯片可以通过16位或8位的数据宽度来与主机传输数据,8位或16位宽度可配置。主机对FH8601的操作主要包括复位、配置、下载固件、写码流数据和查询状态。
视频数据输出接口:视频数据完全兼容ITU601/656标准,主机必须能够提供相应的视频输入接口。视频输出接口的同步时钟可以有0度相位和180度相位两种选择。
音视频同步
音视频的同步是所有开发机顶盒方案的音视频应用工程师应该重点关注的一个问题。工程师往往也在这一技术点上花费了较多的精力来使系统获得最好的音视频效果。从基于FH8601已实现方案的实际效果来看,其音视频同步的效果很好。
1.MPEG规范中实现音视频同步的保证
MPEG规范提供了可绝对保证音视频(A/V)同步的恰当工具。每个音频和视频帧都有一个能让解码器同步对声音和图像进行重建的显示时间戳(PTS)。这些PTS值由MPEG编码器中的复用器来赋予。解码器在这些PTS之前接收到音频和视频数据,于是便能利用这些值来同步地播放视频和音频。在MPEG系统中,由于时分多路复用中的位时隙、路时隙、帧之间具有严格的时间关系,这就是同步。为了恢复节目,先对ES进行解码。声音、图像信号的重现需要同步显示,从而要求收发两端数据流要达到同步。
2.FH8601提供的同步机制
FH8601具有自动音频视频同步功能。这一功能简化了系统软件的复杂度。具体来说,主芯片需要将FH8601中的同步功能打开。在解码过程中,主芯片需要将音频的当前PTS写给FH8601,以便FH8601自动进行视频音频的同步。视频PTS伴随着码流数据一起写入FH8601。
编码码流兼容性和可升级性
H.264标准虽然早在2003年就已经确定,但毕竟还处于应用的早期阶段,编码器远没有像MPEG2那样成熟,因此,解码器必须面临编码码流不标准和经常升级的问题。FH8601在芯片实现的定义阶段就考虑到了怎样应对这些问题。通过固件的方式,我们把标准中那些可以灵活变化的部分以软件的方式来实现。而固件的所有变化,并不需要方案设计工程师的参与,而只是简单的替代原有固件并以在线方式下载即可。
码流兼容性:目前FH8601除通过所有ITU兼容性码流测试外,还与所有主流编码器实现了对接。
在线更新固件:需要升级固件时,只需要富瀚提供一个新的固件数据文件,用户直接替换原有的文件重新编译就可以轻松完成升级。
系统软件设计
对于DVB-T/H.264这样的新兴解决方案,任何一个不愿放弃原有软件资源和代码积累的工程师都会想到软件复用。很显然,对于那些已经有过DVB-T机顶盒方案的设计公司来说,双芯片方案给系统工程师带来的一个最直接的便利,就是所有的系统资源都可以直接放在新的项目中。在接下来,我们也需要考虑对原有软件资源的复用。事实上,在主机并没有发生改变的情况下,原有的软件和代码并不会发生任何的浪费,除非你认为它们本身已经过时。我们只需根据新增加的H.264解码功能,进行少量的驱动移植以及接口函数调用测试工作。
不同方案的对比
市场风险:从技术角度来看,由FH8601与成熟的DVB-T芯片组成的双芯片方案与其他支持H.264解码的单芯片SoC方案比较,在研发投入、开发周期、方案成熟度方面都有明显的优势,可大大降低产品进入市场的风险。
价格优势:同时,从价格方面考虑,由于原有的DVB-T芯片已大批量出货,市场价格已非常低,加上一颗低成本的H.264解码器FH8601,其机顶盒终端的BOM价格,相对于其它基于SoC单芯片的终端的BOM价格,低30%~50%。
开发继承:针对目前市场上的单芯片SoC方案,设计公司在选择这样的方案时,基本放弃了原有的软件资源积累,采用全新的软件架构和中间件资源,软件开发人员的需要重新开始一个平台的学习,势必造成了整个代码开发周期加长,测试任务也随之加重。而市场的等待却同样是一个漫长的过程。
我们从单芯片SoC方案中关于视频部分的特性描述,可以看到它们对视频支持的标准都很广,代表了未来可能出现的几种标准H.264、VC-1等,这在给机顶盒带来了功能多样化和灵活性同时,随之而来的是终端成本增加,而采用FH8601的双芯片方案专门针对H.264标清解码市场,切合了当前市场的需求。