Miam-Player  0.8.0
A nice music player
AVDCT Struct Reference

#include <avdct.h>

Public Attributes

const AVClassav_class
 
void(* idct )(int16_t *block)
 
uint8_t idct_permutation [64]
 
void(* fdct )(int16_t *block)
 
int dct_algo
 
int idct_algo
 
void(* get_pixels )(int16_t *block, const uint8_t *pixels, ptrdiff_t line_size)
 
int bits_per_sample
 

Detailed Description

AVDCT context.

Note
function pointers can be NULL if the specific features have been disabled at build time.

Member Data Documentation

const AVClass* AVDCT::av_class
int AVDCT::bits_per_sample
int AVDCT::dct_algo

DCT algorithm. must use AVOptions to set this field.

void(* AVDCT::fdct) (int16_t *block)
void(* AVDCT::get_pixels) (int16_t *block, const uint8_t *pixels, ptrdiff_t line_size)
void(* AVDCT::idct) (int16_t *block)
int AVDCT::idct_algo

IDCT algorithm. must use AVOptions to set this field.

uint8_t AVDCT::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 -> ...)

The documentation for this struct was generated from the following file: