FFmpeg
Data Structures | Macros | Enumerations | Functions | Variables
vvc_cabac.c File Reference
#include "libavcodec/cabac_functions.h"
#include "vvc_cabac.h"
#include "vvc_ctu.h"
#include "vvc_data.h"

Go to the source code of this file.

Data Structures

struct  ResidualCoding
 

Macros

#define CABAC_MAX_BIN   31
 
#define CNU   35
 
#define MAX_SUB_BLOCKS   16
 
#define MAX_SUB_BLOCK_SIZE   4
 
#define MAX_TB_SIZE   64
 
#define GET_CABAC(ctx)   vvc_get_cabac(&lc->ep->cc, lc->ep->cabac_state, ctx)
 

Enumerations

enum  SyntaxElement {
  ALF_CTB_FLAG = 0, ALF_USE_APS_FLAG = ALF_CTB_FLAG + 9, ALF_CTB_CC_CB_IDC, ALF_CTB_CC_CR_IDC = ALF_CTB_CC_CB_IDC + 3,
  ALF_CTB_FILTER_ALT_IDX = ALF_CTB_CC_CR_IDC + 3, SAO_MERGE_FLAG = ALF_CTB_FILTER_ALT_IDX + 2, SAO_TYPE_IDX, SPLIT_CU_FLAG,
  SPLIT_QT_FLAG = SPLIT_CU_FLAG + 9, MTT_SPLIT_CU_VERTICAL_FLAG = SPLIT_QT_FLAG + 6, MTT_SPLIT_CU_BINARY_FLAG = MTT_SPLIT_CU_VERTICAL_FLAG + 5, NON_INTER_FLAG = MTT_SPLIT_CU_BINARY_FLAG + 4,
  CU_SKIP_FLAG = NON_INTER_FLAG + 2, PRED_MODE_IBC_FLAG = CU_SKIP_FLAG + 3, PRED_MODE_FLAG = PRED_MODE_IBC_FLAG + 3, PRED_MODE_PLT_FLAG = PRED_MODE_FLAG + 2,
  CU_ACT_ENABLED_FLAG, INTRA_BDPCM_LUMA_FLAG, INTRA_BDPCM_LUMA_DIR_FLAG, INTRA_MIP_FLAG,
  INTRA_LUMA_REF_IDX = INTRA_MIP_FLAG + 4, INTRA_SUBPARTITIONS_MODE_FLAG = INTRA_LUMA_REF_IDX + 2, INTRA_SUBPARTITIONS_SPLIT_FLAG, INTRA_LUMA_MPM_FLAG,
  INTRA_LUMA_NOT_PLANAR_FLAG, INTRA_BDPCM_CHROMA_FLAG = INTRA_LUMA_NOT_PLANAR_FLAG + 2, INTRA_BDPCM_CHROMA_DIR_FLAG, CCLM_MODE_FLAG,
  CCLM_MODE_IDX, INTRA_CHROMA_PRED_MODE, GENERAL_MERGE_FLAG, INTER_PRED_IDC,
  INTER_AFFINE_FLAG = INTER_PRED_IDC + 6, CU_AFFINE_TYPE_FLAG = INTER_AFFINE_FLAG + 3, SYM_MVD_FLAG, REF_IDX_LX,
  MVP_LX_FLAG = REF_IDX_LX + 2, AMVR_FLAG, AMVR_PRECISION_IDX = AMVR_FLAG + 2, BCW_IDX = AMVR_PRECISION_IDX + 3,
  CU_CODED_FLAG, CU_SBT_FLAG, CU_SBT_QUAD_FLAG = CU_SBT_FLAG + 2, CU_SBT_HORIZONTAL_FLAG,
  CU_SBT_POS_FLAG = CU_SBT_HORIZONTAL_FLAG + 3, LFNST_IDX, MTS_IDX = LFNST_IDX + 3, COPY_ABOVE_PALETTE_INDICES_FLAG = MTS_IDX + 4,
  PALETTE_TRANSPOSE_FLAG, RUN_COPY_FLAG, REGULAR_MERGE_FLAG = RUN_COPY_FLAG + 8, MMVD_MERGE_FLAG = REGULAR_MERGE_FLAG + 2,
  MMVD_CAND_FLAG, MMVD_DISTANCE_IDX, CIIP_FLAG, MERGE_SUBBLOCK_FLAG,
  MERGE_SUBBLOCK_IDX = MERGE_SUBBLOCK_FLAG + 3, MERGE_IDX, ABS_MVD_GREATER0_FLAG, ABS_MVD_GREATER1_FLAG,
  TU_Y_CODED_FLAG, TU_CB_CODED_FLAG = TU_Y_CODED_FLAG + 4, TU_CR_CODED_FLAG = TU_CB_CODED_FLAG + 2, CU_QP_DELTA_ABS = TU_CR_CODED_FLAG + 3,
  CU_CHROMA_QP_OFFSET_FLAG = CU_QP_DELTA_ABS + 2, CU_CHROMA_QP_OFFSET_IDX, TRANSFORM_SKIP_FLAG, TU_JOINT_CBCR_RESIDUAL_FLAG = TRANSFORM_SKIP_FLAG + 2,
  LAST_SIG_COEFF_X_PREFIX = TU_JOINT_CBCR_RESIDUAL_FLAG + 3, LAST_SIG_COEFF_Y_PREFIX = LAST_SIG_COEFF_X_PREFIX +23, SB_CODED_FLAG = LAST_SIG_COEFF_Y_PREFIX +23, SIG_COEFF_FLAG = SB_CODED_FLAG + 7,
  PAR_LEVEL_FLAG = SIG_COEFF_FLAG +63, ABS_LEVEL_GTX_FLAG = PAR_LEVEL_FLAG +33, COEFF_SIGN_FLAG = ABS_LEVEL_GTX_FLAG +72, SYNTAX_ELEMENT_LAST = COEFF_SIGN_FLAG + 6
}
 

Functions

static int cabac_reinit (VVCLocalContext *lc)
 
static void cabac_init_state (VVCLocalContext *lc)
 
int ff_vvc_cabac_init (VVCLocalContext *lc, const int ctu_idx, const int rx, const int ry)
 
static void vvc_refill2 (CABACContext *c)
 
static int vvc_get_cabac (CABACContext *c, VVCCabacState *base, const int ctx)
 
static int truncated_binary_decode (VVCLocalContext *lc, const int c_max)
 
static int limited_kth_order_egk_decode (CABACContext *c, const int k, const int max_pre_ext_len, const int trunc_suffix_len)
 
static av_always_inline void get_left_top (const VVCLocalContext *lc, uint8_t *left, uint8_t *top, const int x0, const int y0, const uint8_t *left_ctx, const uint8_t *top_ctx)
 
static av_always_inline uint8_t get_inc (VVCLocalContext *lc, const uint8_t *ctx)
 
int ff_vvc_sao_merge_flag_decode (VVCLocalContext *lc)
 
int ff_vvc_sao_type_idx_decode (VVCLocalContext *lc)
 
int ff_vvc_sao_band_position_decode (VVCLocalContext *lc)
 
int ff_vvc_sao_offset_abs_decode (VVCLocalContext *lc)
 
int ff_vvc_sao_offset_sign_decode (VVCLocalContext *lc)
 
int ff_vvc_sao_eo_class_decode (VVCLocalContext *lc)
 
int ff_vvc_alf_ctb_flag (VVCLocalContext *lc, const int rx, const int ry, const int c_idx)
 
int ff_vvc_alf_use_aps_flag (VVCLocalContext *lc)
 
int ff_vvc_alf_luma_prev_filter_idx (VVCLocalContext *lc)
 
int ff_vvc_alf_luma_fixed_filter_idx (VVCLocalContext *lc)
 
int ff_vvc_alf_ctb_filter_alt_idx (VVCLocalContext *lc, const int c_idx, const int num_chroma_filters)
 
int ff_vvc_alf_ctb_cc_idc (VVCLocalContext *lc, const int rx, const int ry, const int idx, const int cc_filters_signalled)
 
int ff_vvc_split_cu_flag (VVCLocalContext *lc, const int x0, const int y0, const int cb_width, const int cb_height, const int is_chroma, const VVCAllowedSplit *a)
 
static int split_qt_flag_decode (VVCLocalContext *lc, const int x0, const int y0, const int ch_type, const int cqt_depth)
 
static int mtt_split_cu_vertical_flag_decode (VVCLocalContext *lc, const int x0, const int y0, const int cb_width, const int cb_height, const int ch_type, const VVCAllowedSplit *a)
 
static int mtt_split_cu_binary_flag_decode (VVCLocalContext *lc, const int mtt_split_cu_vertical_flag, const int mtt_depth)
 
VVCSplitMode ff_vvc_split_mode (VVCLocalContext *lc, const int x0, const int y0, const int cb_width, const int cb_height, const int cqt_depth, const int mtt_depth, const int ch_type, const VVCAllowedSplit *a)
 
int ff_vvc_non_inter_flag (VVCLocalContext *lc, const int x0, const int y0, const int ch_type)
 
int ff_vvc_pred_mode_flag (VVCLocalContext *lc, const int is_chroma)
 
int ff_vvc_pred_mode_plt_flag (VVCLocalContext *lc)
 
int ff_vvc_intra_bdpcm_luma_flag (VVCLocalContext *lc)
 
int ff_vvc_intra_bdpcm_luma_dir_flag (VVCLocalContext *lc)
 
int ff_vvc_intra_bdpcm_chroma_flag (VVCLocalContext *lc)
 
int ff_vvc_intra_bdpcm_chroma_dir_flag (VVCLocalContext *lc)
 
int ff_vvc_cu_skip_flag (VVCLocalContext *lc, const uint8_t *cu_skip_flag)
 
int ff_vvc_pred_mode_ibc_flag (VVCLocalContext *lc, const int is_chroma)
 
int ff_vvc_intra_mip_flag (VVCLocalContext *lc, const uint8_t *intra_mip_flag)
 
int ff_vvc_intra_mip_transposed_flag (VVCLocalContext *lc)
 
int ff_vvc_intra_mip_mode (VVCLocalContext *lc)
 
int ff_vvc_intra_luma_ref_idx (VVCLocalContext *lc)
 
int ff_vvc_intra_subpartitions_mode_flag (VVCLocalContext *lc)
 
enum IspType ff_vvc_isp_split_type (VVCLocalContext *lc, const int intra_subpartitions_mode_flag)
 
int ff_vvc_intra_luma_mpm_flag (VVCLocalContext *lc)
 
int ff_vvc_intra_luma_not_planar_flag (VVCLocalContext *lc, const int intra_subpartitions_mode_flag)
 
int ff_vvc_intra_luma_mpm_idx (VVCLocalContext *lc)
 
int ff_vvc_intra_luma_mpm_remainder (VVCLocalContext *lc)
 
int ff_vvc_cclm_mode_flag (VVCLocalContext *lc)
 
int ff_vvc_cclm_mode_idx (VVCLocalContext *lc)
 
int ff_vvc_intra_chroma_pred_mode (VVCLocalContext *lc)
 
int ff_vvc_general_merge_flag (VVCLocalContext *lc)
 
static int get_inter_flag_inc (VVCLocalContext *lc, const int x0, const int y0)
 
int ff_vvc_merge_subblock_flag (VVCLocalContext *lc)
 
int ff_vvc_merge_subblock_idx (VVCLocalContext *lc, const int max_num_subblock_merge_cand)
 
int ff_vvc_regular_merge_flag (VVCLocalContext *lc, const int cu_skip_flag)
 
int ff_vvc_mmvd_merge_flag (VVCLocalContext *lc)
 
int ff_vvc_mmvd_cand_flag (VVCLocalContext *lc)
 
static int mmvd_distance_idx_decode (VVCLocalContext *lc)
 
static int mmvd_direction_idx_decode (VVCLocalContext *lc)
 
void ff_vvc_mmvd_offset_coding (VVCLocalContext *lc, Mv *mmvd_offset, const int ph_mmvd_fullpel_only_flag)
 
static PredMode get_luma_pred_mode (VVCLocalContext *lc)
 
int ff_vvc_merge_idx (VVCLocalContext *lc)
 
int ff_vvc_merge_gpm_partition_idx (VVCLocalContext *lc)
 
int ff_vvc_merge_gpm_idx (VVCLocalContext *lc, const int idx)
 
int ff_vvc_ciip_flag (VVCLocalContext *lc)
 
PredFlag ff_vvc_pred_flag (VVCLocalContext *lc, const int is_b)
 
int ff_vvc_inter_affine_flag (VVCLocalContext *lc)
 
int ff_vvc_cu_affine_type_flag (VVCLocalContext *lc)
 
int ff_vvc_sym_mvd_flag (VVCLocalContext *lc)
 
int ff_vvc_ref_idx_lx (VVCLocalContext *lc, const uint8_t nb_refs)
 
int ff_vvc_abs_mvd_greater0_flag (VVCLocalContext *lc)
 
int ff_vvc_abs_mvd_greater1_flag (VVCLocalContext *lc)
 
int ff_vvc_abs_mvd_minus2 (VVCLocalContext *lc)
 
int ff_vvc_mvd_sign_flag (VVCLocalContext *lc)
 
int ff_vvc_mvp_lx_flag (VVCLocalContext *lc)
 
static int amvr_flag (VVCLocalContext *lc, const int inter_affine_flag)
 
static int amvr_precision_idx (VVCLocalContext *lc, const int inc, const int c_max)
 
int ff_vvc_amvr_shift (VVCLocalContext *lc, const int inter_affine_flag, const PredMode pred_mode, const int has_amvr_flag)
 
int ff_vvc_bcw_idx (VVCLocalContext *lc, const int no_backward_pred_flag)
 
int ff_vvc_tu_cb_coded_flag (VVCLocalContext *lc)
 
int ff_vvc_tu_cr_coded_flag (VVCLocalContext *lc, int tu_cb_coded_flag)
 
int ff_vvc_tu_y_coded_flag (VVCLocalContext *lc)
 
int ff_vvc_cu_qp_delta_abs (VVCLocalContext *lc)
 
int ff_vvc_cu_qp_delta_sign_flag (VVCLocalContext *lc)
 
int ff_vvc_cu_chroma_qp_offset_flag (VVCLocalContext *lc)
 
int ff_vvc_cu_chroma_qp_offset_idx (VVCLocalContext *lc)
 
static av_always_inline int last_significant_coeff_xy_prefix (VVCLocalContext *lc, const int log2_tb_size, const int log2_zo_tb_size, const int c_idx, const int ctx)
 
static av_always_inline int last_significant_coeff_x_prefix_decode (VVCLocalContext *lc, const int log2_tb_width, const int log2_zo_tb_width, const int c_idx)
 
static av_always_inline int last_significant_coeff_y_prefix_decode (VVCLocalContext *lc, const int log2_tb_height, const int log2_zo_tb_height, const int c_idx)
 
static av_always_inline int last_sig_coeff_suffix_decode (VVCLocalContext *lc, const int last_significant_coeff_y_prefix)
 
int ff_vvc_tu_joint_cbcr_residual_flag (VVCLocalContext *lc, const int tu_cb_coded_flag, const int tu_cr_coded_flag)
 
int ff_vvc_transform_skip_flag (VVCLocalContext *lc, const int inc)
 
static int get_local_sum (const int *level, const int w, const int h, const int xc, const int yc, const int hist_value)
 
static int get_local_sum_ts (const int *level, const int w, const int h, const int xc, const int yc)
 
static int get_gtx_flag_inc (const ResidualCoding *rc, const int xc, const int yc, const int last)
 
static int abs_level_gtx_flag_decode (VVCLocalContext *lc, const int inc)
 
static int par_level_flag_decode (VVCLocalContext *lc, const int inc)
 
static int par_level_flag_ts_decode (VVCLocalContext *lc)
 
static int sb_coded_flag_decode (VVCLocalContext *lc, const uint8_t *sb_coded_flag, const ResidualCoding *rc, const int xs, const int ys)
 
static int sig_coeff_flag_decode (VVCLocalContext *lc, const ResidualCoding *rc, const int xc, const int yc)
 
static int abs_get_rice_param (VVCLocalContext *lc, const ResidualCoding *rc, const int xc, const int yc, const int base_level)
 
static int abs_decode (VVCLocalContext *lc, const int c_rice_param)
 
static int abs_remainder_decode (VVCLocalContext *lc, const ResidualCoding *rc, const int xc, const int yc)
 
static int abs_remainder_ts_decode (VVCLocalContext *lc, const ResidualCoding *rc, const int xc, const int yc)
 
static int coeff_sign_flag_decode (VVCLocalContext *lc)
 
static int coeff_sign_flag_ts_decode (VVCLocalContext *lc, const CodingUnit *cu, const ResidualCoding *rc, const int xc, const int yc)
 
static int abs_level_gt1_flag_ts_decode (VVCLocalContext *lc, const CodingUnit *cu, const ResidualCoding *rc, const int xc, const int yc)
 
static int abs_level_gtx_flag_ts_decode (VVCLocalContext *lc, const int j)
 
static int dec_abs_level_decode (VVCLocalContext *lc, const ResidualCoding *rc, const int xc, const int yc, int *abs_level)
 
static void ep_update_hist (EntryPoint *ep, ResidualCoding *rc, const int remainder, const int addin)
 
static void init_residual_coding (const VVCLocalContext *lc, ResidualCoding *rc, const int log2_zo_tb_width, const int log2_zo_tb_height, TransformBlock *tb)
 
static int residual_ts_coding_subblock (VVCLocalContext *lc, ResidualCoding *rc, const int i)
 
static int hls_residual_ts_coding (VVCLocalContext *lc, TransformBlock *tb)
 
static int residual_coding_subblock (VVCLocalContext *lc, ResidualCoding *rc, const int i)
 
static void derive_last_scan_pos (ResidualCoding *rc)
 
static void last_significant_coeff_x_y_decode (ResidualCoding *rc, VVCLocalContext *lc, const int log2_zo_tb_width, const int log2_zo_tb_height)
 
static int hls_residual_coding (VVCLocalContext *lc, TransformBlock *tb)
 
int ff_vvc_residual_coding (VVCLocalContext *lc, TransformBlock *tb)
 
int ff_vvc_cu_coded_flag (VVCLocalContext *lc)
 
int ff_vvc_sbt_flag (VVCLocalContext *lc)
 
int ff_vvc_sbt_quad_flag (VVCLocalContext *lc)
 
int ff_vvc_sbt_horizontal_flag (VVCLocalContext *lc)
 
int ff_vvc_sbt_pos_flag (VVCLocalContext *lc)
 
int ff_vvc_lfnst_idx (VVCLocalContext *lc, const int inc)
 
int ff_vvc_mts_idx (VVCLocalContext *lc)
 
int ff_vvc_end_of_slice_flag_decode (VVCLocalContext *lc)
 
int ff_vvc_end_of_tile_one_bit (VVCLocalContext *lc)
 
int ff_vvc_end_of_subset_one_bit (VVCLocalContext *lc)
 

Variables

static const uint8_t init_values [4][SYNTAX_ELEMENT_LAST]
 
static const uint8_t qstate_translate_table [][2]
 

Macro Definition Documentation

◆ CABAC_MAX_BIN

#define CABAC_MAX_BIN   31

Definition at line 28 of file vvc_cabac.c.

◆ CNU

#define CNU   35

Definition at line 30 of file vvc_cabac.c.

◆ MAX_SUB_BLOCKS

#define MAX_SUB_BLOCKS   16

Definition at line 767 of file vvc_cabac.c.

◆ MAX_SUB_BLOCK_SIZE

#define MAX_SUB_BLOCK_SIZE   4

Definition at line 768 of file vvc_cabac.c.

◆ MAX_TB_SIZE

#define MAX_TB_SIZE   64

Definition at line 769 of file vvc_cabac.c.

◆ GET_CABAC

#define GET_CABAC (   ctx)    vvc_get_cabac(&lc->ep->cc, lc->ep->cabac_state, ctx)

Definition at line 913 of file vvc_cabac.c.

Enumeration Type Documentation

◆ SyntaxElement

Enumerator
ALF_CTB_FLAG 
ALF_USE_APS_FLAG 
ALF_CTB_CC_CB_IDC 
ALF_CTB_CC_CR_IDC 
ALF_CTB_FILTER_ALT_IDX 
SAO_MERGE_FLAG 
SAO_TYPE_IDX 
SPLIT_CU_FLAG 
SPLIT_QT_FLAG 
MTT_SPLIT_CU_VERTICAL_FLAG 
MTT_SPLIT_CU_BINARY_FLAG 
NON_INTER_FLAG 
CU_SKIP_FLAG 
PRED_MODE_IBC_FLAG 
PRED_MODE_FLAG 
PRED_MODE_PLT_FLAG 
CU_ACT_ENABLED_FLAG 
INTRA_BDPCM_LUMA_FLAG 
INTRA_BDPCM_LUMA_DIR_FLAG 
INTRA_MIP_FLAG 
INTRA_LUMA_REF_IDX 
INTRA_SUBPARTITIONS_MODE_FLAG 
INTRA_SUBPARTITIONS_SPLIT_FLAG 
INTRA_LUMA_MPM_FLAG 
INTRA_LUMA_NOT_PLANAR_FLAG 
INTRA_BDPCM_CHROMA_FLAG 
INTRA_BDPCM_CHROMA_DIR_FLAG 
CCLM_MODE_FLAG 
CCLM_MODE_IDX 
INTRA_CHROMA_PRED_MODE 
GENERAL_MERGE_FLAG 
INTER_PRED_IDC 
INTER_AFFINE_FLAG 
CU_AFFINE_TYPE_FLAG 
SYM_MVD_FLAG 
REF_IDX_LX 
MVP_LX_FLAG 
AMVR_FLAG 
AMVR_PRECISION_IDX 
BCW_IDX 
CU_CODED_FLAG 
CU_SBT_FLAG 
CU_SBT_QUAD_FLAG 
CU_SBT_HORIZONTAL_FLAG 
CU_SBT_POS_FLAG 
LFNST_IDX 
MTS_IDX 
COPY_ABOVE_PALETTE_INDICES_FLAG 
PALETTE_TRANSPOSE_FLAG 
RUN_COPY_FLAG 
REGULAR_MERGE_FLAG 
MMVD_MERGE_FLAG 
MMVD_CAND_FLAG 
MMVD_DISTANCE_IDX 
CIIP_FLAG 
MERGE_SUBBLOCK_FLAG 
MERGE_SUBBLOCK_IDX 
MERGE_IDX 
ABS_MVD_GREATER0_FLAG 
ABS_MVD_GREATER1_FLAG 
TU_Y_CODED_FLAG 
TU_CB_CODED_FLAG 
TU_CR_CODED_FLAG 
CU_QP_DELTA_ABS 
CU_CHROMA_QP_OFFSET_FLAG 
CU_CHROMA_QP_OFFSET_IDX 
TRANSFORM_SKIP_FLAG 
TU_JOINT_CBCR_RESIDUAL_FLAG 
LAST_SIG_COEFF_X_PREFIX 
LAST_SIG_COEFF_Y_PREFIX 
SB_CODED_FLAG 
SIG_COEFF_FLAG 
PAR_LEVEL_FLAG 
ABS_LEVEL_GTX_FLAG 
COEFF_SIGN_FLAG 
SYNTAX_ELEMENT_LAST 

Definition at line 32 of file vvc_cabac.c.

Function Documentation

◆ cabac_reinit()

static int cabac_reinit ( VVCLocalContext lc)
static

Definition at line 808 of file vvc_cabac.c.

Referenced by ff_vvc_cabac_init().

◆ cabac_init_state()

static void cabac_init_state ( VVCLocalContext lc)
static

Definition at line 813 of file vvc_cabac.c.

Referenced by ff_vvc_cabac_init().

◆ ff_vvc_cabac_init()

int ff_vvc_cabac_init ( VVCLocalContext lc,
const int  ctu_idx,
const int  rx,
const int  ry 
)

Definition at line 842 of file vvc_cabac.c.

Referenced by ff_vvc_coding_tree_unit().

◆ vvc_refill2()

static void vvc_refill2 ( CABACContext c)
static

Definition at line 860 of file vvc_cabac.c.

Referenced by vvc_get_cabac().

◆ vvc_get_cabac()

static int vvc_get_cabac ( CABACContext c,
VVCCabacState base,
const int  ctx 
)
inlinestatic

Definition at line 885 of file vvc_cabac.c.

◆ truncated_binary_decode()

static int truncated_binary_decode ( VVCLocalContext lc,
const int  c_max 
)
static

◆ limited_kth_order_egk_decode()

static int limited_kth_order_egk_decode ( CABACContext c,
const int  k,
const int  max_pre_ext_len,
const int  trunc_suffix_len 
)
static

Definition at line 932 of file vvc_cabac.c.

Referenced by abs_decode(), and ff_vvc_abs_mvd_minus2().

◆ get_left_top()

static av_always_inline void get_left_top ( const VVCLocalContext lc,
uint8_t *  left,
uint8_t *  top,
const int  x0,
const int  y0,
const uint8_t *  left_ctx,
const uint8_t *  top_ctx 
)
static

◆ get_inc()

static av_always_inline uint8_t get_inc ( VVCLocalContext lc,
const uint8_t *  ctx 
)
static

Definition at line 969 of file vvc_cabac.c.

Referenced by ff_vvc_cu_skip_flag(), and ff_vvc_intra_mip_flag().

◆ ff_vvc_sao_merge_flag_decode()

int ff_vvc_sao_merge_flag_decode ( VVCLocalContext lc)

Definition at line 976 of file vvc_cabac.c.

Referenced by hls_sao().

◆ ff_vvc_sao_type_idx_decode()

int ff_vvc_sao_type_idx_decode ( VVCLocalContext lc)

Definition at line 981 of file vvc_cabac.c.

Referenced by hls_sao().

◆ ff_vvc_sao_band_position_decode()

int ff_vvc_sao_band_position_decode ( VVCLocalContext lc)

Definition at line 991 of file vvc_cabac.c.

Referenced by hls_sao().

◆ ff_vvc_sao_offset_abs_decode()

int ff_vvc_sao_offset_abs_decode ( VVCLocalContext lc)

Definition at line 1000 of file vvc_cabac.c.

Referenced by hls_sao().

◆ ff_vvc_sao_offset_sign_decode()

int ff_vvc_sao_offset_sign_decode ( VVCLocalContext lc)

Definition at line 1010 of file vvc_cabac.c.

Referenced by hls_sao().

◆ ff_vvc_sao_eo_class_decode()

int ff_vvc_sao_eo_class_decode ( VVCLocalContext lc)

Definition at line 1015 of file vvc_cabac.c.

Referenced by hls_sao().

◆ ff_vvc_alf_ctb_flag()

int ff_vvc_alf_ctb_flag ( VVCLocalContext lc,
const int  rx,
const int  ry,
const int  c_idx 
)

Definition at line 1022 of file vvc_cabac.c.

Referenced by alf_params().

◆ ff_vvc_alf_use_aps_flag()

int ff_vvc_alf_use_aps_flag ( VVCLocalContext lc)

Definition at line 1037 of file vvc_cabac.c.

Referenced by alf_params().

◆ ff_vvc_alf_luma_prev_filter_idx()

int ff_vvc_alf_luma_prev_filter_idx ( VVCLocalContext lc)

Definition at line 1042 of file vvc_cabac.c.

Referenced by alf_params().

◆ ff_vvc_alf_luma_fixed_filter_idx()

int ff_vvc_alf_luma_fixed_filter_idx ( VVCLocalContext lc)

Definition at line 1047 of file vvc_cabac.c.

Referenced by alf_params().

◆ ff_vvc_alf_ctb_filter_alt_idx()

int ff_vvc_alf_ctb_filter_alt_idx ( VVCLocalContext lc,
const int  c_idx,
const int  num_chroma_filters 
)

Definition at line 1052 of file vvc_cabac.c.

Referenced by alf_params().

◆ ff_vvc_alf_ctb_cc_idc()

int ff_vvc_alf_ctb_cc_idc ( VVCLocalContext lc,
const int  rx,
const int  ry,
const int  idx,
const int  cc_filters_signalled 
)

Definition at line 1062 of file vvc_cabac.c.

Referenced by alf_params().

◆ ff_vvc_split_cu_flag()

int ff_vvc_split_cu_flag ( VVCLocalContext lc,
const int  x0,
const int  y0,
const int  cb_width,
const int  cb_height,
const int  is_chroma,
const VVCAllowedSplit a 
)

Definition at line 1084 of file vvc_cabac.c.

Referenced by hls_coding_tree().

◆ split_qt_flag_decode()

static int split_qt_flag_decode ( VVCLocalContext lc,
const int  x0,
const int  y0,
const int  ch_type,
const int  cqt_depth 
)
static

Definition at line 1106 of file vvc_cabac.c.

Referenced by ff_vvc_split_mode().

◆ mtt_split_cu_vertical_flag_decode()

static int mtt_split_cu_vertical_flag_decode ( VVCLocalContext lc,
const int  x0,
const int  y0,
const int  cb_width,
const int  cb_height,
const int  ch_type,
const VVCAllowedSplit a 
)
static

Definition at line 1120 of file vvc_cabac.c.

Referenced by ff_vvc_split_mode().

◆ mtt_split_cu_binary_flag_decode()

static int mtt_split_cu_binary_flag_decode ( VVCLocalContext lc,
const int  mtt_split_cu_vertical_flag,
const int  mtt_depth 
)
static

Definition at line 1156 of file vvc_cabac.c.

Referenced by ff_vvc_split_mode().

◆ ff_vvc_split_mode()

VVCSplitMode ff_vvc_split_mode ( VVCLocalContext lc,
const int  x0,
const int  y0,
const int  cb_width,
const int  cb_height,
const int  cqt_depth,
const int  mtt_depth,
const int  ch_type,
const VVCAllowedSplit a 
)

Definition at line 1162 of file vvc_cabac.c.

Referenced by hls_coding_tree().

◆ ff_vvc_non_inter_flag()

int ff_vvc_non_inter_flag ( VVCLocalContext lc,
const int  x0,
const int  y0,
const int  ch_type 
)

Definition at line 1196 of file vvc_cabac.c.

Referenced by mode_type_decode().

◆ ff_vvc_pred_mode_flag()

int ff_vvc_pred_mode_flag ( VVCLocalContext lc,
const int  is_chroma 
)

Definition at line 1206 of file vvc_cabac.c.

Referenced by pred_mode_decode().

◆ ff_vvc_pred_mode_plt_flag()

int ff_vvc_pred_mode_plt_flag ( VVCLocalContext lc)

Definition at line 1217 of file vvc_cabac.c.

Referenced by hls_coding_unit().

◆ ff_vvc_intra_bdpcm_luma_flag()

int ff_vvc_intra_bdpcm_luma_flag ( VVCLocalContext lc)

Definition at line 1222 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_intra_bdpcm_luma_dir_flag()

int ff_vvc_intra_bdpcm_luma_dir_flag ( VVCLocalContext lc)

Definition at line 1227 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_intra_bdpcm_chroma_flag()

int ff_vvc_intra_bdpcm_chroma_flag ( VVCLocalContext lc)

Definition at line 1232 of file vvc_cabac.c.

Referenced by intra_chroma_pred_modes().

◆ ff_vvc_intra_bdpcm_chroma_dir_flag()

int ff_vvc_intra_bdpcm_chroma_dir_flag ( VVCLocalContext lc)

Definition at line 1237 of file vvc_cabac.c.

Referenced by intra_chroma_pred_modes().

◆ ff_vvc_cu_skip_flag()

int ff_vvc_cu_skip_flag ( VVCLocalContext lc,
const uint8_t *  cu_skip_flag 
)

Definition at line 1242 of file vvc_cabac.c.

Referenced by pred_mode_decode().

◆ ff_vvc_pred_mode_ibc_flag()

int ff_vvc_pred_mode_ibc_flag ( VVCLocalContext lc,
const int  is_chroma 
)

Definition at line 1248 of file vvc_cabac.c.

Referenced by pred_mode_decode().

◆ ff_vvc_intra_mip_flag()

int ff_vvc_intra_mip_flag ( VVCLocalContext lc,
const uint8_t *  intra_mip_flag 
)

Definition at line 1260 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_intra_mip_transposed_flag()

int ff_vvc_intra_mip_transposed_flag ( VVCLocalContext lc)

Definition at line 1268 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_intra_mip_mode()

int ff_vvc_intra_mip_mode ( VVCLocalContext lc)

Definition at line 1273 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_intra_luma_ref_idx()

int ff_vvc_intra_luma_ref_idx ( VVCLocalContext lc)

Definition at line 1282 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_intra_subpartitions_mode_flag()

int ff_vvc_intra_subpartitions_mode_flag ( VVCLocalContext lc)

Definition at line 1292 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_isp_split_type()

enum IspType ff_vvc_isp_split_type ( VVCLocalContext lc,
const int  intra_subpartitions_mode_flag 
)

Definition at line 1297 of file vvc_cabac.c.

Referenced by intra_luma_pred_modes().

◆ ff_vvc_intra_luma_mpm_flag()

int ff_vvc_intra_luma_mpm_flag ( VVCLocalContext lc)

Definition at line 1304 of file vvc_cabac.c.

Referenced by luma_intra_pred_mode().

◆ ff_vvc_intra_luma_not_planar_flag()

int ff_vvc_intra_luma_not_planar_flag ( VVCLocalContext lc,
const int  intra_subpartitions_mode_flag 
)

Definition at line 1309 of file vvc_cabac.c.

Referenced by luma_intra_pred_mode().

◆ ff_vvc_intra_luma_mpm_idx()

int ff_vvc_intra_luma_mpm_idx ( VVCLocalContext lc)

Definition at line 1314 of file vvc_cabac.c.

Referenced by luma_intra_pred_mode().

◆ ff_vvc_intra_luma_mpm_remainder()

int ff_vvc_intra_luma_mpm_remainder ( VVCLocalContext lc)

Definition at line 1322 of file vvc_cabac.c.

Referenced by luma_intra_pred_mode().

◆ ff_vvc_cclm_mode_flag()

int ff_vvc_cclm_mode_flag ( VVCLocalContext lc)

Definition at line 1327 of file vvc_cabac.c.

Referenced by intra_chroma_pred_modes().

◆ ff_vvc_cclm_mode_idx()

int ff_vvc_cclm_mode_idx ( VVCLocalContext lc)

Definition at line 1332 of file vvc_cabac.c.

Referenced by intra_chroma_pred_modes().

◆ ff_vvc_intra_chroma_pred_mode()

int ff_vvc_intra_chroma_pred_mode ( VVCLocalContext lc)

Definition at line 1339 of file vvc_cabac.c.

Referenced by intra_chroma_pred_modes().

◆ ff_vvc_general_merge_flag()

int ff_vvc_general_merge_flag ( VVCLocalContext lc)

Definition at line 1346 of file vvc_cabac.c.

Referenced by inter_data().

◆ get_inter_flag_inc()

static int get_inter_flag_inc ( VVCLocalContext lc,
const int  x0,
const int  y0 
)
static

Definition at line 1351 of file vvc_cabac.c.

Referenced by ff_vvc_inter_affine_flag(), and ff_vvc_merge_subblock_flag().

◆ ff_vvc_merge_subblock_flag()

int ff_vvc_merge_subblock_flag ( VVCLocalContext lc)

Definition at line 1362 of file vvc_cabac.c.

Referenced by hls_merge_data().

◆ ff_vvc_merge_subblock_idx()

int ff_vvc_merge_subblock_idx ( VVCLocalContext lc,
const int  max_num_subblock_merge_cand 
)

Definition at line 1368 of file vvc_cabac.c.

Referenced by merge_data_subblock().

◆ ff_vvc_regular_merge_flag()

int ff_vvc_regular_merge_flag ( VVCLocalContext lc,
const int  cu_skip_flag 
)

Definition at line 1378 of file vvc_cabac.c.

Referenced by merge_data_block().

◆ ff_vvc_mmvd_merge_flag()

int ff_vvc_mmvd_merge_flag ( VVCLocalContext lc)

Definition at line 1384 of file vvc_cabac.c.

Referenced by merge_data_regular().

◆ ff_vvc_mmvd_cand_flag()

int ff_vvc_mmvd_cand_flag ( VVCLocalContext lc)

Definition at line 1389 of file vvc_cabac.c.

Referenced by merge_data_regular().

◆ mmvd_distance_idx_decode()

static int mmvd_distance_idx_decode ( VVCLocalContext lc)
static

Definition at line 1394 of file vvc_cabac.c.

Referenced by ff_vvc_mmvd_offset_coding().

◆ mmvd_direction_idx_decode()

static int mmvd_direction_idx_decode ( VVCLocalContext lc)
static

Definition at line 1404 of file vvc_cabac.c.

Referenced by ff_vvc_mmvd_offset_coding().

◆ ff_vvc_mmvd_offset_coding()

void ff_vvc_mmvd_offset_coding ( VVCLocalContext lc,
Mv mmvd_offset,
const int  ph_mmvd_fullpel_only_flag 
)

Definition at line 1409 of file vvc_cabac.c.

Referenced by merge_data_regular().

◆ get_luma_pred_mode()

static PredMode get_luma_pred_mode ( VVCLocalContext lc)
static

Definition at line 1419 of file vvc_cabac.c.

Referenced by ff_vvc_merge_idx().

◆ ff_vvc_merge_idx()

int ff_vvc_merge_idx ( VVCLocalContext lc)

Definition at line 1436 of file vvc_cabac.c.

Referenced by merge_data_ciip(), merge_data_ibc(), and merge_data_regular().

◆ ff_vvc_merge_gpm_partition_idx()

int ff_vvc_merge_gpm_partition_idx ( VVCLocalContext lc)

Definition at line 1451 of file vvc_cabac.c.

Referenced by merge_data_gpm().

◆ ff_vvc_merge_gpm_idx()

int ff_vvc_merge_gpm_idx ( VVCLocalContext lc,
const int  idx 
)

Definition at line 1461 of file vvc_cabac.c.

Referenced by merge_data_gpm().

◆ ff_vvc_ciip_flag()

int ff_vvc_ciip_flag ( VVCLocalContext lc)

Definition at line 1475 of file vvc_cabac.c.

Referenced by ciip_flag_decode().

◆ ff_vvc_pred_flag()

PredFlag ff_vvc_pred_flag ( VVCLocalContext lc,
const int  is_b 
)

Definition at line 1480 of file vvc_cabac.c.

Referenced by mvp_data().

◆ ff_vvc_inter_affine_flag()

int ff_vvc_inter_affine_flag ( VVCLocalContext lc)

Definition at line 1495 of file vvc_cabac.c.

Referenced by mvp_data().

◆ ff_vvc_cu_affine_type_flag()

int ff_vvc_cu_affine_type_flag ( VVCLocalContext lc)

Definition at line 1501 of file vvc_cabac.c.

Referenced by mvp_data().

◆ ff_vvc_sym_mvd_flag()

int ff_vvc_sym_mvd_flag ( VVCLocalContext lc)

Definition at line 1506 of file vvc_cabac.c.

Referenced by mvp_data().

◆ ff_vvc_ref_idx_lx()

int ff_vvc_ref_idx_lx ( VVCLocalContext lc,
const uint8_t  nb_refs 
)

Definition at line 1511 of file vvc_cabac.c.

Referenced by ref_idx_decode().

◆ ff_vvc_abs_mvd_greater0_flag()

int ff_vvc_abs_mvd_greater0_flag ( VVCLocalContext lc)

Definition at line 1526 of file vvc_cabac.c.

Referenced by hls_mvd_coding().

◆ ff_vvc_abs_mvd_greater1_flag()

int ff_vvc_abs_mvd_greater1_flag ( VVCLocalContext lc)

Definition at line 1531 of file vvc_cabac.c.

Referenced by hls_mvd_coding().

◆ ff_vvc_abs_mvd_minus2()

int ff_vvc_abs_mvd_minus2 ( VVCLocalContext lc)

Definition at line 1536 of file vvc_cabac.c.

Referenced by hls_mvd_coding().

◆ ff_vvc_mvd_sign_flag()

int ff_vvc_mvd_sign_flag ( VVCLocalContext lc)

Definition at line 1541 of file vvc_cabac.c.

Referenced by hls_mvd_coding().

◆ ff_vvc_mvp_lx_flag()

int ff_vvc_mvp_lx_flag ( VVCLocalContext lc)

Definition at line 1546 of file vvc_cabac.c.

Referenced by mvp_data(), and mvp_data_ibc().

◆ amvr_flag()

static int amvr_flag ( VVCLocalContext lc,
const int  inter_affine_flag 
)
static

Definition at line 1551 of file vvc_cabac.c.

Referenced by ff_vvc_amvr_shift().

◆ amvr_precision_idx()

static int amvr_precision_idx ( VVCLocalContext lc,
const int  inc,
const int  c_max 
)
static

Definition at line 1556 of file vvc_cabac.c.

Referenced by ff_vvc_amvr_shift().

◆ ff_vvc_amvr_shift()

int ff_vvc_amvr_shift ( VVCLocalContext lc,
const int  inter_affine_flag,
const PredMode  pred_mode,
const int  has_amvr_flag 
)

Definition at line 1567 of file vvc_cabac.c.

Referenced by mvp_data(), and mvp_data_ibc().

◆ ff_vvc_bcw_idx()

int ff_vvc_bcw_idx ( VVCLocalContext lc,
const int  no_backward_pred_flag 
)

Definition at line 1590 of file vvc_cabac.c.

Referenced by bcw_idx_decode().

◆ ff_vvc_tu_cb_coded_flag()

int ff_vvc_tu_cb_coded_flag ( VVCLocalContext lc)

Definition at line 1601 of file vvc_cabac.c.

Referenced by hls_transform_unit().

◆ ff_vvc_tu_cr_coded_flag()

int ff_vvc_tu_cr_coded_flag ( VVCLocalContext lc,
int  tu_cb_coded_flag 
)

Definition at line 1606 of file vvc_cabac.c.

Referenced by hls_transform_unit().

◆ ff_vvc_tu_y_coded_flag()

int ff_vvc_tu_y_coded_flag ( VVCLocalContext lc)

Definition at line 1611 of file vvc_cabac.c.

Referenced by tu_y_coded_flag_decode().

◆ ff_vvc_cu_qp_delta_abs()

int ff_vvc_cu_qp_delta_abs ( VVCLocalContext lc)

Definition at line 1625 of file vvc_cabac.c.

Referenced by set_qp_y().

◆ ff_vvc_cu_qp_delta_sign_flag()

int ff_vvc_cu_qp_delta_sign_flag ( VVCLocalContext lc)

Definition at line 1653 of file vvc_cabac.c.

Referenced by set_qp_y().

◆ ff_vvc_cu_chroma_qp_offset_flag()

int ff_vvc_cu_chroma_qp_offset_flag ( VVCLocalContext lc)

Definition at line 1658 of file vvc_cabac.c.

Referenced by chroma_qp_offset_decode().

◆ ff_vvc_cu_chroma_qp_offset_idx()

int ff_vvc_cu_chroma_qp_offset_idx ( VVCLocalContext lc)

Definition at line 1663 of file vvc_cabac.c.

Referenced by chroma_qp_offset_decode().

◆ last_significant_coeff_xy_prefix()

static av_always_inline int last_significant_coeff_xy_prefix ( VVCLocalContext lc,
const int  log2_tb_size,
const int  log2_zo_tb_size,
const int  c_idx,
const int  ctx 
)
static

◆ last_significant_coeff_x_prefix_decode()

static av_always_inline int last_significant_coeff_x_prefix_decode ( VVCLocalContext lc,
const int  log2_tb_width,
const int  log2_zo_tb_width,
const int  c_idx 
)
static

Definition at line 1694 of file vvc_cabac.c.

Referenced by last_significant_coeff_x_y_decode().

◆ last_significant_coeff_y_prefix_decode()

static av_always_inline int last_significant_coeff_y_prefix_decode ( VVCLocalContext lc,
const int  log2_tb_height,
const int  log2_zo_tb_height,
const int  c_idx 
)
static

Definition at line 1700 of file vvc_cabac.c.

Referenced by last_significant_coeff_x_y_decode().

◆ last_sig_coeff_suffix_decode()

static av_always_inline int last_sig_coeff_suffix_decode ( VVCLocalContext lc,
const int  last_significant_coeff_y_prefix 
)
static

Definition at line 1706 of file vvc_cabac.c.

Referenced by last_significant_coeff_x_y_decode().

◆ ff_vvc_tu_joint_cbcr_residual_flag()

int ff_vvc_tu_joint_cbcr_residual_flag ( VVCLocalContext lc,
const int  tu_cb_coded_flag,
const int  tu_cr_coded_flag 
)

Definition at line 1717 of file vvc_cabac.c.

Referenced by hls_transform_unit().

◆ ff_vvc_transform_skip_flag()

int ff_vvc_transform_skip_flag ( VVCLocalContext lc,
const int  inc 
)

Definition at line 1722 of file vvc_cabac.c.

Referenced by hls_transform_unit().

◆ get_local_sum()

static int get_local_sum ( const int level,
const int  w,
const int  h,
const int  xc,
const int  yc,
const int  hist_value 
)
static

Definition at line 1728 of file vvc_cabac.c.

Referenced by abs_get_rice_param(), get_gtx_flag_inc(), and sig_coeff_flag_decode().

◆ get_local_sum_ts()

static int get_local_sum_ts ( const int level,
const int  w,
const int  h,
const int  xc,
const int  yc 
)
static

Definition at line 1749 of file vvc_cabac.c.

Referenced by sig_coeff_flag_decode().

◆ get_gtx_flag_inc()

static int get_gtx_flag_inc ( const ResidualCoding rc,
const int  xc,
const int  yc,
const int  last 
)
static

Definition at line 1760 of file vvc_cabac.c.

Referenced by residual_coding_subblock().

◆ abs_level_gtx_flag_decode()

static int abs_level_gtx_flag_decode ( VVCLocalContext lc,
const int  inc 
)
static

Definition at line 1783 of file vvc_cabac.c.

Referenced by residual_coding_subblock().

◆ par_level_flag_decode()

static int par_level_flag_decode ( VVCLocalContext lc,
const int  inc 
)
static

Definition at line 1788 of file vvc_cabac.c.

Referenced by residual_coding_subblock().

◆ par_level_flag_ts_decode()

static int par_level_flag_ts_decode ( VVCLocalContext lc)
static

Definition at line 1793 of file vvc_cabac.c.

Referenced by residual_ts_coding_subblock().

◆ sb_coded_flag_decode()

static int sb_coded_flag_decode ( VVCLocalContext lc,
const uint8_t *  sb_coded_flag,
const ResidualCoding rc,
const int  xs,
const int  ys 
)
static

Definition at line 1799 of file vvc_cabac.c.

Referenced by residual_coding_subblock(), and residual_ts_coding_subblock().

◆ sig_coeff_flag_decode()

static int sig_coeff_flag_decode ( VVCLocalContext lc,
const ResidualCoding rc,
const int  xc,
const int  yc 
)
static

Definition at line 1820 of file vvc_cabac.c.

Referenced by residual_coding_subblock(), and residual_ts_coding_subblock().

◆ abs_get_rice_param()

static int abs_get_rice_param ( VVCLocalContext lc,
const ResidualCoding rc,
const int  xc,
const int  yc,
const int  base_level 
)
static

Definition at line 1843 of file vvc_cabac.c.

Referenced by abs_remainder_decode(), and dec_abs_level_decode().

◆ abs_decode()

static int abs_decode ( VVCLocalContext lc,
const int  c_rice_param 
)
static

◆ abs_remainder_decode()

static int abs_remainder_decode ( VVCLocalContext lc,
const ResidualCoding rc,
const int  xc,
const int  yc 
)
static

Definition at line 1891 of file vvc_cabac.c.

Referenced by residual_coding_subblock().

◆ abs_remainder_ts_decode()

static int abs_remainder_ts_decode ( VVCLocalContext lc,
const ResidualCoding rc,
const int  xc,
const int  yc 
)
static

Definition at line 1906 of file vvc_cabac.c.

Referenced by residual_ts_coding_subblock().

◆ coeff_sign_flag_decode()

static int coeff_sign_flag_decode ( VVCLocalContext lc)
static

Definition at line 1915 of file vvc_cabac.c.

Referenced by residual_coding_subblock(), and residual_ts_coding_subblock().

◆ coeff_sign_flag_ts_decode()

static int coeff_sign_flag_ts_decode ( VVCLocalContext lc,
const CodingUnit cu,
const ResidualCoding rc,
const int  xc,
const int  yc 
)
static

Definition at line 1921 of file vvc_cabac.c.

Referenced by residual_ts_coding_subblock().

◆ abs_level_gt1_flag_ts_decode()

static int abs_level_gt1_flag_ts_decode ( VVCLocalContext lc,
const CodingUnit cu,
const ResidualCoding rc,
const int  xc,
const int  yc 
)
static

Definition at line 1940 of file vvc_cabac.c.

Referenced by residual_ts_coding_subblock().

◆ abs_level_gtx_flag_ts_decode()

static int abs_level_gtx_flag_ts_decode ( VVCLocalContext lc,
const int  j 
)
static

Definition at line 1956 of file vvc_cabac.c.

Referenced by residual_ts_coding_subblock().

◆ dec_abs_level_decode()

static int dec_abs_level_decode ( VVCLocalContext lc,
const ResidualCoding rc,
const int  xc,
const int  yc,
int abs_level 
)
static

Definition at line 1966 of file vvc_cabac.c.

Referenced by residual_coding_subblock().

◆ ep_update_hist()

static void ep_update_hist ( EntryPoint ep,
ResidualCoding rc,
const int  remainder,
const int  addin 
)
static

Definition at line 1982 of file vvc_cabac.c.

Referenced by residual_coding_subblock().

◆ init_residual_coding()

static void init_residual_coding ( const VVCLocalContext lc,
ResidualCoding rc,
const int  log2_zo_tb_width,
const int  log2_zo_tb_height,
TransformBlock tb 
)
static

Definition at line 1992 of file vvc_cabac.c.

Referenced by hls_residual_coding(), and hls_residual_ts_coding().

◆ residual_ts_coding_subblock()

static int residual_ts_coding_subblock ( VVCLocalContext lc,
ResidualCoding rc,
const int  i 
)
static

< AbsLevelPass2

Definition at line 2036 of file vvc_cabac.c.

Referenced by hls_residual_ts_coding().

◆ hls_residual_ts_coding()

static int hls_residual_ts_coding ( VVCLocalContext lc,
TransformBlock tb 
)
static

Definition at line 2154 of file vvc_cabac.c.

Referenced by ff_vvc_residual_coding().

◆ residual_coding_subblock()

static int residual_coding_subblock ( VVCLocalContext lc,
ResidualCoding rc,
const int  i 
)
inlinestatic

Definition at line 2168 of file vvc_cabac.c.

Referenced by hls_residual_coding().

◆ derive_last_scan_pos()

static void derive_last_scan_pos ( ResidualCoding rc)
static

Definition at line 2312 of file vvc_cabac.c.

Referenced by hls_residual_coding().

◆ last_significant_coeff_x_y_decode()

static void last_significant_coeff_x_y_decode ( ResidualCoding rc,
VVCLocalContext lc,
const int  log2_zo_tb_width,
const int  log2_zo_tb_height 
)
static

Definition at line 2328 of file vvc_cabac.c.

Referenced by hls_residual_coding().

◆ hls_residual_coding()

static int hls_residual_coding ( VVCLocalContext lc,
TransformBlock tb 
)
static

Definition at line 2359 of file vvc_cabac.c.

Referenced by ff_vvc_residual_coding().

◆ ff_vvc_residual_coding()

int ff_vvc_residual_coding ( VVCLocalContext lc,
TransformBlock tb 
)

Definition at line 2407 of file vvc_cabac.c.

Referenced by hls_transform_unit().

◆ ff_vvc_cu_coded_flag()

int ff_vvc_cu_coded_flag ( VVCLocalContext lc)

Definition at line 2415 of file vvc_cabac.c.

Referenced by hls_coding_unit().

◆ ff_vvc_sbt_flag()

int ff_vvc_sbt_flag ( VVCLocalContext lc)

Definition at line 2420 of file vvc_cabac.c.

Referenced by sbt_info().

◆ ff_vvc_sbt_quad_flag()

int ff_vvc_sbt_quad_flag ( VVCLocalContext lc)

Definition at line 2428 of file vvc_cabac.c.

Referenced by sbt_info().

◆ ff_vvc_sbt_horizontal_flag()

int ff_vvc_sbt_horizontal_flag ( VVCLocalContext lc)

Definition at line 2433 of file vvc_cabac.c.

Referenced by sbt_info().

◆ ff_vvc_sbt_pos_flag()

int ff_vvc_sbt_pos_flag ( VVCLocalContext lc)

Definition at line 2441 of file vvc_cabac.c.

Referenced by sbt_info().

◆ ff_vvc_lfnst_idx()

int ff_vvc_lfnst_idx ( VVCLocalContext lc,
const int  inc 
)

Definition at line 2446 of file vvc_cabac.c.

Referenced by lfnst_idx_decode().

◆ ff_vvc_mts_idx()

int ff_vvc_mts_idx ( VVCLocalContext lc)

Definition at line 2455 of file vvc_cabac.c.

Referenced by mts_idx_decode().

◆ ff_vvc_end_of_slice_flag_decode()

int ff_vvc_end_of_slice_flag_decode ( VVCLocalContext lc)

Definition at line 2465 of file vvc_cabac.c.

Referenced by hls_coding_tree_unit().

◆ ff_vvc_end_of_tile_one_bit()

int ff_vvc_end_of_tile_one_bit ( VVCLocalContext lc)

Definition at line 2470 of file vvc_cabac.c.

Referenced by hls_coding_tree_unit().

◆ ff_vvc_end_of_subset_one_bit()

int ff_vvc_end_of_subset_one_bit ( VVCLocalContext lc)

Definition at line 2475 of file vvc_cabac.c.

Referenced by hls_coding_tree_unit().

Variable Documentation

◆ init_values

const uint8_t init_values[4][SYNTAX_ELEMENT_LAST]
static

Definition at line 111 of file vvc_cabac.c.

Referenced by cabac_init_state().

◆ qstate_translate_table

const uint8_t qstate_translate_table[][2]
static
Initial value:
= {
{ 0, 2 }, { 2, 0 }, { 1, 3 }, { 3, 1 }
}

Definition at line 1962 of file vvc_cabac.c.

Referenced by residual_coding_subblock().