[FFmpeg-soc] RV40 Deblock filter help needed

Kostya kostya.shishkov at gmail.com
Fri Aug 17 19:52:05 CEST 2007


Does this scheme reminds anybody of some other filter?
For me it definitely looks like _not_ H.264.

For all rows/cols:
 A[i] = SRC[i][-2] - SRC[i][-1]
 B[i] = SRC[i][ 1] - SRC[i][ 0]
 C[i] = SRC[i][-2] - SRC[i][-3]
 D[i] = SRC[i][ 1] - SRC[i][ 2]

 AA = ABS(A[0]+A[1]+A[2]+A[3]); 
 AB = ABS(B[0]+B[1]+B[2]+B[3]);
 AC = ABS(C[0]+C[1]+C[2]+C[3]);
 AD = ABS(D[0]+D[1]+D[2]+D[3]);
 if(AA>= Thr1 && AB>= Thr1)
    return;
 f1 = AA < Thr1 && AC < Thr1;
 f2 = AB < Thr1 && AD < Thr1;
 if(f1 && f2){
  use filters like 25 26 26 26 25 and 25 26 51 26, 4 pixels wide
 }else if(something){
  1-2 pixels wide filtering, 
   src[0] = clip(src[0] + (src[-2] -4*src[-1] +4*src[0] - src[1] +4)>>3 + 128);
   if(D[i]<Thr2) src[1]=clip(src[1] - clip_bounds((D[i]+B[i]+ X)>>1, -Lim1, Lim1) +128); 
 }else{//clear flags, almost the same as previous branch
  1-2 pixels wide filtering
   src[0] = clip(src[0] - (src[-1] - src[0] + 1)>>1 + 128);
   if(D[i] < Thr2 && some_flag) src[1] = clip(src[1] - clip_bounds((D[i] + B[i] + X) >> 1,-Lim1>>1,Lim1>>1) + 128);
 }



More information about the FFmpeg-soc mailing list