mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-05 17:16:50 +08:00
[mpp_enc]: Clear rc info input before reenc
Before re-encode the bit_real and the quality_real should be be clear. Change-Id: I724c93fa49feaef7194a0a10c6278527aa51598a Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
This commit is contained in:
@@ -1543,6 +1543,22 @@ TASK_DONE:
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void mpp_enc_clr_rc_cb_info(EncRcTask *rc_task)
|
||||
{
|
||||
EncRcTaskInfo *hal_rc = (EncRcTaskInfo *) &rc_task->info;
|
||||
EncRcTaskInfo bak = rc_task->info;
|
||||
|
||||
memset(hal_rc, 0, sizeof(rc_task->info));
|
||||
|
||||
hal_rc->frame_type = bak.frame_type;
|
||||
hal_rc->bit_target = bak.bit_target;
|
||||
hal_rc->bit_max = bak.bit_max;
|
||||
hal_rc->bit_min = bak.bit_min;
|
||||
hal_rc->quality_target = bak.quality_target;
|
||||
hal_rc->quality_max = bak.quality_max;
|
||||
hal_rc->quality_min = bak.quality_min;
|
||||
}
|
||||
|
||||
static MPP_RET mpp_enc_reenc_simple(Mpp *mpp, EncAsyncTaskInfo *task)
|
||||
{
|
||||
MppEncImpl *enc = (MppEncImpl *)mpp->mEnc;
|
||||
@@ -1554,6 +1570,8 @@ static MPP_RET mpp_enc_reenc_simple(Mpp *mpp, EncAsyncTaskInfo *task)
|
||||
|
||||
enc_dbg_func("enter\n");
|
||||
|
||||
mpp_enc_clr_rc_cb_info(rc_task);
|
||||
|
||||
enc_dbg_detail("task %d enc proc hal\n", frm->seq_idx);
|
||||
ENC_RUN_FUNC2(enc_impl_proc_hal, enc->impl, hal_task, mpp, ret);
|
||||
|
||||
|
Reference in New Issue
Block a user