TUT HEVC Encoder
Typedefs | Enumerations | Functions
filter.h File Reference

Deblocking filter. More...

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

Go to the source code of this file.

Typedefs

typedef enum edge_dir edge_dir
 Edge direction. More...
 

Enumerations

enum  edge_dir { EDGE_VER = 0 , EDGE_HOR = 1 }
 Edge direction. More...
 

Functions

void kvz_filter_deblock_lcu (encoder_state_t *state, int x_px, int y_px)
 Deblock a single LCU without using data from right or down. More...
 

Typedef Documentation

◆ edge_dir

typedef enum edge_dir edge_dir

Enumeration Type Documentation

◆ edge_dir

enum edge_dir
Enumerator
EDGE_VER 
EDGE_HOR 

Function Documentation

◆ kvz_filter_deblock_lcu()

void kvz_filter_deblock_lcu ( encoder_state_t *const  state,
int  x_px,
int  y_px 
)

Filter the following vertical edges (horizontal filtering):

  1. The left edge of the LCU.
  2. All vertical edges within the LCU.

Filter the following horizontal edges (vertical filtering):

  1. The rightmost 4 pixels of the top edge of the LCU to the left.
  2. The rightmost 4 pixels of all horizontal edges within the LCU to the left.
  3. The top edge and all horizontal edges within the LCU, excluding the rightmost 4 pixels. If the LCU is the rightmost LCU of the frame, the last 4 pixels are also filtered.

What is not filtered:

  • The rightmost 4 pixels of the top edge and all horizontal edges within the LCU, unless the LCU is the rightmost LCU of the frame.
  • The bottom edge of the LCU.
  • The right edge of the LCU.
Parameters
stateencoder state
x_pxx-coordinate of the left edge of the LCU in pixels
y_pxy-coordinate of the top edge of the LCU in pixels
Here is the call graph for this function:
Here is the caller graph for this function: