|
FFmpeg
|
#include "libavutil/intreadwrite.h"#include "avcodec.h"#include "mathops.h"#include "simple_idct.h"#include "simple_idct_template.c"Go to the source code of this file.
Macros | |
| #define | IN_IDCT_DEPTH 16 |
| #define | BIT_DEPTH 8 |
| #define | BIT_DEPTH 10 |
| #define | EXTRA_SHIFT 2 |
| #define | BIT_DEPTH 12 |
| #define | IN_IDCT_DEPTH 32 |
| #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) * M_SQRT2 * (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) * M_SQRT2 * (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, ptrdiff_t line_size, const int16_t *col) |
| void | ff_simple_idct248_put (uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
| static void | idct4col_add (uint8_t *dest, ptrdiff_t line_size, const int16_t *col) |
| static void | idct4row (int16_t *row) |
| void | ff_simple_idct84_add (uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
| void | ff_simple_idct48_add (uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
| void | ff_simple_idct44_add (uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
| void | ff_prores_idct_10 (int16_t *block, const int16_t *qmat) |
| Special version of ff_simple_idct_int16_10bit() which does dequantization and scales by a factor of 2 more between the two IDCTs to account for larger scale of input coefficients. More... | |
| void | ff_prores_idct_12 (int16_t *block, const int16_t *qmat) |
simpleidct in C.
Definition in file simple_idct.c.
| #define IN_IDCT_DEPTH 16 |
Definition at line 53 of file simple_idct.c.
| #define BIT_DEPTH 8 |
Definition at line 54 of file simple_idct.c.
| #define BIT_DEPTH 10 |
Definition at line 54 of file simple_idct.c.
| #define EXTRA_SHIFT 2 |
Definition at line 42 of file simple_idct.c.
| #define BIT_DEPTH 12 |
Definition at line 54 of file simple_idct.c.
| #define IN_IDCT_DEPTH 32 |
Definition at line 53 of file simple_idct.c.
| #define BIT_DEPTH 10 |
Definition at line 54 of file simple_idct.c.
| #define CN_SHIFT 12 |
Definition at line 143 of file simple_idct.c.
Definition at line 144 of file simple_idct.c.
| #define C1 C_FIX(0.6532814824) |
Definition at line 145 of file simple_idct.c.
| #define C2 C_FIX(0.2705980501) |
Definition at line 146 of file simple_idct.c.
| #define C_SHIFT (4+1+12) |
Definition at line 148 of file simple_idct.c.
| #define BF | ( | k | ) |
| #define CN_SHIFT 12 |
Definition at line 143 of file simple_idct.c.
Definition at line 144 of file simple_idct.c.
| #define C1 C_FIX(0.6532814824) |
Definition at line 145 of file simple_idct.c.
| #define C2 C_FIX(0.2705980501) |
Definition at line 146 of file simple_idct.c.
| #define C3 C_FIX(0.5) |
Definition at line 147 of file simple_idct.c.
| #define C_SHIFT (4+1+12) |
Definition at line 148 of file simple_idct.c.
| #define RN_SHIFT 15 |
Definition at line 170 of file simple_idct.c.
Definition at line 171 of file simple_idct.c.
| #define R1 R_FIX(0.6532814824) |
Definition at line 172 of file simple_idct.c.
| #define R2 R_FIX(0.2705980501) |
Definition at line 173 of file simple_idct.c.
| #define R3 R_FIX(0.5) |
Definition at line 174 of file simple_idct.c.
| #define R_SHIFT 11 |
Definition at line 175 of file simple_idct.c.
|
inlinestatic |
Definition at line 70 of file simple_idct.c.
Referenced by ff_simple_idct248_put().
| void ff_simple_idct248_put | ( | uint8_t * | dest, |
| ptrdiff_t | line_size, | ||
| int16_t * | block | ||
| ) |
Definition at line 106 of file simple_idct.c.
Referenced by dvvideo_decode_init(), and main().
|
inlinestatic |
Definition at line 149 of file simple_idct.c.
Referenced by ff_simple_idct44_add(), and ff_simple_idct84_add().
|
inlinestatic |
Definition at line 176 of file simple_idct.c.
Referenced by ff_simple_idct44_add(), and ff_simple_idct48_add().
| void ff_simple_idct84_add | ( | uint8_t * | dest, |
| ptrdiff_t | line_size, | ||
| int16_t * | block | ||
| ) |
Definition at line 195 of file simple_idct.c.
Referenced by ff_vc1_decode_sequence_header(), and wmv2_add_block().
| void ff_simple_idct48_add | ( | uint8_t * | dest, |
| ptrdiff_t | line_size, | ||
| int16_t * | block | ||
| ) |
Definition at line 210 of file simple_idct.c.
Referenced by ff_vc1_decode_sequence_header(), and wmv2_add_block().
| void ff_simple_idct44_add | ( | uint8_t * | dest, |
| ptrdiff_t | line_size, | ||
| int16_t * | block | ||
| ) |
Definition at line 225 of file simple_idct.c.
Referenced by ff_vc1_decode_sequence_header().
| void ff_prores_idct_10 | ( | int16_t * | block, |
| const int16_t * | qmat | ||
| ) |
Special version of ff_simple_idct_int16_10bit() 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 240 of file simple_idct.c.
Referenced by ff_prores_idct_wrap(), and prores_idct_put_10_c().
| void ff_prores_idct_12 | ( | int16_t * | block, |
| const int16_t * | qmat | ||
| ) |
Definition at line 256 of file simple_idct.c.
Referenced by prores_idct_put_12_c().
1.8.17