- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于ARM的MPEG4视频解码器
顾梅花1 张太镒21 西安工程科技学院电子信息学院,西安,7100482 西安交通大学电子信息学院通信系,西安,710049
摘 要 详细阐述了针对ARM平台的MPEG4视频解码算法的优化方法。实验数据表明,优化后的解码器性能得到了全面提升。还结合ARM7TDMI的Easy ARM2200开发平台,给出了嵌入式MPEG-4视频解码的实时实现。关键词 ARM,MPEG4,嵌入系统,视频解码器
1 引 言
本文旨在研究基于ARM微处理器的MPEG-4视频解码技术,主要应用在手持移动设备中。利用嵌入式系统实现MPEG-4视频解码,处理器的选择是关键。在嵌入式系统中常用的RISC处理器是ARM核,主要是因为它具有体积小,功耗低,成本低,性价比高的特点,这对于移动应用领域非常重要。ARM7系列微处理器为低功耗的32位RISC处理器,最适合于对价位和功耗要求较高的消费类应用。本解码器定位于低分辨率和低帧率的应用场合,因此选择在ARM7TDMI核上实现解码功能。要实现更高帧率和分辨率的解码,可将软件直接应用在更高端的处理器上。
2 MPEG-4视频解码算法的优化与实现
MPEG-4标准可以划分为一套子标准,标准的每一部分都有各自最适合的应用场合。MPEG-4 SVP就是一种特殊的、简单的MPEG-4实现,SVP代表Simple Visual Profile。这部分是专门针对手持式产品中无线视频传输应用场合而制定的。由于本解码器应用在手持移动设备视频解码的场合,因此选用MPEG-4 SVP作为解码算法。本文选用ARM7TDMI作为核心处理器进行MPEG-4视频解码器的开发。在实际开发过程中,针对ARM7TDMI的结构和MPEG-4的算法特点,做了大量优化工作,保证了解码的精度,大幅度提高了解码的速度。解码器的具体功能如表1所列。
表1 基于ARM7TDMI的MPEG-4视频解码器功能表
功能 系统实现 压缩标准 MPEG-4 SVP 输入图像分辨率 QCIF(176×144,如果选用更高端处理器,则可支持更高分辨率) 解码帧率 15fps(如果选用更高端处理器,则可支持更高帧率) VOP类型 IVOP+PVOP DC/AC逆预测 支持 Inter4V模式 支持 逆量化方法 H.263(MPEG可选) 逆扫描方式 Zigzag扫描+水平交替扫描+垂直交替扫描 输出图像格式 4∶2∶0 YUV 2.1 解码器算法解码过程实际上就是从视频编码码流中恢复出VOP数据的过程。图1描述了一个视频解码过程。解码器主要包含两部分: 运动解码和纹理解码。I帧中只含有纹理信息,因此只须解码纹理信息即可恢复I帧。而P帧中不仅包含纹理信息,还包含运动信息,所以须解码运动信息,获得运动矢量并进行运动补偿。另外,还须进行纹理解码获得残差值,将这两部分组合起来才能重建P帧。
图1 MPEG4 SVP的解码过程
解码器的实现主要是提供一个简单的接口函数,供解码时调用。该接口函数根据解码的不同需要和不同阶段提供了5个入口。5个接口函数中: 4个供初始化、预处理及后续处理时调用;剩余1个是帧解码的实现函数。图2为帧解码主程序的流程图。
图2 帧解码主程序的流程图。
解码过程的计算主要集中在如下几个模块:IDCT、运动补偿MC、逆量化、逆扫描、逆预测以及变长解码VLD。表2给出了优化前解码过程的特征信息。从表2中可以看出,上述运算模块在解码过程中占有很大比例。对以上各模块进行优化的效果将直接反映在解码器的实时效率上。
表2 优化前解码过程的特征信息
各单元名称 各单元所占时间比例/% IDCT 40 逆量化,逆扫描和逆预测 24 数据分析和变长解码 14 2.2 ARM平台下算法的优化ARM结构是基于RISC原理的,指令集和相关的解码机制都比CISC要简单得多。它能高效地输出指令,快速送出实时中断响应;它还进行了管道设置,处理和存储系统的所有部分可以持续地运转。在典型的情况下,当一条指令被执行时,其后续指令正在被解码;而第三条指令便从存储器中取出。ARM7TDMI并不具有指令或数据的高速缓存,主要被用于控制核心,而非数据处理。但通过对其特性的灵活运用,可以使其非常容易地应用于视频解码过程。对MPEG4视频解码器的算法优化主要从以下几方面入手:(1) 算法的优化这里是指高级C语言转化算法以简化计算量, 用最佳算法实现解码中的各模块。 IDCT算法的选择IDCT运行次数多,运算量很大,其变换的快慢直接影响解码的速度。本文采用一种称为AAN的快速算法。其一维8点的DCT变换通过16点DFT来实现,而16点DFT又可通过FFT实现;二维8×8的DCT运算仅需80次乘法和464次加法操作,大大减小了这
您可能关注的文档
最近下载
- 声控灯的安装与调试工作页.doc VIP
- 2024年全国统一高考化学试卷(新课标)(含解析版).docx
- 2024春期国开电大《应用写作(汉语)》形考任务1-6参考答案.doc
- 佳能PowerShot使用手册SX70HS说明书.pdf
- 重大社2024初中信息科技1教材解读-七年级上册第一单元(吴跃进).pptx
- 谦敬辞训练题(答案).doc
- 《等腰三角形的判定》PPT课件.pptx
- 原发性肝癌诊疗指南(2024年版)内科及系统治疗解读.pptx
- 线性多智能体系统的自适应动态事件触发一致性Adaptive Dynamic Event-Triggered Consensus of Linear Multi-Agent Systems-来源:理论数学(第2021011期)-汉斯出版社.pdf VIP
- HG_T 4580-2013 农业用硝酸钙.docx
文档评论(0)