From 3187fa14a326908f9471a038e3b5b24c0eaf655e Mon Sep 17 00:00:00 2001 From: Christophe Gisquet Date: Fri, 8 Aug 2014 18:21:04 +0000 Subject: [PATCH] hevc_mvs: avoid deriving tmvp in amvp MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 --- libavcodec/hevc_mvs.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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, -- 2.7.4