FastLED 3.9.15
Loading...
Searching...
No Matches

◆ imdct_step3_inner_r_loop()

static void fl::third_party::vorbis::imdct_step3_inner_r_loop ( int32_t lim,
float * e,
int32_t d0,
int32_t k_off,
float * A,
int32_t k1 )
static

Definition at line 2181 of file stb_vorbis.cpp.hpp.

2182{
2183 int32_t i;
2184 float k00_20, k01_21;
2185
2186 float *e0 = e + d0;
2187 float *e2 = e0 + k_off;
2188
2189 for (i=lim >> 2; i > 0; --i) {
2190 k00_20 = e0[-0] - e2[-0];
2191 k01_21 = e0[-1] - e2[-1];
2192 e0[-0] += e2[-0];//e0[-0] = e0[-0] + e2[-0];
2193 e0[-1] += e2[-1];//e0[-1] = e0[-1] + e2[-1];
2194 e2[-0] = (k00_20)*A[0] - (k01_21) * A[1];
2195 e2[-1] = (k01_21)*A[0] + (k00_20) * A[1];
2196
2197 A += k1;
2198
2199 k00_20 = e0[-2] - e2[-2];
2200 k01_21 = e0[-3] - e2[-3];
2201 e0[-2] += e2[-2];//e0[-2] = e0[-2] + e2[-2];
2202 e0[-3] += e2[-3];//e0[-3] = e0[-3] + e2[-3];
2203 e2[-2] = (k00_20)*A[0] - (k01_21) * A[1];
2204 e2[-3] = (k01_21)*A[0] + (k00_20) * A[1];
2205
2206 A += k1;
2207
2208 k00_20 = e0[-4] - e2[-4];
2209 k01_21 = e0[-5] - e2[-5];
2210 e0[-4] += e2[-4];//e0[-4] = e0[-4] + e2[-4];
2211 e0[-5] += e2[-5];//e0[-5] = e0[-5] + e2[-5];
2212 e2[-4] = (k00_20)*A[0] - (k01_21) * A[1];
2213 e2[-5] = (k01_21)*A[0] + (k00_20) * A[1];
2214
2215 A += k1;
2216
2217 k00_20 = e0[-6] - e2[-6];
2218 k01_21 = e0[-7] - e2[-7];
2219 e0[-6] += e2[-6];//e0[-6] = e0[-6] + e2[-6];
2220 e0[-7] += e2[-7];//e0[-7] = e0[-7] + e2[-7];
2221 e2[-6] = (k00_20)*A[0] - (k01_21) * A[1];
2222 e2[-7] = (k01_21)*A[0] + (k00_20) * A[1];
2223
2224 e0 -= 8;
2225 e2 -= 8;
2226
2227 A += k1;
2228 }
2229}
fl::i32 int32_t
Definition coder.h:220

References FL_NOEXCEPT.

Referenced by inverse_mdct().

+ Here is the caller graph for this function: