mirror of
https://github.com/ultravideo/uvg266.git
synced 2024-11-24 02:24:07 +00:00
Updated split_flag initialization to support Large CTUs in VVC
This commit is contained in:
parent
7abadaafe4
commit
c6572d644f
|
@ -53,7 +53,7 @@ typedef struct
|
|||
struct {
|
||||
cabac_ctx_t sao_merge_flag_model;
|
||||
cabac_ctx_t sao_type_idx_model;
|
||||
cabac_ctx_t split_flag_model[3]; //!< \brief split flag context models
|
||||
cabac_ctx_t split_flag_model[5]; //!< \brief split flag context models
|
||||
cabac_ctx_t intra_mode_model; //!< \brief intra mode context models
|
||||
cabac_ctx_t chroma_pred_model[2];
|
||||
cabac_ctx_t inter_dir[5];
|
||||
|
|
|
@ -87,10 +87,10 @@ static const uint8_t INIT_PART_SIZE[3][4] = {
|
|||
{ 184, CNU, CNU, CNU, },
|
||||
};
|
||||
|
||||
static const uint8_t INIT_SPLIT_FLAG[3][3] = {
|
||||
{ 107, 139, 126 },
|
||||
{ 107, 139, 126 },
|
||||
{ 139, 141, 157 },
|
||||
static const uint8_t INIT_SPLIT_FLAG[3][5] = {
|
||||
{ 107, 139, 126, 255, 0, },
|
||||
{ 107, 139, 126, 255, 0, },
|
||||
{ 139, 141, 157, 255, 0, },
|
||||
};
|
||||
|
||||
static const uint8_t INIT_INTRA_PRED_MODE[3] = {
|
||||
|
@ -230,6 +230,9 @@ void kvz_init_contexts(encoder_state_t *state, int8_t QP, int8_t slice)
|
|||
kvz_ctx_init(&cabac->ctx.split_flag_model[0], QP, INIT_SPLIT_FLAG[slice][0]);
|
||||
kvz_ctx_init(&cabac->ctx.split_flag_model[1], QP, INIT_SPLIT_FLAG[slice][1]);
|
||||
kvz_ctx_init(&cabac->ctx.split_flag_model[2], QP, INIT_SPLIT_FLAG[slice][2]);
|
||||
// VVC Large CTU use
|
||||
kvz_ctx_init(&cabac->ctx.split_flag_model[3], QP, INIT_SPLIT_FLAG[slice][3]);
|
||||
kvz_ctx_init(&cabac->ctx.split_flag_model[4], QP, INIT_SPLIT_FLAG[slice][4]);
|
||||
|
||||
kvz_ctx_init(&cabac->ctx.intra_mode_model, QP, INIT_INTRA_PRED_MODE[slice]);
|
||||
|
||||
|
|
Loading…
Reference in a new issue