|
FFmpeg
|
#include "libavutil/attributes.h"#include "libavutil/common.h"#include "libavcodec/cabac_functions.h"#include "data.h"#include "hevc.h"#include "hevcdec.h"Go to the source code of this file.
Macros | |
| #define | CABAC_MAX_BIN 31 |
| #define | CABAC_ELEMS(ELEM) |
| #define | OFFSET(NAME, NUM_BINS) |
| #define | CNU 154 |
| #define | GET_CABAC(ctx) |
| #define | GET_COORD(offset, n) |
Enumerations | |
| enum | |
| Offset to ctxIdx 0 in init_values and states. More... | |
Variables | |
| static const uint8_t | init_values [3][HEVC_CONTEXTS] |
| Indexed by init_type. | |
| static const uint8_t | scan_1x1 [1] |
| static const uint8_t | horiz_scan2x2_x [4] |
| static const uint8_t | horiz_scan2x2_y [4] |
| static const uint8_t | horiz_scan4x4_x [16] |
| static const uint8_t | horiz_scan4x4_y [16] |
| static const uint8_t | horiz_scan8x8_inv [8][8] |
| static const uint8_t | diag_scan2x2_x [4] |
| static const uint8_t | diag_scan2x2_y [4] |
| static const uint8_t | diag_scan2x2_inv [2][2] |
| static const uint8_t | diag_scan4x4_inv [4][4] |
| static const uint8_t | diag_scan8x8_inv [8][8] |
| #define CABAC_MAX_BIN 31 |
Definition at line 32 of file cabac.c.
Referenced by coeff_abs_level_remaining_decode(), and mvd_decode().
| #define OFFSET | ( | NAME, | |
| NUM_BINS ) |
| #define GET_CABAC | ( | ctx | ) |
Definition at line 514 of file cabac.c.
Referenced by abs_level_gt1_flag_ts_decode(), abs_level_gtx_flag_decode(), abs_level_gtx_flag_ts_decode(), abs_mvd_greater0_flag_decode(), abs_mvd_greater1_flag_decode(), amvr_flag(), amvr_precision_idx(), coeff_abs_level_greater1_flag_decode(), coeff_abs_level_greater2_flag_decode(), coeff_sign_flag_ts_decode(), explicit_rdpcm_dir_flag_decode(), explicit_rdpcm_flag_decode(), ff_hevc_cbf_cb_cr_decode(), ff_hevc_cbf_luma_decode(), ff_hevc_cu_chroma_qp_offset_flag(), ff_hevc_cu_chroma_qp_offset_idx(), ff_hevc_cu_qp_delta_abs(), ff_hevc_cu_transquant_bypass_flag_decode(), ff_hevc_inter_pred_idc_decode(), ff_hevc_intra_chroma_pred_mode_decode(), ff_hevc_log2_res_scale_abs(), ff_hevc_merge_flag_decode(), ff_hevc_merge_idx_decode(), ff_hevc_mvp_lx_flag_decode(), ff_hevc_no_residual_syntax_flag_decode(), ff_hevc_part_mode_decode(), ff_hevc_pred_mode_decode(), ff_hevc_prev_intra_luma_pred_flag_decode(), ff_hevc_ref_idx_lx_decode(), ff_hevc_res_scale_sign_flag(), ff_hevc_sao_merge_flag_decode(), ff_hevc_sao_type_idx_decode(), ff_hevc_skip_flag_decode(), ff_hevc_split_coding_unit_flag_decode(), ff_hevc_split_transform_flag_decode(), ff_vvc_abs_mvd_greater0_flag(), ff_vvc_abs_mvd_greater1_flag(), ff_vvc_alf_ctb_cc_idc(), ff_vvc_alf_ctb_filter_alt_idx(), ff_vvc_alf_ctb_flag(), ff_vvc_alf_use_aps_flag(), ff_vvc_bcw_idx(), ff_vvc_cclm_mode_flag(), ff_vvc_cclm_mode_idx(), ff_vvc_ciip_flag(), ff_vvc_copy_above_palette_indices_flag(), ff_vvc_cu_act_enabled_flag(), ff_vvc_cu_affine_type_flag(), ff_vvc_cu_chroma_qp_offset_flag(), ff_vvc_cu_chroma_qp_offset_idx(), ff_vvc_cu_coded_flag(), ff_vvc_cu_qp_delta_abs(), ff_vvc_cu_skip_flag(), ff_vvc_general_merge_flag(), ff_vvc_inter_affine_flag(), ff_vvc_intra_bdpcm_chroma_dir_flag(), ff_vvc_intra_bdpcm_chroma_flag(), ff_vvc_intra_bdpcm_luma_dir_flag(), ff_vvc_intra_bdpcm_luma_flag(), ff_vvc_intra_chroma_pred_mode(), ff_vvc_intra_luma_mpm_flag(), ff_vvc_intra_luma_not_planar_flag(), ff_vvc_intra_luma_ref_idx(), ff_vvc_intra_mip_flag(), ff_vvc_intra_subpartitions_mode_flag(), ff_vvc_isp_split_type(), ff_vvc_lfnst_idx(), ff_vvc_merge_gpm_idx(), ff_vvc_merge_idx(), ff_vvc_merge_subblock_flag(), ff_vvc_merge_subblock_idx(), ff_vvc_mmvd_cand_flag(), ff_vvc_mmvd_merge_flag(), ff_vvc_mts_idx(), ff_vvc_mvp_lx_flag(), ff_vvc_non_inter_flag(), ff_vvc_palette_transpose_flag(), ff_vvc_pred_flag(), ff_vvc_pred_mode_flag(), ff_vvc_pred_mode_ibc_flag(), ff_vvc_pred_mode_plt_flag(), ff_vvc_ref_idx_lx(), ff_vvc_regular_merge_flag(), ff_vvc_run_copy_flag(), ff_vvc_sao_merge_flag_decode(), ff_vvc_sao_type_idx_decode(), ff_vvc_sbt_flag(), ff_vvc_sbt_horizontal_flag(), ff_vvc_sbt_pos_flag(), ff_vvc_sbt_quad_flag(), ff_vvc_split_cu_flag(), ff_vvc_sym_mvd_flag(), ff_vvc_transform_skip_flag(), ff_vvc_tu_cb_coded_flag(), ff_vvc_tu_cr_coded_flag(), ff_vvc_tu_joint_cbcr_residual_flag(), ff_vvc_tu_y_coded_flag(), hevc_transform_skip_flag_decode(), last_significant_coeff_xy_prefix(), last_significant_coeff_xy_prefix_decode(), mmvd_distance_idx_decode(), mtt_split_cu_binary_flag_decode(), mtt_split_cu_vertical_flag_decode(), par_level_flag_decode(), par_level_flag_ts_decode(), sb_coded_flag_decode(), sig_coeff_flag_decode(), significant_coeff_flag_decode(), significant_coeff_flag_decode_0(), significant_coeff_group_flag_decode(), and split_qt_flag_decode().
| #define GET_COORD | ( | offset, | |
| n ) |
Referenced by ff_hevc_hls_residual_coding().
| void ff_hevc_save_states | ( | HEVCLocalContext * | lc, |
| const HEVCPPS * | pps, | ||
| int | ctb_addr_ts ) |
Definition at line 402 of file cabac.c.
Referenced by hls_decode_entry(), and hls_decode_entry_wpp().
|
static |
Definition at line 417 of file cabac.c.
Referenced by ff_hevc_cabac_init().
|
static |
Definition at line 425 of file cabac.c.
Referenced by ff_hevc_cabac_init(), and ff_vvc_cabac_init().
|
static |
Definition at line 430 of file cabac.c.
Referenced by ff_hevc_cabac_init(), and ff_vvc_cabac_init().
| int ff_hevc_cabac_init | ( | HEVCLocalContext * | lc, |
| const HEVCPPS * | pps, | ||
| int | ctb_addr_ts, | ||
| const uint8_t * | data, | ||
| size_t | size, | ||
| int | is_wpp ) |
Definition at line 454 of file cabac.c.
Referenced by hls_decode_entry(), and hls_decode_entry_wpp().
| int ff_hevc_sao_merge_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 516 of file cabac.c.
Referenced by hls_sao_param().
| int ff_hevc_sao_type_idx_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 521 of file cabac.c.
Referenced by hls_sao_param().
| int ff_hevc_sao_band_position_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 531 of file cabac.c.
Referenced by hls_sao_param().
| int ff_hevc_sao_offset_abs_decode | ( | HEVCLocalContext * | lc, |
| int | bit_depth ) |
Definition at line 541 of file cabac.c.
Referenced by hls_sao_param().
| int ff_hevc_sao_offset_sign_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 551 of file cabac.c.
Referenced by hls_sao_param().
| int ff_hevc_sao_eo_class_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 556 of file cabac.c.
Referenced by hls_sao_param().
| int ff_hevc_end_of_slice_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 563 of file cabac.c.
Referenced by hls_coding_quadtree().
| int ff_hevc_cu_transquant_bypass_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 568 of file cabac.c.
Referenced by hls_coding_unit().
| int ff_hevc_skip_flag_decode | ( | HEVCLocalContext * | lc, |
| uint8_t * | skip_flag, | ||
| int | x0, | ||
| int | y0, | ||
| int | x_cb, | ||
| int | y_cb, | ||
| int | min_cb_width ) |
Definition at line 573 of file cabac.c.
Referenced by hls_coding_unit().
| int ff_hevc_cu_qp_delta_abs | ( | HEVCLocalContext * | lc | ) |
Definition at line 586 of file cabac.c.
Referenced by hls_transform_unit().
| int ff_hevc_cu_qp_delta_sign_flag | ( | HEVCLocalContext * | lc | ) |
Definition at line 613 of file cabac.c.
Referenced by hls_transform_unit().
| int ff_hevc_cu_chroma_qp_offset_flag | ( | HEVCLocalContext * | lc | ) |
Definition at line 618 of file cabac.c.
Referenced by hls_transform_unit().
| int ff_hevc_cu_chroma_qp_offset_idx | ( | HEVCLocalContext * | lc, |
| int | chroma_qp_offset_list_len_minus1 ) |
Definition at line 623 of file cabac.c.
Referenced by hls_transform_unit().
| int ff_hevc_pred_mode_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 634 of file cabac.c.
Referenced by hls_coding_unit().
| int ff_hevc_split_coding_unit_flag_decode | ( | HEVCLocalContext * | lc, |
| uint8_t * | tab_ct_depth, | ||
| const HEVCSPS * | sps, | ||
| int | ct_depth, | ||
| int | x0, | ||
| int | y0 ) |
Definition at line 639 of file cabac.c.
Referenced by hls_coding_quadtree().
| int ff_hevc_part_mode_decode | ( | HEVCLocalContext * | lc, |
| const HEVCSPS * | sps, | ||
| int | log2_cb_size ) |
Definition at line 660 of file cabac.c.
Referenced by hls_coding_unit().
| int ff_hevc_pcm_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 697 of file cabac.c.
Referenced by hls_coding_unit().
| int ff_hevc_prev_intra_luma_pred_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 702 of file cabac.c.
Referenced by intra_prediction_unit().
| int ff_hevc_mpm_idx_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 707 of file cabac.c.
Referenced by intra_prediction_unit().
| int ff_hevc_rem_intra_luma_pred_mode_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 715 of file cabac.c.
Referenced by intra_prediction_unit().
| int ff_hevc_intra_chroma_pred_mode_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 725 of file cabac.c.
Referenced by intra_prediction_unit().
| int ff_hevc_merge_idx_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 736 of file cabac.c.
Referenced by hls_prediction_unit().
| int ff_hevc_merge_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 747 of file cabac.c.
Referenced by hls_prediction_unit().
| int ff_hevc_inter_pred_idc_decode | ( | HEVCLocalContext * | lc, |
| int | nPbW, | ||
| int | nPbH ) |
Definition at line 752 of file cabac.c.
Referenced by hevc_luma_mv_mvp_mode().
| int ff_hevc_ref_idx_lx_decode | ( | HEVCLocalContext * | lc, |
| int | num_ref_idx_lx ) |
Definition at line 762 of file cabac.c.
Referenced by hevc_luma_mv_mvp_mode().
| int ff_hevc_mvp_lx_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 778 of file cabac.c.
Referenced by hevc_luma_mv_mvp_mode().
| int ff_hevc_no_residual_syntax_flag_decode | ( | HEVCLocalContext * | lc | ) |
Definition at line 783 of file cabac.c.
Referenced by hls_coding_unit().
|
static |
Definition at line 788 of file cabac.c.
Referenced by ff_hevc_hls_mvd_coding().
|
static |
Definition at line 793 of file cabac.c.
Referenced by ff_hevc_hls_mvd_coding().
|
static |
Definition at line 798 of file cabac.c.
Referenced by ff_hevc_hls_mvd_coding().
|
static |
Definition at line 816 of file cabac.c.
Referenced by ff_hevc_hls_mvd_coding().
| int ff_hevc_split_transform_flag_decode | ( | HEVCLocalContext * | lc, |
| int | log2_trafo_size ) |
Definition at line 821 of file cabac.c.
Referenced by hls_transform_tree().
| int ff_hevc_cbf_cb_cr_decode | ( | HEVCLocalContext * | lc, |
| int | trafo_depth ) |
Definition at line 826 of file cabac.c.
Referenced by hls_transform_tree().
| int ff_hevc_cbf_luma_decode | ( | HEVCLocalContext * | lc, |
| int | trafo_depth ) |
Definition at line 831 of file cabac.c.
Referenced by hls_transform_tree().
|
static |
Definition at line 836 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 841 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 846 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
| int ff_hevc_log2_res_scale_abs | ( | HEVCLocalContext * | lc, |
| int | idx ) |
Definition at line 851 of file cabac.c.
Referenced by hls_cross_component_pred().
| int ff_hevc_res_scale_sign_flag | ( | HEVCLocalContext * | lc, |
| int | idx ) |
Definition at line 861 of file cabac.c.
Referenced by hls_cross_component_pred().
|
static |
Definition at line 866 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 892 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 904 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 912 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 919 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 924 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 933 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 942 of file cabac.c.
Referenced by coeff_abs_level_remaining_decode(), and coeff_sign_flag_decode().
|
static |
Definition at line 974 of file cabac.c.
Referenced by coeff_abs_level_remaining_decode().
|
static |
Definition at line 1007 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 1048 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding(), residual_coding_subblock(), and residual_ts_coding_subblock().
| void ff_hevc_hls_residual_coding | ( | HEVCLocalContext * | lc, |
| const HEVCPPS * | pps, | ||
| int | x0, | ||
| int | y0, | ||
| int | log2_trafo_size, | ||
| enum ScanType | scan_idx, | ||
| int | c_idx ) |
Definition at line 1061 of file cabac.c.
Referenced by hls_transform_unit().
| void ff_hevc_hls_mvd_coding | ( | HEVCLocalContext * | lc, |
| int | x0, | ||
| int | y0, | ||
| int | log2_cb_size ) |
Definition at line 1595 of file cabac.c.
Referenced by hevc_luma_mv_mvp_mode().
|
static |
Indexed by init_type.
Definition at line 100 of file cabac.c.
Referenced by cabac_init_state(), and cabac_init_state().
|
static |
Definition at line 334 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 338 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 342 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 346 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 353 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 360 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 371 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 375 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 379 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 384 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().
|
static |
Definition at line 391 of file cabac.c.
Referenced by ff_hevc_hls_residual_coding().