Lines Matching defs:hMdct

99 void mdct_init( H_MDCT hMdct,
103 hMdct->overlap.freq = overlap;
105 hMdct->prev_fr = 0;
106 hMdct->prev_nr = 0;
107 hMdct->prev_tl = 0;
108 hMdct->ov_size = overlapBufferSize;
153 H_MDCT hMdct,
161 buffered_samples = hMdct->ov_offset;
166 FDKmemcpy(output, hMdct->overlap.time, buffered_samples*sizeof(FIXP_DBL));
167 hMdct->ov_offset = 0;
174 H_MDCT hMdct,
182 nt = fMin(hMdct->ov_offset, nrSamples);
184 nf = fMin(hMdct->prev_nr, nrSamples);
186 FDKmemcpy(pTimeData, hMdct->overlap.time, nt*sizeof(FIXP_DBL));
189 pOvl = hMdct->overlap.freq + hMdct->ov_size - 1;
199 void imdct_adapt_parameters(H_MDCT hMdct, int *pfl, int *pnl, int tl, const FIXP_WTP *wls, int noOutSamples)
203 if (hMdct->prev_tl == 0) {
204 hMdct->prev_wrs = wls;
205 hMdct->prev_fr = fl;
206 hMdct->prev_nr = (noOutSamples-fl)>>1;
207 hMdct->prev_tl = noOutSamples;
208 hMdct->ov_offset = 0;
212 window_diff = (hMdct->prev_fr - fl)>>1;
215 if (hMdct->prev_nr + window_diff > 0) {
225 if (fl < hMdct->prev_fr) {
236 hMdct->prev_nr += window_diff;
237 hMdct->prev_fr = fl;
238 hMdct->prev_wrs = wls;
241 fl = hMdct->prev_fr;
249 H_MDCT hMdct,
276 if (hMdct->prev_fr != fl) {
277 imdct_adapt_parameters(hMdct, &fl, &nl, tl, wls, noOutSamples);
280 pOvl = hMdct->overlap.freq + hMdct->ov_size - 1;
284 for (i=0; i<hMdct->ov_offset; i++) {
285 *pOut0 = hMdct->overlap.time[i];
288 nrSamples = hMdct->ov_offset;
289 hMdct->ov_offset = 0;
300 pWindow = hMdct->prev_wrs;
318 pOut0 = hMdct->overlap.time + hMdct->ov_offset;
319 hMdct->ov_offset += hMdct->prev_nr + fl/2;
322 nrSamples += hMdct->prev_nr + fl/2;
326 for (i=0; i<hMdct->prev_nr; i++) {
334 pOut1 = hMdct->overlap.time + hMdct->ov_offset + fl/2 - 1;
335 hMdct->ov_offset += fl/2 + nl;
368 hMdct->prev_nr = nr;
369 hMdct->prev_fr = fr;
370 hMdct->prev_tl = tl;
371 hMdct->prev_wrs = wrs;
376 pOvl = hMdct->overlap.freq + hMdct->ov_size - tl/2;
377 FDK_ASSERT(pOvl >= hMdct->overlap.time + hMdct->ov_offset);
378 FDK_ASSERT(tl/2 <= hMdct->ov_size);