TUT HEVC Encoder
Loading...
Searching...
No Matches
encoder_control_t Struct Reference

#include <encoder.h>

Collaboration diagram for encoder_control_t:

Data Fields

kvz_config cfg
 Configuration.
 
struct { 
 
   int32_t   width 
 
   int32_t   height 
 
   int32_t   width_in_lcu 
 
   int32_t   height_in_lcu 
 
   int32_t   real_width 
 real input picture width More...
 
   int32_t   real_height 
 real input picture height More...
 
   int64_t   pixels_per_pic 
 
   int8_t   source_scan_type 
 
in 
 
struct { 
 
   void(*   IME )() 
 
   void(*   FME )() 
 
   int   range 
 
me 
 
int8_t bitdepth
 
enum kvz_chroma_format chroma_format
 
struct { 
 
   int32_t   num_units_in_tick 
 Timing scale numerator. More...
 
   int32_t   time_scale 
 Timing scale denominator. More...
 
   int8_t   field_seq_flag 
 
   int8_t   frame_field_info_present_flag 
 
   int8_t   timing_info_present_flag 
 
vui 
 
scaling_list_t scaling_list
 
int8_t tiles_enable
 
int8_t tiles_uniform_spacing_flag
 
const int32_t * tiles_col_width
 
const int32_t * tiles_row_height
 
const int32_t * tiles_col_bd
 
const int32_t * tiles_row_bd
 
const int32_t * tiles_ctb_addr_rs_to_ts
 
const int32_t * tiles_ctb_addr_ts_to_rs
 
const int32_t * tiles_tile_id
 
int slice_count
 
const int * slice_addresses_in_ts
 
threadqueue_queue_tthreadqueue
 
double target_avg_bppic
 Target average bits per picture.
 
double target_avg_bpp
 Target average bits per pixel.
 
double gop_layer_weights [6]
 Picture weights when GOP is used.
 
FILE * roi_file
 
int tr_depth_inter
 
struct { 
 
   uint8_t   dependent_slice_segments_enabled_flag 
 
pps 
 pic_parameter_set
 
struct { 
 
   int   right 
 
   int   down 
 
max_inter_ref_lcu 
 Maximum motion vector distance as number of LCUs.
 
int32_t poc_lsb_bits
 
fast_coeff_table_t fast_coeff_table
 

Field Documentation

◆ bitdepth

int8_t encoder_control_t::bitdepth

◆ cfg

kvz_config encoder_control_t::cfg

NOTE: The following fields are not copied from the config passed to kvz_encoder_control_init and must not be accessed:

  • cqmfile
  • tiles_width_split
  • tiles_height_split
  • slice_addresses_in_ts Use appropriate fields in encoder_control_t instead.

◆ chroma_format

enum kvz_chroma_format encoder_control_t::chroma_format

◆ dependent_slice_segments_enabled_flag

uint8_t encoder_control_t::dependent_slice_segments_enabled_flag

◆ down

int encoder_control_t::down

◆ fast_coeff_table

fast_coeff_table_t encoder_control_t::fast_coeff_table

◆ field_seq_flag

int8_t encoder_control_t::field_seq_flag

◆ FME

void(* encoder_control_t::FME) ()

◆ frame_field_info_present_flag

int8_t encoder_control_t::frame_field_info_present_flag

◆ gop_layer_weights

double encoder_control_t::gop_layer_weights[6]

◆ height

int32_t encoder_control_t::height

◆ height_in_lcu

int32_t encoder_control_t::height_in_lcu

◆ IME

void(* encoder_control_t::IME) ()

◆ [struct]

struct { ... } encoder_control_t::in

◆ [struct]

struct { ... } encoder_control_t::max_inter_ref_lcu

◆ [struct]

struct { ... } encoder_control_t::me

◆ num_units_in_tick

int32_t encoder_control_t::num_units_in_tick

◆ pixels_per_pic

int64_t encoder_control_t::pixels_per_pic

◆ poc_lsb_bits

int32_t encoder_control_t::poc_lsb_bits

◆ [struct]

struct { ... } encoder_control_t::pps

◆ range

int encoder_control_t::range

◆ real_height

int32_t encoder_control_t::real_height

◆ real_width

int32_t encoder_control_t::real_width

◆ right

int encoder_control_t::right

◆ roi_file

FILE* encoder_control_t::roi_file

◆ scaling_list

scaling_list_t encoder_control_t::scaling_list

◆ slice_addresses_in_ts

const int* encoder_control_t::slice_addresses_in_ts

◆ slice_count

int encoder_control_t::slice_count

◆ source_scan_type

int8_t encoder_control_t::source_scan_type

◆ target_avg_bpp

double encoder_control_t::target_avg_bpp

◆ target_avg_bppic

double encoder_control_t::target_avg_bppic

◆ threadqueue

threadqueue_queue_t* encoder_control_t::threadqueue

◆ tiles_col_bd

const int32_t* encoder_control_t::tiles_col_bd

spec: colBd (6.5.1); dimension: tiles_num_tile_columns + 1

◆ tiles_col_width

const int32_t* encoder_control_t::tiles_col_width

spec: colWidth (6.5.1); dimension: tiles_num_tile_columns

◆ tiles_ctb_addr_rs_to_ts

const int32_t* encoder_control_t::tiles_ctb_addr_rs_to_ts

spec: CtbAddrRsToTs (6.5.1); dimension: PicSizeInCtbsY

◆ tiles_ctb_addr_ts_to_rs

const int32_t* encoder_control_t::tiles_ctb_addr_ts_to_rs

spec: CtbAddrTsToRs (6.5.1); dimension: PicSizeInCtbsY

◆ tiles_enable

int8_t encoder_control_t::tiles_enable

spec: tiles_enabled

◆ tiles_row_bd

const int32_t* encoder_control_t::tiles_row_bd

spec: rowBd (6.5.1); dimension: tiles_num_tile_rows + 1

◆ tiles_row_height

const int32_t* encoder_control_t::tiles_row_height

spec: rowHeight (6.5.1); dimension: tiles_num_tile_rows

◆ tiles_tile_id

const int32_t* encoder_control_t::tiles_tile_id

spec: TileId (6.5.1); dimension: PicSizeInCtbsY

◆ tiles_uniform_spacing_flag

int8_t encoder_control_t::tiles_uniform_spacing_flag

spec: uniform_spacing_flag

◆ time_scale

int32_t encoder_control_t::time_scale

◆ timing_info_present_flag

int8_t encoder_control_t::timing_info_present_flag

◆ tr_depth_inter

int encoder_control_t::tr_depth_inter

◆ [struct]

struct { ... } encoder_control_t::vui

◆ width

int32_t encoder_control_t::width

◆ width_in_lcu

int32_t encoder_control_t::width_in_lcu

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