diff --git a/mpp/codec/mpp_enc_impl.cpp b/mpp/codec/mpp_enc_impl.cpp index c72f6fb0..0f699c10 100644 --- a/mpp/codec/mpp_enc_impl.cpp +++ b/mpp/codec/mpp_enc_impl.cpp @@ -299,7 +299,8 @@ static RK_S32 check_resend_hdr(MpiCmd cmd, void *param, MppEncCfgSet *cfg) do { if (cmd == MPP_ENC_SET_CODEC_CFG || - cmd == MPP_ENC_SET_PREP_CFG) { + cmd == MPP_ENC_SET_PREP_CFG || + cmd == MPP_ENC_SET_IDR_FRAME) { resend = 1; break; } @@ -626,6 +627,9 @@ MPP_RET mpp_enc_proc_cfg(MppEncImpl *enc, MpiCmd cmd, void *param) if (src) ret = mpp_enc_proc_rc_cfg(&enc->cfg.rc, src); } break; + case MPP_ENC_SET_IDR_FRAME : { + enc->frm_cfg.force_idr++; + } break; case MPP_ENC_GET_HDR_SYNC : case MPP_ENC_GET_EXTRA_INFO : { /* diff --git a/mpp/codec/mpp_enc_v2.cpp b/mpp/codec/mpp_enc_v2.cpp index 95d5ebed..a16f2ab5 100644 --- a/mpp/codec/mpp_enc_v2.cpp +++ b/mpp/codec/mpp_enc_v2.cpp @@ -323,11 +323,6 @@ MPP_RET mpp_enc_control_v2(MppEnc ctx, MpiCmd cmd, void *param) enc_dbg_ctrl("get codec config\n"); memcpy(param, &enc->cfg.codec, sizeof(enc->cfg.codec)); } break; - case MPP_ENC_SET_IDR_FRAME : { - enc_dbg_ctrl("set idr frame\n"); - enc->frm_cfg.force_flag |= ENC_FORCE_IDR; - enc->frm_cfg.force_idr++; - } break; case MPP_ENC_GET_HEADER_MODE : { enc_dbg_ctrl("get header mode\n"); memcpy(param, &enc->hdr_mode, sizeof(enc->hdr_mode));