feat[vepu510]: Sync code from enc_tune branch

1. Add cu_qp_delta_depth cfg
2. Configure AQ regs for H.265
3. Configure regs according to scene mode
4. Support fixed frame level QP
5. Add RDO lambda table index
6. Update stat info for HEVC
7. Add tuning code for H.264 encoder

Change-Id: Id7dae4ed55e1b94622aee72cfce8f24c833d00e1
Signed-off-by: Tingjin Huang <timkingh.huang@rock-chips.com>
This commit is contained in:
toby.zhang
2024-04-19 17:25:51 +08:00
committed by Tingjin Huang
parent 12cf338dff
commit 02095f66d3
16 changed files with 736 additions and 122 deletions

View File

@@ -488,6 +488,19 @@ RK_S32 mpi_enc_opt_sm(void *ctx, const char *next)
return 0;
}
RK_S32 mpi_enc_opt_qpdd(void *ctx, const char *next)
{
MpiEncTestArgs *cmd = (MpiEncTestArgs *)ctx;
if (next) {
cmd->cu_qp_delta_depth = atoi(next);
return 1;
}
mpp_err("invalid cu_qp_delta_depth\n");
return 0;
}
RK_S32 mpi_enc_opt_help(void *ctx, const char *next)
{
(void)ctx;
@@ -518,6 +531,7 @@ static MppOptInfo enc_opts[] = {
{"ini", "ini file", "encoder extra ini config file", mpi_enc_opt_ini},
{"slt", "slt file", "slt verify data file", mpi_enc_opt_slt},
{"sm", "scene mode", "scene_mode, 0:default 1:ipc", mpi_enc_opt_sm},
{"qpdd", "cu_qp_delta_depth", "cu_qp_delta_depth, 0:1:2", mpi_enc_opt_qpdd},
};
static RK_U32 enc_opt_cnt = MPP_ARRAY_ELEMS(enc_opts);
@@ -597,9 +611,7 @@ MPP_RET mpi_enc_test_cmd_update_by_args(MpiEncTestArgs* cmd, int argc, char **ar
/* mark option end */
mpp_opt_add(opts, NULL);
ret = mpp_opt_parse(opts, argc, argv);
/* check essential parameter */
if (cmd->type <= MPP_VIDEO_CodingAutoDetect) {
mpp_err("invalid type %d\n", cmd->type);