hevc: fix skip_flag
cherry picked from commit 509ae456551005b9bf9b4d9730b6247c97fdd990 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
3b777db132
commit
772f7f4edd
2 changed files with 12 additions and 11 deletions
|
@ -97,7 +97,7 @@ static int pic_arrays_init(HEVCContext *s, const HEVCSPS *sps)
|
|||
if (!s->sao || !s->deblock)
|
||||
goto fail;
|
||||
|
||||
s->skip_flag = av_malloc(pic_size_in_ctb);
|
||||
s->skip_flag = av_malloc(sps->min_cb_height * sps->min_cb_width);
|
||||
s->tab_ct_depth = av_malloc_array(sps->min_cb_height, sps->min_cb_width);
|
||||
if (!s->skip_flag || !s->tab_ct_depth)
|
||||
goto fail;
|
||||
|
@ -2019,6 +2019,12 @@ static int hls_coding_unit(HEVCContext *s, int x0, int y0, int log2_cb_size)
|
|||
x += min_cb_width;
|
||||
}
|
||||
lc->cu.pred_mode = skip_flag ? MODE_SKIP : MODE_INTER;
|
||||
} else {
|
||||
x = y_cb * min_cb_width + x_cb;
|
||||
for (y = 0; y < length; y++) {
|
||||
memset(&s->skip_flag[x], 0, length);
|
||||
x += min_cb_width;
|
||||
}
|
||||
}
|
||||
|
||||
if (SAMPLE_CTB(s->skip_flag, x_cb, y_cb)) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue