Mercurial > libavcodec.hg
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 ); |