diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2008-02-26 15:52:37 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2008-02-26 15:52:37 +0000 |
commit | c3a3d34427498fe32eb81dd80319e401725a85e8 (patch) | |
tree | b9bd594cd635a9ad118b1d72e6539a746152f3d6 /libavcodec/faandct.c | |
parent | 8af4d0fc8db6451e0c9200b71ef284e377c17683 (diff) | |
download | ffmpeg-c3a3d34427498fe32eb81dd80319e401725a85e8.tar.gz |
Alternative and faster (on gcc x86) plane rotation.
Originally committed as revision 12237 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/faandct.c')
-rw-r--r-- | libavcodec/faandct.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/faandct.c b/libavcodec/faandct.c index 35969754db..014c2d7514 100644 --- a/libavcodec/faandct.c +++ b/libavcodec/faandct.c @@ -107,9 +107,14 @@ static av_always_inline void row_fdct(FLOAT temp[64], DCTELEM * data) tmp5 += tmp6; tmp6 += tmp7; +#if 0 z5= (tmp4 - tmp6) * A5; z2= tmp4*A2 + z5; z4= tmp6*A4 + z5; +#else + z2= tmp4*(A2+A5) - tmp6*A5; + z4= tmp6*(A4-A5) + tmp4*A5; +#endif tmp5*=A1; z11= tmp7 + tmp5; @@ -161,9 +166,14 @@ void ff_faandct(DCTELEM * data) tmp5 += tmp6; tmp6 += tmp7; +#if 0 z5= (tmp4 - tmp6) * A5; z2= tmp4*A2 + z5; z4= tmp6*A4 + z5; +#else + z2= tmp4*(A2+A5) - tmp6*A5; + z4= tmp6*(A4-A5) + tmp4*A5; +#endif tmp5*=A1; z11= tmp7 + tmp5; |