[mpp_dec]: Add MPP_DEC_GET_CFG cmd implement

Add MPP_DEC_GET_CFG call before setup decoder config in mpi_dec_test.

Change-Id: I1ed8c2be44be9de0e4b1364a1401a81a9ecfd6e1
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
This commit is contained in:
Herman Chen
2021-09-16 15:00:47 +08:00
parent 8aa7415f2b
commit db487e5d7f
3 changed files with 25 additions and 0 deletions

View File

@@ -423,6 +423,14 @@ MPP_RET mpp_dec_proc_cfg(MppDecImpl *dec, MpiCmd cmd, void *param)
dec_dbg_func("set dec cfg\n");
} break;
case MPP_DEC_GET_CFG: {
MppDecCfgImpl *dec_cfg = (MppDecCfgImpl *)param;
if (dec_cfg)
memcpy(&dec_cfg->cfg, &dec->cfg, sizeof(dec->cfg));
dec_dbg_func("get dec cfg\n");
} break;
default : {
} break;
}

View File

@@ -962,6 +962,16 @@ MPP_RET Mpp::control_dec(MpiCmd cmd, MppParam param)
ret = mpp_dec_set_cfg(&mDecInitcfg, &dec_cfg->cfg);
}
} break;
case MPP_DEC_GET_CFG : {
if (mDec)
ret = mpp_dec_control(mDec, cmd, param);
else if (param) {
MppDecCfgImpl *dec_cfg = (MppDecCfgImpl *)param;
memcpy(&dec_cfg->cfg, &mDecInitcfg, sizeof(dec_cfg->cfg));
ret = MPP_OK;
}
} break;
default : {
} break;
}

View File

@@ -630,6 +630,13 @@ int dec_decode(MpiDecTestCmd *cmd)
mpp_dec_cfg_init(&cfg);
/* get default config from decoder context */
ret = mpi->control(ctx, MPP_DEC_GET_CFG, cfg);
if (ret) {
mpp_err("%p failed to get decoder cfg ret %d\n", ctx, ret);
goto MPP_TEST_OUT;
}
/*
* split_parse is to enable mpp internal frame spliter when the input
* packet is not aplited into frames.