TUT HEVC Encoder
Macros | Functions
dct-generic.c File Reference
#include "strategies/generic/dct-generic.h"
#include "strategyselector.h"
#include "tables.h"
Include dependency graph for dct-generic.c:

Macros

#define DCT_NXN_GENERIC(n)
 
#define IDCT_NXN_GENERIC(n)
 

Functions

 ALIGNED (32) const
 
 ALIGNED (64) const
 
static void fast_forward_dst_4_generic (const short *block, short *coeff, int32_t shift)
 Generic partial butterfly functions. More...
 
static void fast_inverse_dst_4_generic (const short *tmp, short *block, int shift)
 
static void partial_butterfly_4_generic (const short *src, short *dst, int32_t shift)
 
static void partial_butterfly_inverse_4_generic (const short *src, short *dst, int shift)
 
static void partial_butterfly_8_generic (const short *src, short *dst, int32_t shift)
 
static void partial_butterfly_inverse_8_generic (const int16_t *src, int16_t *dst, int32_t shift)
 
static void partial_butterfly_16_generic (const short *src, short *dst, int32_t shift)
 
static void partial_butterfly_inverse_16_generic (const int16_t *src, int16_t *dst, int32_t shift)
 
static void partial_butterfly_32_generic (const short *src, short *dst, int32_t shift)
 
static void partial_butterfly_inverse_32_generic (const int16_t *src, int16_t *dst, int32_t shift)
 
static void dct_4x4_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void dct_8x8_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void dct_16x16_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void dct_32x32_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void idct_4x4_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void idct_8x8_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void idct_16x16_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void idct_32x32_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void fast_forward_dst_4x4_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
static void fast_inverse_dst_4x4_generic (int8_t bitdepth, const int16_t *input, int16_t *output)
 
int kvz_strategy_register_dct_generic (void *opaque, uint8_t bitdepth)
 

Macro Definition Documentation

◆ DCT_NXN_GENERIC

#define DCT_NXN_GENERIC (   n)
Value:
static void dct_ ## n ## x ## n ## _generic(int8_t bitdepth, const int16_t *input, int16_t *output) { \
\
int16_t tmp[ n * n ]; \
int32_t shift_1st = kvz_g_convert_to_bit[ n ] + 1 + (bitdepth - 8); \
int32_t shift_2nd = kvz_g_convert_to_bit[ n ] + 8; \
\
partial_butterfly_ ## n ## _generic(input, tmp, shift_1st); \
partial_butterfly_ ## n ## _generic(tmp, output, shift_2nd); \
}
const int8_t kvz_g_convert_to_bit[(1<<(3+3))+1]
Definition: tables.c:9

◆ IDCT_NXN_GENERIC

#define IDCT_NXN_GENERIC (   n)
Value:
static void idct_ ## n ## x ## n ## _generic(int8_t bitdepth, const int16_t *input, int16_t *output) { \
\
int16_t tmp[ n * n ]; \
int32_t shift_1st = 7; \
int32_t shift_2nd = 12 - (bitdepth - 8); \
\
partial_butterfly_inverse_ ## n ## _generic(input, tmp, shift_1st); \
partial_butterfly_inverse_ ## n ## _generic(tmp, output, shift_2nd); \
}

Function Documentation

◆ ALIGNED() [1/2]

ALIGNED ( 32  ) const

◆ ALIGNED() [2/2]

ALIGNED ( 64  ) const

◆ dct_16x16_generic()

static void dct_16x16_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ dct_32x32_generic()

static void dct_32x32_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ dct_4x4_generic()

static void dct_4x4_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ dct_8x8_generic()

static void dct_8x8_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ fast_forward_dst_4_generic()

static void fast_forward_dst_4_generic ( const short *  block,
short *  coeff,
int32_t  shift 
)
static

TODO: description

Parameters
TODO
Returns
TODO
Here is the caller graph for this function:

◆ fast_forward_dst_4x4_generic()

static void fast_forward_dst_4x4_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ fast_inverse_dst_4_generic()

static void fast_inverse_dst_4_generic ( const short *  tmp,
short *  block,
int  shift 
)
static
Here is the caller graph for this function:

◆ fast_inverse_dst_4x4_generic()

static void fast_inverse_dst_4x4_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ idct_16x16_generic()

static void idct_16x16_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ idct_32x32_generic()

static void idct_32x32_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ idct_4x4_generic()

static void idct_4x4_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ idct_8x8_generic()

static void idct_8x8_generic ( int8_t  bitdepth,
const int16_t *  input,
int16_t *  output 
)
static
Here is the caller graph for this function:

◆ kvz_strategy_register_dct_generic()

int kvz_strategy_register_dct_generic ( void *  opaque,
uint8_t  bitdepth 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ partial_butterfly_16_generic()

static void partial_butterfly_16_generic ( const short *  src,
short *  dst,
int32_t  shift 
)
static

◆ partial_butterfly_32_generic()

static void partial_butterfly_32_generic ( const short *  src,
short *  dst,
int32_t  shift 
)
static

◆ partial_butterfly_4_generic()

static void partial_butterfly_4_generic ( const short *  src,
short *  dst,
int32_t  shift 
)
static

◆ partial_butterfly_8_generic()

static void partial_butterfly_8_generic ( const short *  src,
short *  dst,
int32_t  shift 
)
static

◆ partial_butterfly_inverse_16_generic()

static void partial_butterfly_inverse_16_generic ( const int16_t *  src,
int16_t *  dst,
int32_t  shift 
)
static

◆ partial_butterfly_inverse_32_generic()

static void partial_butterfly_inverse_32_generic ( const int16_t *  src,
int16_t *  dst,
int32_t  shift 
)
static

◆ partial_butterfly_inverse_4_generic()

static void partial_butterfly_inverse_4_generic ( const short *  src,
short *  dst,
int  shift 
)
static

◆ partial_butterfly_inverse_8_generic()

static void partial_butterfly_inverse_8_generic ( const int16_t *  src,
int16_t *  dst,
int32_t  shift 
)
static