comparison dsputil.c @ 10940:563cb9b1a9b7 libavcodec

skip outer pixels if possible in h264_loop_filter_luma_c(). overall 3.7% faster loop filtering (C version only)
author michael
date Tue, 19 Jan 2010 22:46:58 +0000
parents a8620b001ed3
children 28edcc8c54c0
comparison
equal deleted inserted replaced
10939:5660eac25fb4 10940:563cb9b1a9b7
2997 2997
2998 int tc = tc0[i]; 2998 int tc = tc0[i];
2999 int i_delta; 2999 int i_delta;
3000 3000
3001 if( FFABS( p2 - p0 ) < beta ) { 3001 if( FFABS( p2 - p0 ) < beta ) {
3002 if(tc0[i])
3002 pix[-2*xstride] = p1 + av_clip( (( p2 + ( ( p0 + q0 + 1 ) >> 1 ) ) >> 1) - p1, -tc0[i], tc0[i] ); 3003 pix[-2*xstride] = p1 + av_clip( (( p2 + ( ( p0 + q0 + 1 ) >> 1 ) ) >> 1) - p1, -tc0[i], tc0[i] );
3003 tc++; 3004 tc++;
3004 } 3005 }
3005 if( FFABS( q2 - q0 ) < beta ) { 3006 if( FFABS( q2 - q0 ) < beta ) {
3007 if(tc0[i])
3006 pix[ xstride] = q1 + av_clip( (( q2 + ( ( p0 + q0 + 1 ) >> 1 ) ) >> 1) - q1, -tc0[i], tc0[i] ); 3008 pix[ xstride] = q1 + av_clip( (( q2 + ( ( p0 + q0 + 1 ) >> 1 ) ) >> 1) - q1, -tc0[i], tc0[i] );
3007 tc++; 3009 tc++;
3008 } 3010 }
3009 3011
3010 i_delta = av_clip( (((q0 - p0 ) << 2) + (p1 - q1) + 4) >> 3, -tc, tc ); 3012 i_delta = av_clip( (((q0 - p0 ) << 2) + (p1 - q1) + 4) >> 3, -tc, tc );