基于ADSP-BF5619处理的H.264视频编码器设计

发布者:SereneSoul55最新更新时间:2009-12-15 来源: 电子元器件应用 关键字:H.264  标准  视频  编码  ADSP-BF561  双核处理器 手机看文章 扫描二维码
随时随地手机看文章

0 引言

  H.264/AVC是ITU-TVCEG和ISO/IEC MPEG联合制定的最新视频编码国际标准,是目前图像通信研究领域的热点问题之一。H.264的视频编码层(VCL)采用了许多新技术,因而使得编码性能大幅度提高。与以往的视频编解码标准相比,在相同的码率下,H.264具有更佳的图像质量,这使得H.264在无线通信和网络传输等低码率视频应用领域得到了更为广泛的应用。但这是以复杂度的成本增加为代价的,故使H.264在实时视频编码及传输应用中面临巨大的挑战。而用高性能数字信号处理器(DSP)来实现H.264实时编码器是一种快速有效的方法,有助于H.264视频标准的迅速推广和应用。ADSP-BF561处理器性能卓越,具有600 MHz的主频,且集成了一套通用的数字图像处理外围设备接口,从而为多媒体和图像应用创建了一个完美的系统级片上解决方案。本文针对低码率视频传输的需要,研究并实现基于H.264标准的视频编码系统,同时探讨H.264软件编码器在DSP上的实现及优化方法。

1 H.264编码算法及ADSP-BF561简介

  在实际开发过程中,针对H.264的算法特点和ADSP-BF561双核处理器的结构特性,本文做了大量优化工作,从而在保证编码精度的同时,大幅度提高了编码速度。下面简要介绍H.264视频编码算法和ADSP-BF561双核处理器系统。

1.1 H.264编码算法

  H.264是ISO和ITU联合制定的新一代视频编码标准,具有很高的压缩比和很好的鲁棒性。其整体框架如图1所示。

      在继承了原有视频编码标准的基础上,H.264作了多方面的改进,包括引入4×4子块和16x16子块共9种模式的帧内预测。帧内模式的引入是为了与变换编码一起用于消除空间上的冗余,进而大大提高编码效率。在帧间模式中,H.264可支持多尺寸的运动估计和补偿。其帧间预测时块的大小不是固定的8x8,而是可以从4×4到16x16,并且包括长宽不等的块(共7种类型),同时支持多参考帧,故可大大提高预测性能。此外,H.264还采用整数DCT变换来降低计算量,同时采用自适应算术编码来提高编码效率,并可利用滤波器消除低比特量化带来的块效应等。事实上,H.264的效率比现有的编码技术可提高50%。

1.2 ADSP-BF561芯片结构

      ADSP-BF561是一种双核750 MHz处理器,具有对称多处理(SMP)系统结构。其SMP结构在信号处理和控制功能的集成和分割方面能够为用户提供较高的性能和较大的设计灵活性。ADSP-BF561的系统结构如图2所示,它包含coreA和coreB两个核,每个核的处理频率可达750MHz。两个核都有各自独立的32KB L1指令存储器(16KB Cache/SRAM)和64KB L1数据存储器(32KB Cache/SDRAM),并可共享128KB L2存储器。两内核访问不同内存时,其速率有明显差异,其中访问L1存储器最快,L2次之,而访问片外内存和设备则最慢。

      由于访问存储器速率的差异。双核之间进行数据交换最好在L1段直接进行,而且需要使用IMDMA控制器。这个DMA控制器的主要功能是在双核之间的L1存储器之间进行数据交换。使用IMDMA控制器可以在访问速率比较慢的片外内存或者对L2进行数据处理操作时,提高数据处理的速率,进而提高编码效率。


2 H.264视频编码算法的优化与实现

      对编码器的优化主要是对P帧编码流程的优化和对ADSP-BF561双核处理系统的优化,合理的流程有利于各种模块的独立性和完整性,同时有利于以后只针对某个模块的优化或升级处理。而利用ADSP-BF561的双核协调处理优势可以进一步提高其速度。

2.1 P帧编码流程的优化

      由于H.264编码算法比较庞大,对程序细节上进行优化事实上不能带来明显的效率提高,所以应对程序流程本身进行调整。在H.264编码器JM86版本中,I帧、P帧的编码采用同一模块,这样就有大量帧内、帧间宏块的重复判断,故使编码速度受限。Micro_h264编码软件模型针对这一缺点进行了处理,将I帧、P帧的编码提取出来分别独立编码。但是遗憾的是,micro_h264编码软件模型对一帧图像的宏块进行编码是按照宏块在图像中的光栅扫描顺序一一进行的,没有考虑到宏块在一帧图像中的不同位置有着不同的特性,而且对这些宏块采用统一模式进行编码,也会产生很多判断条件,这不但不利于DSP的流水操作,也不利于模块的优化。本文针对这一个缺点对micro h264的P帧编码流程进行优化。

      根据宏块在一帧图像中位置的不同,可以对不同位置的宏块分别独立进行编码。同时,根据子块在宏块中的不同位置,也可以对其进行独立编码。

      一帧图像被分成多个宏块时,不同位置的宏块有不同的特性。因此,可以根据宏块在一帧图像中的不同位置来对宏块进行分类,以将具有相同编码特性的宏块归为一类,这样,可以将帧图像的宏块分成五类。图3所示是其宏块分类图。

      [page]

      通过对宏块进行分类,可对不同的宏块调用不同的函数来对其独立编码,从而减少很多不必要的判断,这样就不会打断DSP的流水操作,达到提高速度之目的,同时在进行优化时也更具针对性。

      本编码器在P帧编码时,只用了一帧参考帧,并且改进了micro_h264编码器软件模型所使用的对宏块编码模式逐一遍历的算法,而是采用宏块编码模式快速选择算法。P帧编码的流程图如图4所示。

 

     

      运行平台的不同,软件结构也应该根据各自的特点做些调整。较低复杂度的编码器可将多个不同类宏块独立出来单独处理,这样可以省去许多中间的重复判断,不仅能提高编码速度,同时程序结构也显得更为清晰,而且,由于各个模块的相对独立,也有利于程序的扩展。虽然这样在一定程度上增加了代码量,但却能有效地提高编码速度。

2.2 ADSP-BF561双核处理系统的优化

      为了保证编码器的稳定工作,本文把内核定位在600 MHz,如果能在600 MHz的基础上实现4CIF格式的实时编码,那么,提高内核处理频率就能支持更高质量的4CIF格式的视频编码处理。为了实现25帧图像的实时编码,每帧需要的时钟周期数为600 MHz/25=24MHz,即需要在24 MHz时钟周期数内编码一帧。大约相当于在6 MHz内进行一帧CIF格式的视频处理,显然,如果使用一个核是很难做到实时编码处理的。本文不同于大多数双核系统的一个核运行操作系统,而另一个核运行其它软件的工作方式,是将编码器放在两个核内同时进行处理。

      在ADSP-BF561开发板上实现这个编码算法时,其主要的难点是两个核之间如何通信以及协调工作。双核同时运行一个视频编码程序时,需要对数据进行共享和交换。虽然,使用片外内存或者L2共享存储器来进行宏块数据交换的实现方法比较简单,且不需要进行数据的拷贝,但是,大量访问低速率存储器的操作将极大地影响程序执行的速率,进而影响编码器的编码效率,所以,不能采用共享内存来进行宏块数据的交换。本文采用的是IMDMA在双核各自的L1数据段直接进行数据交换,而且在编码处理的同时进行内存数据的交换,从而避免了大量访问低速率的存储空间操作,减少了程序执行的时间。而由于消息交换数据量很小,可以使用共享存储器,因此,可以采用访问速率相对较快的L2存储器来进行存取。事实上,笔者已经经过优化编程在BF561开发板上实现了上述编码算法。其双核编码主流程如图5所示。

[page]

3 试验结果与数据分析

      经过优化,H.264的编码性能有了较大的提升,实现了在BF561芯片上对4CIF格式视频的实时编码处理。同时,笔者还在VisualDSP++5.0编译环境下分别对原编码器和双核编码器实现的编码结果进行了测试,其结果如表1所列。事实上,编码速度基本取决于图像画面的运动情况和颜色是否丰富。从上面的数据可以看出,对于不同序列,其编码速度也不同。Claire序列的编码速度之所以很快,是因为图像背景静止,只有肩部和头部有运动,所以编码数据量较表1对不同序列的优化结果(25f/s CIF格式)少,编码速度较高。另外,如果图像比较简单,其编码速度也会较高,从而节约编码时间。

      试验结果表明,采用本文的优化方法可以节约大量的H.264视频编码数据处理的时间,能较好地满足4CIF视频序列实时编码的要求。而对于很复杂的图像,也可以在一定的量化参数下实现4CIF的实时编码。


4 结束语

      本文重点研究了基于ADSP-BF561双核处理器的H.264视频编码算法的优化及其实现方法。同时针对ADSP-BF561双核处理器的体系结构,对编码的关键部分进行了算法流程的调整,并通过BF561双核之间的数据交换和协调工作,在双核上实现了4CIF格式视频数据的实时编码。实践证明,使用VisualDSP++5.0仿真软件,在ADSP-BF561开发板上实现25f/s的H.264 4CIF视频编码系统,可以满足人们对视频传输的需求。

 

关键字:H.264  标准  视频  编码  ADSP-BF561  双核处理器 引用地址:基于ADSP-BF5619处理的H.264视频编码器设计

上一篇:安防智能视频分析技术的应用与发展
下一篇:监控系统设备构成的分层次结构详析

推荐阅读最新更新时间:2024-03-31 00:04

三星携手KDDI首次演示5G网络 在高速行驶火车成功下载8K视频
电子网消息,三星电子12月1日对外宣布,已经携手日本电信巨擘 KDDI Corp. 成功在时速超过 100 公里的火车上,首度展示了 5G 网络,数据传输速度顺利达到 1.7 Gbps。 自2015年起,双方开始在 5G 网络携手合作。三星表示,这次的测试可为车内高速 Wi-Fi 网络奠定基础,其安全性也比以往高。通过车上安装的 5G 路由器,三星、KDDI 在火车上顺利下载了一部 8K 影片,而在车上拍摄的 4K 影片,也在展演中顺利上传。KDDI 在声明稿中表示,将跟三星持续为 5G 进行实测,达成 2020 年推出 5G 网络的目标。 瑞典电信设备制造商爱立信(Ericsson)预估,5G 有望在数年内加速普及,20
[半导体设计/制造]
易观公布Q3视频网站排名:优酷搜狐视频继续领跑
  2012年11月7日消息,近日,国内知名数据研究机构EnfoDesk易观智库发布了第三季度国内在线视频网站用户规模排行,数据显示,在2012年7月-9月份,优酷与搜狐视频均以月度用户覆盖超过2亿人规模牢牢占据行业第一和第二的位置,持续成为在线视频行业的领跑者。   报告认为,2012年二季度是网络视频行业事件多发一个季度,先后经历了伦敦奥运会、优酷土豆正式合并、以及《中国好声音》这样的诸多的热点内容,也使得网络视频行业又一次被媒体热捧。同时,依靠众多优质内容的推动,使得网络视频月度用户覆盖(即UV)提升到新的高度。   从国内主要的五家视频网站来看,优酷继续保持着行业领先的位置;搜狐视频与腾讯视频借助奥运之势得到了有效
[家用电子]
英特尔、Arm、台积电、日月光等十大厂成立UCIe联盟, 共同打造Chiplet互连标准
综合外媒报道,英特尔、AMD、Arm、高通、微软、谷歌、Meta(元界)、台积电、日月光、三星等十家行业巨头昨日正式成立通用小芯片互联(Universal Chiplet Interconnect Express,UCIe)联盟,旨在推广UCIe 技术标准,构建完善生态,使之成为异构封装小芯片(Chiplet)未来片上互联标准。 图源:UCIe联盟官网 据悉,UCIe初始版本是在开放高级接口总线 (AIB) 的基础上由英特尔开发,并将其作为开放规范捐赠给UCIe联盟。 UCIe 1.0规范涵盖芯片到芯片I/O实体层、芯片到芯片协定和软件堆叠,并利用了成熟的PCI Express(PCIe)和Compute Express Li
[手机便携]
英特尔、Arm、台积电、日月光等十大厂成立UCIe联盟, 共同打造Chiplet互连<font color='red'>标准</font>
中国银联正式发布银联二维码支付标准,支付安全是底线
扫一扫二维码支付已经成为了我们生活中最常用的支付方式,但是其地位和标准并没有获得官方认可。 今日,中国银联正式发布银联二维码支付标准,主要包括《中国银联二维码支付安全规范》和《中国银联二维码支付应用规范》两个规范。 《安全规范》从安全方面对二维码受理设备、手机客户端、后台系统等提出了具体安全要求,确保支付过程中账户信息及支付资金的安全性,对下一步银联及银行设计和开发二维码产品提供了安全相关的标准依据。 《应用规范》定义了二维码支付的应用场景和基于数字签名的安全机制,提出了适用于金融支付的二维码应用数据元,对下一步银联及银行设计和开发二维码产品中的二维码编码方案提供了可参照的标准依据。 具体信息见以下,中国银联有关负责人就银联二维码
[手机便携]
基于SoC成像芯片MT9M111和CY7C68013的视频
CMOS图像采集系统普遍存在图像质量问题,如果没有对图像进行专门的处理,则图像质量难以保障。近些年来,随着SoC技术的快速发展,在图像采集和处理领域,出现了SoC影像传感器,它集成CMOS传感器和图形处理器功能,可以得到令人非常满意的图像质量。本文设计的视频采集系统采用了SoC成像芯片MT9M111和USB2.0接口芯片CY7C68013。   系统结构   本系统的原理框图如图1所示。当图像传感器开始工作后,先将采集到的数据通过FPGA控制逻辑存储到SRAM1中,一帧图像的采集/存储过程结束后,SRAM1进入写结束状态。此时切换SRAM,SRAM2继续存储采集到的数据,同时,SRAM1处于可读状态,由FPGA里的控制逻辑控制,将
[模拟电子]
基于SoC成像芯片MT9M111和CY7C68013的<font color='red'>视频</font>采
Marvell推出业界首批音视频桥接SoC方案
新的Link Street系列器件兼具高性能和低功耗,可满足当今互连生活方式的要求 2012年5月11日北京讯 —— 全球整合式芯片解决方案的领导厂商美满电子科技(Marvell)今日宣布推出业界首批全面支持音视频桥接(AVB)的单芯片系统(SoC)解决方案。Marvell® 88E7221、88E7251和88E7251F是Marvell公司LinkStreet®系列处理器首批交钥匙AVB SoC, 集成了交换、中央处理单元(CPU)和终端音频节点技术,可缩短原始设计制造商(ODM)的产品上市时间,同时也是业界首批完全符合AVB标准要求的解决方案。此外,这些新推出的芯片兼有高性能和低功耗特色,是提供经济实惠的云服务以及促进云网
[模拟电子]
电动汽车充换电系统标准(IEC TS 62840-1)发布
7月12日,由南瑞集团牵头编制的IEC国际标准《电动汽车电池更换系统第1部分通用与导则》(IEC TS 62840-1)正式发布,提升了我国在电动汽车充换电领域的国际影响力和话语权,对于中国装备、标准“走出去”具有示范意义。 据介绍,电动汽车充电和电池更换技术是电动汽车能源补给的两种不同的方式,同时也是制约电动汽车发展的瓶颈。电池更换技术在公交、出租车等公共交通领域有着良好的应用场景,从技术发展趋势看,电池更换技术快速、安全、可靠的特点具备拓展应用领域的竞争力。从装备制造业发展看,本领域标准先行是开拓市场“走出去”的重要举措,通过主导更换电池标准的制定,规范电池更换系统、电池更换站、支撑系统、电池包等重要定义,标准化电动汽
[汽车电子]
PCI总线I/O时序波形观测及分析
1 引 言 PCI总线(Peripheral Component Interconnect)即外设部件互连,是一种新型的、同步的、高带宽的、独立于处理器的总线。从1992年创立规范到如今,PCI总线已成为了事实上计算机的标准总线。其所以能在各类总线中脱颖而出,是因为其具有传输速度快、支持无限猝发读写方式、支持并行工作方式、独立于处理器、提供4种规格、数据线和地址线采用了多路复用结构、支持即插即用功能等特点。本文重点介绍了PCI总线的写周期的时序波形的测量技术及分析方法,给出了时序波形的分析结果。 2 PCI总线的功能 2.1 连接到PCI总线上的设备 连接到PCI总线上的设备分为两类: (1)主控设备(master):P
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新安防电子文章
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 视频监控 智能卡 防盗报警 智能管理 处理器 传感器 其他技术 综合资讯 安防论坛

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved