Avoiding extra runs through skip flags

Change-Id: Ia773950145dcee58dd99cb996c4827afd554a3a9
This commit is contained in:
Jean-Marc Valin 2017-04-11 04:01:15 -04:00 коммит произвёл Jean-Marc Valin
Родитель e3bc0da107
Коммит a8764951f6
3 изменённых файлов: 9 добавлений и 3 удалений

Просмотреть файл

@ -224,8 +224,12 @@ void av1_cdef_frame(YV12_BUFFER_CONFIG *frame, AV1_COMMON *cm,
int uv_level, uv_clpf_strength;
int nhb, nvb;
int cstart = 0;
curr_row_dering[sbc] = 0;
if (cm->mi_grid_visible[MAX_MIB_SIZE * sbr * cm->mi_stride +
MAX_MIB_SIZE * sbc] == NULL) {
MAX_MIB_SIZE * sbc] == NULL ||
cm->mi_grid_visible[MAX_MIB_SIZE * sbr * cm->mi_stride +
MAX_MIB_SIZE * sbc]
->mbmi.cdef_strength == -1) {
dering_left = 0;
continue;
}
@ -266,7 +270,6 @@ void av1_cdef_frame(YV12_BUFFER_CONFIG *frame, AV1_COMMON *cm,
uv_clpf_strength =
cm->cdef_uv_strengths[mbmi_cdef_strength] % CLPF_STRENGTHS;
uv_clpf_strength += uv_clpf_strength == 3;
curr_row_dering[sbc] = 0;
if ((level == 0 && clpf_strength == 0 && uv_level == 0 &&
uv_clpf_strength == 0) ||
(dering_count = sb_compute_dering_list(

Просмотреть файл

@ -2360,7 +2360,7 @@ static void decode_partition(AV1Decoder *const pbi, MACROBLOCKD *const xd,
aom_read_literal(r, cm->cdef_bits, ACCT_STR);
} else {
cm->mi_grid_visible[mi_row * cm->mi_stride + mi_col]->mbmi.cdef_strength =
0;
-1;
}
}
#endif // CONFIG_CDEF

Просмотреть файл

@ -378,6 +378,9 @@ void av1_cdef_search(YV12_BUFFER_CONFIG *frame, const YV12_BUFFER_CONFIG *ref,
nvb = AOMMIN(MAX_MIB_SIZE, cm->mi_rows - MAX_MIB_SIZE * sbr);
dering_count = sb_compute_dering_list(cm, sbr * MAX_MIB_SIZE,
sbc * MAX_MIB_SIZE, dlist);
cm->mi_grid_visible[MAX_MIB_SIZE * sbr * cm->mi_stride +
MAX_MIB_SIZE * sbc]
->mbmi.cdef_strength = -1;
if (dering_count == 0) continue;
for (pli = 0; pli < nplanes; pli++) {
for (i = 0; i < OD_DERING_INBUF_SIZE; i++)