From: Christophe Gisquet Date: Fri, 8 Aug 2014 18:21:04 +0000 (+0000) Subject: hevc_mvs: avoid deriving tmvp in amvp X-Git-Tag: v11_alpha2~22 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3187fa14a326908f9471a038e3b5b24c0eaf655e;p=platform%2Fupstream%2Flibav.git hevc_mvs: avoid deriving tmvp in amvp Reduces the number of calls to tmvp derivation from 933685 to 586271 on a sequence. Reviewed-by: Mickaƫl Raulet Signed-off-by: Anton Khirnov --- diff --git a/libavcodec/hevc_mvs.c b/libavcodec/hevc_mvs.c index 4d0f302..cc5a16c 100644 --- a/libavcodec/hevc_mvs.c +++ b/libavcodec/hevc_mvs.c @@ -828,7 +828,8 @@ void ff_hevc_luma_mv_mvp_mode(HEVCContext *s, int x0, int y0, int nPbW, mvpcand_list[numMVPCandLX++] = mxB; //temporal motion vector prediction candidate - if (numMVPCandLX < 2 && s->sh.slice_temporal_mvp_enabled_flag) { + if (numMVPCandLX < 2 && s->sh.slice_temporal_mvp_enabled_flag && + mvp_lx_flag == numMVPCandLX) { Mv mv_col; int available_col = temporal_luma_motion_vector(s, x0, y0, nPbW, nPbH, ref_idx,