- } else {
- /* short blocks */
- float *prev_buf;
- start_pos = 0;
- prev_buf = &su->spectrum[1][ref_pos+band_samples-16];
- for (; num_blocks!=0 ; num_blocks--) {
- at1_imdct(q, &q->spec[pos], &su->spectrum[0][ref_pos+start_pos], 5, band_num);
-
- /* overlap and window between short blocks */
- q->dsp.vector_fmul_window(&q->bands[band_num][start_pos], prev_buf,
- &su->spectrum[0][ref_pos+start_pos], short_window, 0, 16);
-
- prev_buf = &su->spectrum[0][ref_pos+start_pos+16];
- start_pos += 32; // use hardcoded block_size
- pos += 32;
- }