Commit 246d3bf0 authored by Luca Barbato's avatar Luca Barbato

hevc: Conceal zero td

It was done only in check_mvset(), while mv_scale() is called also by
dist_scale().

Sample-Id: 00001579-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
parent e95018b6
......@@ -568,8 +568,12 @@ static av_always_inline void dist_scale(HEVCContext *s, Mv *mv,
int ref_pic_elist = refPicList[elist].list[TAB_MVF(x, y).ref_idx[elist]];
int ref_pic_curr = refPicList[ref_idx_curr].list[ref_idx];
if (ref_pic_elist != ref_pic_curr)
mv_scale(mv, mv, s->poc - ref_pic_elist, s->poc - ref_pic_curr);
if (ref_pic_elist != ref_pic_curr) {
int poc_diff = s->poc - ref_pic_elist;
if (!poc_diff)
poc_diff = 1;
mv_scale(mv, mv, poc_diff, s->poc - ref_pic_curr);
}
}
static int mv_mp_mode_mx(HEVCContext *s, int x, int y, int pred_flag_index,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment