微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 消费类电子 > 基于Blackfin533的H.264编码

基于Blackfin533的H.264编码

时间:08-18 来源:电子技术应用 点击:

Shanlin 34.00 39.95 41.30 1035
tempete 30.47 35.81 37.60 1059
mobile 30.58 34.48 34.24 1587

  去块效应滤波在编码中占有较大的比重。主要包括:计算滤波强度和行列滤波两部分,需要针对这两个子模块进行优化。去块效应滤波中有较多的判断语句,判断语句会打断DSP的流水线,使DSP不能充分发挥其性能,优化时应尽可能将判断转移到循环外面去,以提高执行效率。同时去块效应滤波需要频繁地访问待滤波数据,减少对这些数据的访问次数也能较大地提高去块效应滤波的速度。
  SAD()的函数原型及其汇编代码[2]:
  for(i=0;i<16*16;i++)
   result +=abs( *pSrc++ - *pRef++);
   LSETUP(row_start,row_end) LC0=P1;  //利用Blackfin的硬件循环实现SAD的循环
   row_start:
   R3 = [I1++]; //读取数据
   SAA(R1:0,R3:2) || R1= [I0++] || R2= [I1++]; //计算R1:0和R3:2的SAD
   SAA(R1:0,R3:2)(R) || R0= [I0++] || R3= [I1++]; //执行SAA的同时,读取数据
   SAA(R1:0,R3:2) || R1= [I0++] || R2= [I1++];
   row_end:SAA(R1:0,R3:2)(R) || R0=[I0++] || R2= [I1++];

3 实验结果


  笔者使用600MHz时钟的Blackfin533,对于低、中运动复杂度的图像序列,能够实现25帧/秒的实时编码;对于高运动复杂度的图像序列,能实现20帧/秒左右的准实时编码。其各模块所占时间比例见表2。
  编码器的性能指标如下:1个参考帧;帧间模式采用16×16、16×8、8×16、8×8模式;帧内模式对16×16采用4种预测模式,对于4×4采用9种预测模式;1/4像素的运动估计;熵编码采用CAVLC编码方式。
  表3为不同图像序列压缩效果的比较。每种序列压缩100帧图像,采用IPPPP....的编码模式。综上所述,在Blkfin533平台上实现了H.264的CIF图像的准实时编码。该系统具有码流低、延时小、图像质量高等优点。

参考文献

1 Draft ITU-T recommendation and final draft international stan- dard of joint
video specification (ITU-T Rec. H.264/ISO/IEC 14 496-10 AVC. in Joint Video Team (JVT)
of ISO/IEC MPEG and ITU-T VCEG, JVTG050, 2003
2 AD Inc. Blackfin processor instruction set reference.Rev 3.0,June 2004:417~421,487~492

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top