Doxygen Source Code Documentation
Main Page Alphabetical List Data Structures File List Data Fields Globals Search
mfwddct.c File Reference
#include "all.h"
#include "dct.h"
#include "mtypes.h"
#include "opts.h"
Go to the source code of this file.
Define Documentation
#define COS_1_16 FIX(0.980785280)
|
|
#define COS_1_8 FIX(0.923879533)
|
|
#define COS_3_16 FIX(0.831469612)
|
|
#define COS_5_16 SIN_3_16
|
|
#define COS_7_16 SIN_1_16
|
|
#define DCT_SCALE (ONE << LG2_DCT_SCALE)
|
|
#define EIGHT_BIT_SAMPLES
|
|
#define FIX |
( |
x |
|
) |
((int32) ((x) * DCT_SCALE + 0.5))
|
|
#define FIXO |
( |
x |
|
) |
((int32) ((x) * DCT_SCALE / OVERSCALE + 0.5))
|
|
#define OCOS_1_16 FIXO(0.980785280)
|
|
#define OCOS_1_4 OSIN_1_4
|
|
#define OCOS_1_8 FIXO(0.923879533)
|
|
#define OCOS_3_16 FIXO(0.831469612)
|
|
#define OCOS_3_8 OSIN_1_8
|
|
#define OCOS_5_16 OSIN_3_16
|
|
#define OCOS_7_16 OSIN_1_16
|
|
#define OSIN_1_16 FIXO(0.195090322)
|
|
#define OSIN_1_4 FIXO(0.707106781)
|
|
#define OSIN_1_8 FIXO(0.382683432)
|
|
#define OSIN_3_16 FIXO(0.555570233)
|
|
#define OSIN_3_8 OCOS_1_8
|
|
#define OSIN_5_16 OCOS_3_16
|
|
#define OSIN_7_16 OCOS_1_16
|
|
#define OVERSCALE (ONE << LG2_OVERSCALE)
|
|
#define OVERSHIFT |
( |
x |
|
) |
((x) <<= LG2_OVERSCALE)
|
|
#define PI 3.14159265358979323846
|
|
#define SIN_1_16 FIX(0.195090322)
|
|
#define SIN_1_4 FIX(0.707106781)
|
|
#define SIN_1_8 FIX(0.382683432)
|
|
#define SIN_3_16 FIX(0.555570233)
|
|
#define SIN_5_16 COS_3_16
|
|
#define SIN_7_16 COS_1_16
|
|
#define UNFIX |
( |
x |
|
) |
RIGHT_SHIFT((x) + (ONE << (LG2_DCT_SCALE-1)), LG2_DCT_SCALE)
|
|
#define UNFIXH |
( |
x |
|
) |
RIGHT_SHIFT((x) + (ONE << LG2_DCT_SCALE), LG2_DCT_SCALE+1)
|
|
Function Documentation
void init_fdct _ANSI_ARGS_ |
( |
(void) |
|
) |
|
|
|
Definition at line 329 of file mfwddct.c.
References i.
Referenced by Tune_Init().
00330 {
00331 int i, j;
00332 double s;
00333
00334 for (i=0; i<8; i++)
00335 {
00336 s = (i==0) ? sqrt(0.125) : 0.5;
00337
00338 for (j=0; j<8; j++)
00339 trans_coef[i][j] = s * cos((PI/8.0)*i*(j+0.5));
00340 }
00341 }
|
Variable Documentation