28 #define B0 1.0000000000000000000000
29 #define B1 1.3870398453221474618216 // cos(pi*1/16)sqrt(2)
30 #define B2 1.3065629648763765278566 // cos(pi*2/16)sqrt(2)
31 #define B3 1.1758756024193587169745 // cos(pi*3/16)sqrt(2)
32 #define B4 1.0000000000000000000000 // cos(pi*4/16)sqrt(2)
33 #define B5 0.7856949583871021812779 // cos(pi*5/16)sqrt(2)
34 #define B6 0.5411961001461969843997 // cos(pi*6/16)sqrt(2)
35 #define B7 0.2758993792829430123360 // cos(pi*7/16)sqrt(2)
37 #define A4 0.70710678118654752438 // cos(pi*4/16)
38 #define A2 0.92387953251128675613 // cos(pi*2/16)
55 FLOAT s04, d04, s17, d17, s26, d26, s53, d53;
56 FLOAT os07, os16, os25, os34;
57 FLOAT od07, od16, od25, od34;
59 for(
i=0;
i<y*8;
i+=y){
66 od25= (s17 - s53)*(2*
A4);
68 od34= d17*(2*(
B6-
A2)) - d53*(2*
A2);
69 od16= d53*(2*(
A2-
B2)) + d17*(2*
A2);
89 temp[0*x +
i]= os07 + od07;
90 temp[7*x +
i]= os07 - od07;
91 temp[1*x +
i]= os16 + od16;
92 temp[6*x +
i]= os16 - od16;
93 temp[2*x +
i]= os25 + od25;
94 temp[5*x +
i]= os25 - od25;
95 temp[3*x +
i]= os34 - od34;
96 temp[4*x +
i]= os34 + od34;