[SCM] libav/experimental: Alternative and faster (on gcc x86) plane rotation.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:15:46 UTC 2013


The following commit has been merged in the experimental branch:
commit c3a3d34427498fe32eb81dd80319e401725a85e8
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Tue Feb 26 15:52:37 2008 +0000

    Alternative and faster (on gcc x86) plane rotation.
    
    Originally committed as revision 12237 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/faandct.c b/libavcodec/faandct.c
index 3596975..014c2d7 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;

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list