hvirtual/libmpeg3/audio/dct.c File Reference

#include "mpeg3private.h"
#include "mpeg3protos.h"
#include "tables.h"
#include <math.h>

Include dependency graph for dct.c:

Go to the source code of this file.

Defines

#define MACRO(v)
#define DCT12_PART1
#define DCT12_PART2

Functions

int mpeg3audio_dct64_1 (float *out0, float *out1, float *b1, float *b2, float *samples)
int mpeg3audio_dct64 (float *a, float *b, float *c)
int mpeg3audio_dct36 (float *inbuf, float *o1, float *o2, float *wintab, float *tsbuf)
int mpeg3audio_dct12 (float *in, float *rawout1, float *rawout2, register float *wi, register float *ts)


Define Documentation

#define DCT12_PART1

Value:

in5 = in[5*3]; \
    in5 += (in4 = in[4*3]); \
    in4 += (in3 = in[3*3]); \
    in3 += (in2 = in[2*3]); \
    in2 += (in1 = in[1*3]); \
    in1 += (in0 = in[0*3]); \
                            \
    in5 += in3; in3 += in1; \
                            \
    in2 *= mpeg3_COS6_1; \
    in3 *= mpeg3_COS6_1; \

Referenced by mpeg3audio_dct12().

#define DCT12_PART2

Value:

in0 += in4 * mpeg3_COS6_2; \
                         \
        in4 = in0 + in2;     \
        in0 -= in2;          \
                         \
        in1 += in5 * mpeg3_COS6_2; \
                         \
        in5 = (in1 + in3) * mpeg3_tfcos12[0]; \
        in1 = (in1 - in3) * mpeg3_tfcos12[2]; \
                        \
        in3 = in4 + in5;    \
        in4 -= in5;         \
                        \
        in2 = in0 + in1;    \
        in0 -= in1;

Referenced by mpeg3audio_dct12().

#define MACRO (  ) 

Value:

{ \
        float tmpval; \
        tmpval = tmp[(v)] + tmp[17-(v)]; \
        out2[9+(v)] = tmpval * w[27+(v)]; \
        out2[8-(v)] = tmpval * w[26-(v)]; \
        tmpval = tmp[(v)] - tmp[17-(v)]; \
        ts[SBLIMIT*(8-(v))] = out1[8-(v)] + tmpval * w[8-(v)]; \
        ts[SBLIMIT*(9+(v))] = out1[9+(v)] + tmpval * w[9+(v)]; \
        }

Referenced by mpeg3audio_dct36().


Function Documentation

int mpeg3audio_dct12 ( float *  in,
float *  rawout1,
float *  rawout2,
register float *  wi,
register float *  ts 
)

Definition at line 512 of file dct.c.

References DCT12_PART1, DCT12_PART2, mpeg3_tfcos12, and SBLIMIT.

Referenced by hybrid().

int mpeg3audio_dct36 ( float *  inbuf,
float *  o1,
float *  o2,
float *  wintab,
float *  tsbuf 
)

Definition at line 360 of file dct.c.

References MACRO, mpeg3_cos18, mpeg3_COS6_1, mpeg3_COS6_2, mpeg3_cos9, mpeg3_tfcos36, t0, t1, t2, t3, t4, t5, t6, and t7.

Referenced by hybrid().

int mpeg3audio_dct64 ( float *  a,
float *  b,
float *  c 
)

Definition at line 322 of file dct.c.

References mpeg3audio_dct64_1().

Referenced by mpeg3audio_synth_stereo().

Here is the call graph for this function:

int mpeg3audio_dct64_1 ( float *  out0,
float *  out1,
float *  b1,
float *  b2,
float *  samples 
)

Definition at line 35 of file dct.c.

References costab, and mpeg3_pnts.

Referenced by mpeg3audio_dct64().


Generated on Mon Apr 28 13:58:33 2008 for Cinelerra by  doxygen 1.5.5