diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-11-01 13:06:25 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-11-01 13:06:25 +0100 |
commit | 0ddcee172ec8a8abc91c61c3a66bbfd432373976 (patch) | |
tree | 1e4db2cfc0356f93d88fa9858a5d49618f4a2435 | |
parent | 13ecdb06f8503c852546b017e7e861e10d9f416f (diff) | |
parent | 0b41eeac45fb7f7ad6d3f4fc846b00d108824b0b (diff) | |
download | ffmpeg-0ddcee172ec8a8abc91c61c3a66bbfd432373976.tar.gz |
Merge commit '0b41eeac45fb7f7ad6d3f4fc846b00d108824b0b' into release/2.4
* commit '0b41eeac45fb7f7ad6d3f4fc846b00d108824b0b':
hevc_mvs: make sure to always initialize the temporal MV fully
Conflicts:
libavcodec/hevc_mvs.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/hevc_mvs.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/libavcodec/hevc_mvs.c b/libavcodec/hevc_mvs.c index 26c7c10b57..826d084662 100644 --- a/libavcodec/hevc_mvs.c +++ b/libavcodec/hevc_mvs.c @@ -417,14 +417,10 @@ static void derive_spatial_merge_candidates(HEVCContext *s, int x0, int y0, if (available_l0 || available_l1) { mergecandlist[nb_merge_cand].pred_flag = available_l0 + (available_l1 << 1); - if (available_l0) { - mergecandlist[nb_merge_cand].mv[0] = mv_l0_col; - mergecandlist[nb_merge_cand].ref_idx[0] = 0; - } - if (available_l1) { - mergecandlist[nb_merge_cand].mv[1] = mv_l1_col; - mergecandlist[nb_merge_cand].ref_idx[1] = 0; - } + AV_ZERO16(mergecandlist[nb_merge_cand].ref_idx); + mergecandlist[nb_merge_cand].mv[0] = mv_l0_col; + mergecandlist[nb_merge_cand].mv[1] = mv_l1_col; + if (merge_idx == nb_merge_cand) return; nb_merge_cand++; @@ -490,8 +486,6 @@ void ff_hevc_luma_mv_merge_mode(HEVCContext *s, int x0, int y0, int nPbW, int nPbH2 = nPbH; HEVCLocalContext *lc = s->HEVClc; - memset(mergecand_list, 0, MRG_MAX_NUM_CANDS * sizeof(*mergecand_list)); - if (s->pps->log2_parallel_merge_level > 2 && nCS == 8) { singleMCLFlag = 1; x0 = lc->cu.x; |