#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "dsputil.h"
#include "mathops.h"
#include "simple_idct.h"
#include "simple_idct_template.c"
Go to the source code of this file.
Defines | |
#define | BIT_DEPTH 8 |
#define | BIT_DEPTH 10 |
#define | CN_SHIFT 12 |
#define | C_FIX(x) ((int)((x) * (1 << CN_SHIFT) + 0.5)) |
#define | C1 C_FIX(0.6532814824) |
#define | C2 C_FIX(0.2705980501) |
#define | C_SHIFT (4+1+12) |
#define | BF(k) |
#define | CN_SHIFT 12 |
#define | C_FIX(x) ((int)((x) * 1.414213562 * (1 << CN_SHIFT) + 0.5)) |
#define | C1 C_FIX(0.6532814824) |
#define | C2 C_FIX(0.2705980501) |
#define | C3 C_FIX(0.5) |
#define | C_SHIFT (4+1+12) |
#define | RN_SHIFT 15 |
#define | R_FIX(x) ((int)((x) * 1.414213562 * (1 << RN_SHIFT) + 0.5)) |
#define | R1 R_FIX(0.6532814824) |
#define | R2 R_FIX(0.2705980501) |
#define | R3 R_FIX(0.5) |
#define | R_SHIFT 11 |
Functions | |
static void | idct4col_put (uint8_t *dest, int line_size, const DCTELEM *col) |
void | ff_simple_idct248_put (uint8_t *dest, int line_size, DCTELEM *block) |
static void | idct4col_add (uint8_t *dest, int line_size, const DCTELEM *col) |
static void | idct4row (DCTELEM *row) |
void | ff_simple_idct84_add (uint8_t *dest, int line_size, DCTELEM *block) |
void | ff_simple_idct48_add (uint8_t *dest, int line_size, DCTELEM *block) |
void | ff_simple_idct44_add (uint8_t *dest, int line_size, DCTELEM *block) |
void | ff_prores_idct (DCTELEM *block, const int16_t *qmat) |
Special version of ff_simple_idct_10() which does dequantization and scales by a factor of 2 more between the two IDCTs to account for larger scale of input coefficients. |
Definition in file simple_idct.c.
#define BF | ( | k | ) |
Value:
Definition at line 74 of file simple_idct.c.
#define BIT_DEPTH 10 |
Definition at line 38 of file simple_idct.c.
#define BIT_DEPTH 8 |
Definition at line 38 of file simple_idct.c.
#define C1 C_FIX(0.6532814824) |
Definition at line 128 of file simple_idct.c.
#define C1 C_FIX(0.6532814824) |
Definition at line 128 of file simple_idct.c.
#define C2 C_FIX(0.2705980501) |
Definition at line 129 of file simple_idct.c.
#define C2 C_FIX(0.2705980501) |
Definition at line 129 of file simple_idct.c.
#define C3 C_FIX(0.5) |
Definition at line 130 of file simple_idct.c.
#define C_FIX | ( | x | ) | ((int)((x) * 1.414213562 * (1 << CN_SHIFT) + 0.5)) |
Definition at line 127 of file simple_idct.c.
#define C_FIX | ( | x | ) | ((int)((x) * (1 << CN_SHIFT) + 0.5)) |
Definition at line 127 of file simple_idct.c.
#define C_SHIFT (4+1+12) |
Definition at line 131 of file simple_idct.c.
#define C_SHIFT (4+1+12) |
#define CN_SHIFT 12 |
Definition at line 126 of file simple_idct.c.
#define CN_SHIFT 12 |
#define R1 R_FIX(0.6532814824) |
Definition at line 155 of file simple_idct.c.
Referenced by altivec_uyvy_rgb32(), ff_yuv2packedX_altivec(), idct4row(), and sha1_transform().
#define R2 R_FIX(0.2705980501) |
Definition at line 156 of file simple_idct.c.
Referenced by idct4row(), sha1_transform(), and wv_unpack_stereo().
#define R3 R_FIX(0.5) |
#define R_FIX | ( | x | ) | ((int)((x) * 1.414213562 * (1 << RN_SHIFT) + 0.5)) |
Definition at line 154 of file simple_idct.c.
#define R_SHIFT 11 |
#define RN_SHIFT 15 |
Definition at line 153 of file simple_idct.c.
Special version of ff_simple_idct_10() which does dequantization and scales by a factor of 2 more between the two IDCTs to account for larger scale of input coefficients.
Definition at line 222 of file simple_idct.c.
Referenced by prores_idct_put_c().
void ff_simple_idct248_put | ( | uint8_t * | dest, | |
int | line_size, | |||
DCTELEM * | block | |||
) |
void ff_simple_idct44_add | ( | uint8_t * | dest, | |
int | line_size, | |||
DCTELEM * | block | |||
) |
void ff_simple_idct48_add | ( | uint8_t * | dest, | |
int | line_size, | |||
DCTELEM * | block | |||
) |
Definition at line 192 of file simple_idct.c.
Referenced by vc1_decode_sequence_header(), and wmv2_add_block().
void ff_simple_idct84_add | ( | uint8_t * | dest, | |
int | line_size, | |||
DCTELEM * | block | |||
) |
Definition at line 177 of file simple_idct.c.
Referenced by vc1_decode_sequence_header(), and wmv2_add_block().
static void idct4col_add | ( | uint8_t * | dest, | |
int | line_size, | |||
const DCTELEM * | col | |||
) | [inline, static] |
Definition at line 132 of file simple_idct.c.
Referenced by ff_simple_idct44_add(), and ff_simple_idct84_add().
static void idct4col_put | ( | uint8_t * | dest, | |
int | line_size, | |||
const DCTELEM * | col | |||
) | [inline, static] |
static void idct4row | ( | DCTELEM * | row | ) | [inline, static] |
Definition at line 159 of file simple_idct.c.
Referenced by ff_simple_idct44_add(), and ff_simple_idct48_add().