基于 DM642 的 X264 开源代码实现的研究
时间:2008-04-11 09:46:00 来源:微计算机信息 作者:谭超 王库 傅颖
摘要:本文概述了 H.264 视频压缩编码标准的主要特性,简要介绍了当前 H.264 的
几种开源软件,详细分析了其中 X264 参考程序的具体结构,并针对 TMS320DM642 平
台建议了可能的优化方向。
关键字:H.264;开源软件;X264;TMS320DM642;优化
引言
H.264/AVC 是 ISO/IEC 和 ITU-T 两大国际标准化组织联合制定的新一代视频编码
标准。它引入多种宏块划分、多模式的帧内和帧间预测编码、高精度亚像素运动估计、多
参考帧运动补偿等技术,提高了压缩比;采用整数 DCT 变换,避免了精度的损失。在码
流结构上,提出 VCL 层和 NAL 层的概念,其中增加的 NAL 层负责将编码器的输出码流
适配到各种类型的网络中,提供了友好的网络接口。同时,标准提供的许多工具如参数集、
灵活的宏块排列次序、冗余片等,使得 H.264 的码流在网络中传输时具有更强的抗误码性
能。基于 H.264 的实时编解码器设计与实现已经成为当前视频通信领域的热点问题。
1、H.264 开源代码简介
H.264 所具有的独特优势促进了与之对应的开源软件的开发与应用。目前常见
的 H.264 开源软件编解码器有以下三种 :
1)JM
H.264 的官方测试源码,由德国 HHI 研究所负责开发。该代码旨在实现
H.264 的所有特性,因而结构冗长,编码复杂度极高,多用于学术研究,不适于实际应用。
2)X264
X264 是由法国巴黎中心学校的中心研究所于 2004 年 6 月发起,并由许多视频
编码爱好者共同完成的项目。其目标是实现实用的 264 编码器,所以它引入 MMX、SSE
等汇编指令来提高编码速度,同时摒弃了一些耗时但对编码性能提高微小的模块,如多参
考帧等。
3)T264
由中国视频编码自由组织联合开发的 H.264 编解码器。它和 X264 一样注重实
用,吸收了 JM、X264、XVID 的优点。但其解码器只能解 T264 编码器生成的码流。
2、X264 代码分析
本文所介绍的 X264 为 060418 版,下文所提到的程序结构和运行结果如不作
特殊说明均针对该版本。
代码的实现流程如图 1 所示。