mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-30 04:02:07 +08:00
[vproc]: Fix output frame repeated problem
For IEP2, the first two frames will be deinterlaced at I1O1 mode. I5O2 mode only works when the 3rd frame arrived. Thus the 2nd frame will be deinterlaced twice and PTS will be repeated as following pattern: ------------------------------------- IEP in : 0 1 2 3 4 IEP out : 0 1 0.5 1 2.5 3 3.5 ------------------------------------- To fix this, just skip the 2nd frame processing. Change-Id: I2d66951a941a664da093f1b9edbdd73855c57060 Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
This commit is contained in:
committed by
Herman Chen
parent
5d3623ac29
commit
f07778c8c1
@@ -497,6 +497,18 @@ static void dec_vproc_set_dei_v2(MppDecVprocCtxImpl *ctx, MppFrame frm)
|
||||
ctx->pd_mode = 1;
|
||||
ctx->detection = 0;
|
||||
}
|
||||
} else if (ctx->prev_frm0 && ! ctx->prev_frm1) {
|
||||
vproc_dbg_status("Wait for next frame to turn into I5O2");
|
||||
|
||||
if (ctx->out_buf0) {
|
||||
mpp_buffer_put(ctx->out_buf0);
|
||||
ctx->out_buf0 = NULL;
|
||||
}
|
||||
|
||||
if (ctx->out_buf1) {
|
||||
mpp_buffer_put(ctx->out_buf1);
|
||||
ctx->out_buf1 = NULL;
|
||||
}
|
||||
} else {
|
||||
struct iep2_api_params params;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user