#include <idctdsp.h>
|
void(* | put_pixels_clamped )(const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
|
void(* | put_signed_pixels_clamped )(const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
|
void(* | add_pixels_clamped )(const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
|
void(* | idct )(int16_t *block) |
|
void(* | idct_put )(uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
| block -> idct -> clip to unsigned 8 bit -> dest. More...
|
|
void(* | idct_add )(uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
| block -> idct -> add dest -> clip to unsigned 8 bit -> dest. More...
|
|
uint8_t | idct_permutation [64] |
| IDCT input permutation. More...
|
|
enum idct_permutation_type | perm_type |
|
int | mpeg4_studio_profile |
|
Definition at line 53 of file idctdsp.h.
◆ put_pixels_clamped
void(* IDCTDSPContext::put_pixels_clamped) (const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
◆ put_signed_pixels_clamped
void(* IDCTDSPContext::put_signed_pixels_clamped) (const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
◆ add_pixels_clamped
void(* IDCTDSPContext::add_pixels_clamped) (const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
◆ idct
void(* IDCTDSPContext::idct) (int16_t *block) |
◆ idct_put
void(* IDCTDSPContext::idct_put) (uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
block -> idct -> clip to unsigned 8 bit -> dest.
(-1392, 0, 0, ...) -> idct -> (-174, -174, ...) -> put -> (0, 0, ...)
- Parameters
-
line_size | size in bytes of a horizontal line of dest |
Definition at line 72 of file idctdsp.h.
◆ idct_add
void(* IDCTDSPContext::idct_add) (uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
block -> idct -> add dest -> clip to unsigned 8 bit -> dest.
- Parameters
-
line_size | size in bytes of a horizontal line of dest |
Definition at line 79 of file idctdsp.h.
◆ idct_permutation
uint8_t IDCTDSPContext::idct_permutation[64] |
IDCT input permutation.
Several optimized IDCTs need a permutated input (relative to the normal order of the reference IDCT). This permutation must be performed before the idct_put/add. Note, normally this can be merged with the zigzag/alternate scan
An example to avoid confusion:
- (->decode coeffs -> zigzag reorder -> dequant -> reference IDCT -> ...)
- (x -> reference DCT -> reference IDCT -> x)
- (x -> reference DCT -> simple_mmx_perm = idct_permutation -> simple_idct_mmx -> x)
- (-> decode coeffs -> zigzag reorder -> simple_mmx_perm -> dequant -> simple_idct_mmx -> ...)
Definition at line 96 of file idctdsp.h.
Referenced by tqi_decode_init().
◆ perm_type
◆ mpeg4_studio_profile
int IDCTDSPContext::mpeg4_studio_profile |
The documentation for this struct was generated from the following file: