TUT HEVC Encoder
Loading...
Searching...
No Matches
Data Structures | Functions
intra.h File Reference

Intra prediction. More...

#include "cu.h"
#include "encoderstate.h"
#include "global.h"
#include "kvazaar.h"
Include dependency graph for intra.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  kvz_intra_ref
 
struct  kvz_intra_references
 

Functions

int8_t kvz_intra_get_dir_luma_predictor (const uint32_t x, const uint32_t y, int8_t *preds, const cu_info_t *const cur_pu, const cu_info_t *const left_pu, const cu_info_t *const above_pu)
 Function for deriving intra luma predictions.
 
void kvz_intra_build_reference (const int_fast8_t log2_width, const color_t color, const vector2d_t *const luma_px, const vector2d_t *const pic_px, const lcu_t *const lcu, kvz_intra_references *const refs)
 Generage angular predictions.
 
void kvz_intra_predict (kvz_intra_references *refs, int_fast8_t log2_width, int_fast8_t mode, color_t color, kvz_pixel *dst, bool filter_boundary)
 Generate intra predictions.
 
void kvz_intra_recon_cu (encoder_state_t *const state, int x, int y, int depth, int8_t mode_luma, int8_t mode_chroma, cu_info_t *cur_cu, lcu_t *lcu)
 Reconstruct an intra CU.
 

Function Documentation

◆ kvz_intra_build_reference()

void kvz_intra_build_reference ( const int_fast8_t  log2_width,
const color_t  color,
const vector2d_t *const  luma_px,
const vector2d_t *const  pic_px,
const lcu_t *const  lcu,
kvz_intra_references *const  refs 
)
Parameters
widthWidth in pixels, range 4..32.
colorWhat color pixels to use.
luma_pxLuma coordinates of the prediction block.
pic_pxPicture dimensions in luma pixels.
lcuLCU struct.
out_left_refLeft reference pixels, index 0 is the top-left.
out_top_refTop reference pixels, index 0 is the top-left.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ kvz_intra_get_dir_luma_predictor()

int8_t kvz_intra_get_dir_luma_predictor ( const uint32_t  x,
const uint32_t  y,
int8_t preds,
const cu_info_t *const  cur_pu,
const cu_info_t *const  left_pu,
const cu_info_t *const  above_pu 
)
Parameters
xx-coordinate of the PU in pixels
yy-coordinate of the PU in pixels
predsoutput buffer for 3 predictions
cur_puPU to check
left_puPU to the left of cur_pu
above_puPU above cur_pu
Returns
1 if predictions are found, otherwise 0
Here is the caller graph for this function:

◆ kvz_intra_predict()

void kvz_intra_predict ( kvz_intra_references refs,
int_fast8_t  log2_width,
int_fast8_t  mode,
color_t  color,
kvz_pixel dst,
bool  filter_boundary 
)
Parameters
refsReference pixels used for the prediction.
log2_widthWidth of the predicted block.
modeIntra mode used for the prediction.
colorColor of the prediction.
dstBuffer for the predicted pixels.
filter_boundaryWhether to filter the boundary on modes 10 and 26.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ kvz_intra_recon_cu()

void kvz_intra_recon_cu ( encoder_state_t *const  state,
int  x,
int  y,
int  depth,
int8_t  mode_luma,
int8_t  mode_chroma,
cu_info_t cur_cu,
lcu_t lcu 
)
Parameters
stateencoder state
xx-coordinate of the CU in luma pixels
yy-coordinate of the CU in luma pixels
depthdepth in the CU tree
mode_lumaintra mode for luma, or -1 to skip luma recon
mode_chromaintra mode for chroma, or -1 to skip chroma recon
cur_cupointer to the CU, or NULL to fetch CU from LCU
lcucontaining LCU
Here is the call graph for this function:
Here is the caller graph for this function: