基于DM642的X.264编码器优化
H.264标准的全称为“H.264/MPEG-4 part 10”,是由ITU-T和ISO/IEC共同成立的联合视频组(Joint Video Team,JVT)制定的新标准。H.264依然采用预测结合变换的混合编码方案,为了在相同的编码框架下得到更高的视频压缩编码性能和更广泛的适用性,H.264标准引入了许多新技术,如1/4,1/8像素精度的运动估计、多参考帧的帧间预测、帧内预测、环路滤波和自适应算术编码等。H.264视频编码标准在编码质量和压缩比上比原有的视频编码标准都有了明显的提高。
在相同的视觉感知质量上,编码效率比之前的编码方式提高了50%。H.264标准的编码性能超越了以往所有的视频编码标准,具有很好的应用前景,大量的应用于视频压缩和视频监控。
目前,H.264编解码标准的研究主要分为算法研究和硬件实现两大类,硬件实现的方案主要分为3种:
(1)基于PC平台的方案。此方案为纯软件实现编解码,利用MMX和SSE/SSE2等多媒体指令集来优化程序,具有开发成本低和周期短等优点。PC机的CPU体系结构并不适合处理数字信号,故CPU的有效利用率比较低。
(2)基于ASIC芯片的纯硬件方案。此方案将视频编解码算法固化成硬件,具有集成度高和开发周期短等优点,但是专用型比较强,产品不易升级。目前市场上已经出现了H.264的编解码芯片,如Fujitsu的MB86H51、Hisilcon的GOALTMHi3510和JVC公司的JCY0237 LSI等。
(3)基于DSP的软硬件结合方案。此方案利用DSP芯片和其它外围芯片来构成处理系统,具有开发灵活性高、处理能力强、开发周期低、功耗低和易升级等优点。随着DSP性价比的不断提高,该方案已经成为目前H.264编码器硬件实现的理想方案。
H.264编解码标准具有压缩比高、适应性广、容错能力强和图像恢复质量高等特点,在实时系统中具有很好的应用前景。TMS320DM642是TI公司推出的一款针对视频和图像处理领域应用的数字多媒体处理芯片,具有处理能力强和集成度高等特点,是目前实现H.264视频编码器的理想芯片之一。很多国内外公司都在开发或已经开发出了基于DM642开发视频监控系统。
1 X.264编码器移植
X.264是由法国巴黎中心学校的中心研究所于2004年6月发起,由许多视频爱好者共同完成的项目,它注重实效性,在不明显降低编码性能的前提下,努力降低编码的计算复杂度,摒弃了JM中一些耗时相对较大但对性能的提升影响很小的模块,如多参考帧、帧间预测中不必要的块模式、CABAC等。X.264编码器在程序结构上,利用了MMX/SSE/SSE2等基于X86构架的多媒体硬件加速指令。需要将相关的X86指令屏蔽,对部分函数进行精简,使其结构简单易于在DSP上执行。简单移植过后的X.264编码器,在DM642平台上的编码效率极低,表1为移植过后的X.264编码器在DM642平台上编码结果。
由结果可以看出,移植完成后的X.264在DM642平台上的编码效率非常低,只能达到平均0.6 f/s的编码速率,需要进一步针对X.264编码器和DM642的特性来优化以提高编码效率。
2 X.264编码器的优化
2.1 编码器参数设置
X.264编码器在VC下的优化使用了一些平台相关的硬件加速指令,所以在VC调试下的X.264编码器参数在DSP平台上执行将对编码速度产生很大的影响。在CCS中优化X.264编码器时,在不影响编码质量的情况下修改部分参数以提高编码的速度。
(1)关闭环路滤波:环路滤波器能使解码图像的主观质量有所提高,但环路滤波器只对提高压缩效率做出很小的贡献。如果采用环路滤波将降低1 ms的编码时间。不使用环路滤波对图像的解压本身没有太大影响,而DSP注重速率的情况下关闭环路滤波可以获得更高的编码速度。表2对有无环路滤波的编码图像的峰值信噪比进行了对比,从表中可以看出环路滤波对编码的质量影响有限。
(2)对P帧使用半像素搜索,不采用1/4像素搜索。表3列出了半像素搜索与1/4像素搜索的时钟周期对比图。 从表中可以看到,采用P帧半像素搜索方式对编码速度提升30%以上,并且视觉上解压出来的图像没有明显失真。
(3)对全像素块运动预测搜索的方式,X.264默认为HEX(正六边形搜索半径为2),在对比测试了DIA(菱形搜索,半径为1)和UMH(可变半径六边形搜索)后,对比了速率和峰值信噪比后,发现在峰值信噪比相差很小的情况下DIA搜索速率最快,本文选择DIA作为运动预测搜索方式。表4给出3种方式的对比结果:
2.2 X.264代码优化
X.264编码器需要有效的利用DM642的特性,如软件流水,芯片特性和指令集等,才能有效的提高X.264编码器在DM642平台的编码效率。为了X.264能够充分的利用起DM642的特性,需要结合DM642本身的特点对移植过后的X.264代码进行优化,才能够提高X.264在DM642
- 基于DM642的视音频采集器的设计(09-01)
- 基于DM642DSP的视频编码优化方法(09-01)
- 12位串行A/D转换器MAX187的应用(10-06)
- 低功耗、3V工作电压、精度0.05% 的A/D变换器(10-09)
- 12位串行A/D转换器的原理及应用开发(10-09)
- 在射击探测器中增加口径确定功能的简单电路(11-13)