[mpp_enc_cfg]: Add encoder I frame tuning config

Add max_i_prop, min_i_prop and init_ip_ration for I frame tuning config.

max_i_prop:
The max percentage of intra frame size in one gop.

min_i_prop:
The min percentage of intra frame size in one gop.

init_ip_ration:
Define the first I frame size is how many times of one P frame size.
Set to 16 mean I frame size is equal to P frame size.
Set to 160 mean I frame size is 10 times of P frame size.

These three parameters are for tuning Intra frame quality.

Change-Id: Iac1e700fe2a51fb3a6ad94753784cd54ee789176
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
This commit is contained in:
Herman Chen
2020-09-22 16:32:59 +08:00
parent 13bf4e3f41
commit 85ada595ee
4 changed files with 32 additions and 1 deletions

View File

@@ -162,6 +162,9 @@ typedef enum MppEncRcCfgChange_e {
MPP_ENC_RC_CFG_CHANGE_SKIP_CNT = (1 << 8),
MPP_ENC_RC_CFG_CHANGE_MAX_REENC = (1 << 9),
MPP_ENC_RC_CFG_CHANGE_DROP_FRM = (1 << 10),
MPP_ENC_RC_CFG_CHANGE_MAX_I_PROP = (1 << 11),
MPP_ENC_RC_CFG_CHANGE_MIN_I_PROP = (1 << 12),
MPP_ENC_RC_CFG_CHANGE_INIT_IP_RATIO = (1 << 13),
MPP_ENC_RC_CFG_CHANGE_ALL = (0xFFFFFFFF),
} MppEncRcCfgChange;
@@ -306,6 +309,10 @@ typedef struct MppEncRcCfg_t {
MppEncRcDropFrmMode drop_mode;
RK_U32 drop_threshold;
RK_U32 drop_gap;
RK_S32 max_i_prop;
RK_S32 min_i_prop;
RK_S32 init_ip_ratio;
} MppEncRcCfg;
/*