]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/mdct.c
noise bitstream filter
[ffmpeg] / libavcodec / mdct.c
index baab5d3152a1402c2f4456c3c7d522e233fdfdcc..5c3e7b3b19e96caa39acb5732a495f3d88dce0e7 100644 (file)
  *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 #include "dsputil.h"
 
-/*
- * init MDCT or IMDCT computation
+/**
+ * @file mdct.c
+ * MDCT/IMDCT transforms.
+ */
+
+/**
+ * init MDCT or IMDCT computation.
  */
-int mdct_init(MDCTContext *s, int nbits, int inverse)
+int ff_mdct_init(MDCTContext *s, int nbits, int inverse)
 {
     int n, n4, i;
     float alpha;
@@ -31,10 +36,10 @@ int mdct_init(MDCTContext *s, int nbits, int inverse)
     s->nbits = nbits;
     s->n = n;
     n4 = n >> 2;
-    s->tcos = malloc(n4 * sizeof(FFTSample));
+    s->tcos = av_malloc(n4 * sizeof(FFTSample));
     if (!s->tcos)
         goto fail;
-    s->tsin = malloc(n4 * sizeof(FFTSample));
+    s->tsin = av_malloc(n4 * sizeof(FFTSample));
     if (!s->tsin)
         goto fail;
 
@@ -43,7 +48,7 @@ int mdct_init(MDCTContext *s, int nbits, int inverse)
         s->tcos[i] = -cos(alpha);
         s->tsin[i] = -sin(alpha);
     }
-    if (fft_init(&s->fft, s->nbits - 2, inverse) < 0)
+    if (ff_fft_init(&s->fft, s->nbits - 2, inverse) < 0)
         goto fail;
     return 0;
  fail:
@@ -69,8 +74,8 @@ int mdct_init(MDCTContext *s, int nbits, int inverse)
  * @param input N/2 samples
  * @param tmp N/2 samples
  */
-void imdct_calc(MDCTContext *s, FFTSample *output, 
-                const FFTSample *input, FFTSample *tmp)
+void ff_imdct_calc(MDCTContext *s, FFTSample *output,
+                   const FFTSample *input, FFTSample *tmp)
 {
     int k, n8, n4, n2, n, j;
     const uint16_t *revtab = s->fft.revtab;
@@ -93,7 +98,7 @@ void imdct_calc(MDCTContext *s, FFTSample *output,
         in1 += 2;
         in2 -= 2;
     }
-    fft_calc(&s->fft, z);
+    ff_fft_calc(&s->fft, z);
 
     /* post rotation + reordering */
     /* XXX: optimize */
@@ -121,8 +126,8 @@ void imdct_calc(MDCTContext *s, FFTSample *output,
  * @param out N/2 samples
  * @param tmp temporary storage of N/2 samples
  */
-void mdct_calc(MDCTContext *s, FFTSample *out, 
-               const FFTSample *input, FFTSample *tmp)
+void ff_mdct_calc(MDCTContext *s, FFTSample *out,
+                  const FFTSample *input, FFTSample *tmp)
 {
     int i, j, n, n8, n4, n2, n3;
     FFTSample re, im, re1, im1;
@@ -150,8 +155,8 @@ void mdct_calc(MDCTContext *s, FFTSample *out,
         CMUL(x[j].re, x[j].im, re, im, -tcos[n8 + i], tsin[n8 + i]);
     }
 
-    fft_calc(&s->fft, x);
-  
+    ff_fft_calc(&s->fft, x);
+
     /* post rotation */
     for(i=0;i<n4;i++) {
         re = x[i].re;
@@ -162,9 +167,9 @@ void mdct_calc(MDCTContext *s, FFTSample *out,
     }
 }
 
-void mdct_end(MDCTContext *s)
+void ff_mdct_end(MDCTContext *s)
 {
     av_freep(&s->tcos);
     av_freep(&s->tsin);
-    fft_end(&s->fft);
+    ff_fft_end(&s->fft);
 }