52 #define FFT_FIXED_32 1
70 50529027, 44278013, 39403370, 32292987, 27356480, 23729101, 20951060, 18755316
81 int temp, temp1, temp2, temp3, temp4, temp5, temp6, temp7;
83 mul = (dynrng & 0x1f) + 0x20;
84 shift = 4 - ((dynrng << 24) >> 29);
85 round = 1 << (shift-1);
86 for (i=0; i<
len; i+=8) {
89 temp1 = src[i+1] * mul;
91 temp2 = src[i+2] * mul;
93 temp1 = temp1 +
round;
94 dst[i] = temp >>
shift;
95 temp3 = src[i+3] * mul;
96 temp2 = temp2 +
round;
98 dst[i+1] = temp1 >>
shift;
99 temp4 = src[i + 4] * mul;
100 temp3 = temp3 +
round;
101 dst[i+2] = temp2 >>
shift;
103 temp5 = src[i+5] * mul;
104 temp4 = temp4 +
round;
105 dst[i+3] = temp3 >>
shift;
106 temp6 = src[i+6] * mul;
108 dst[i+4] = temp4 >>
shift;
109 temp5 = temp5 +
round;
110 temp7 = src[i+7] * mul;
111 temp6 = temp6 +
round;
113 dst[i+5] = temp5 >>
shift;
114 temp7 = temp7 +
round;
115 dst[i+6] = temp6 >>
shift;
116 dst[i+7] = temp7 >>
shift;
126 int out_ch,
int in_ch,
int len)
131 for (i = 0; i <
len; i++) {
133 for (j = 0; j < in_ch; j++) {
134 v0 += samples[j][i] * matrix[j][0];
135 v1 += samples[j][i] * matrix[j][1];
137 samples[0][i] = (v0+2048)>>12;
138 samples[1][i] = (v1+2048)>>12;
140 }
else if (out_ch == 1) {
141 for (i = 0; i <
len; i++) {
143 for (j = 0; j < in_ch; j++)
144 v0 += samples[j][i] * matrix[j][0];
145 samples[0][i] = (v0+2048)>>12;