shithub: opus

Download patch

ref: a45724ef7f46f25ebad62b3e8a0b218f9da89d75
parent: 5ccc1240362741f7f1816a3c6ef3a46173d530df
author: Gregory Maxwell <[email protected]>
date: Fri Jul 29 07:53:45 EDT 2011

Remove a _overlap_mem only used for -DRESYNTH builds in celt.c.

--- a/libcelt/celt.c
+++ b/libcelt/celt.c
@@ -921,7 +921,6 @@
    VARDECL(int, fine_priority);
    VARDECL(int, tf_res);
    VARDECL(unsigned char, collapse_masks);
-   celt_sig *_overlap_mem;
    celt_sig *prefilter_mem;
    celt_word16 *oldBandE, *oldLogE, *oldLogE2;
    int shortBlocks=0;
@@ -968,8 +967,6 @@
    N = M*st->mode->shortMdctSize;
 
    prefilter_mem = st->in_mem+CC*(st->overlap);
-   _overlap_mem = prefilter_mem+CC*COMBFILTER_MAXPERIOD;
-   /*_overlap_mem = st->in_mem+C*(st->overlap);*/
    oldBandE = (celt_word16*)(st->in_mem+CC*(2*st->overlap+COMBFILTER_MAXPERIOD));
    oldLogE = oldBandE + CC*st->mode->nbEBands;
    oldLogE2 = oldLogE + CC*st->mode->nbEBands;
@@ -1605,9 +1602,9 @@
       if (CC==2)
          out_mem[1] = st->syn_mem[1]+MAX_PERIOD;
 
-      c=0; do
-         overlap_mem[c] = _overlap_mem + c*st->overlap;
-      while (++c<CC);
+      overlap_mem[0] = prefilter_mem+CC*COMBFILTER_MAXPERIOD;
+      if (CC==2)
+         overlap_mem[1] = overlap_mem[0] + st->overlap;
 
       compute_inv_mdcts(st->mode, shortBlocks, freq, out_mem, overlap_mem, CC, LM);