Merge "Remove the has_no_coeffs corner case" into nextgenv2
This commit is contained in:
@@ -191,7 +191,6 @@ typedef struct {
|
|||||||
TX_SIZE inter_tx_size[MAX_MIB_SIZE][MAX_MIB_SIZE];
|
TX_SIZE inter_tx_size[MAX_MIB_SIZE][MAX_MIB_SIZE];
|
||||||
#endif
|
#endif
|
||||||
int8_t skip;
|
int8_t skip;
|
||||||
int8_t has_no_coeffs;
|
|
||||||
int8_t segment_id;
|
int8_t segment_id;
|
||||||
#if CONFIG_SUPERTX
|
#if CONFIG_SUPERTX
|
||||||
// Minimum of all segment IDs under the current supertx block.
|
// Minimum of all segment IDs under the current supertx block.
|
||||||
|
@@ -753,7 +753,7 @@ static void build_masks(const loop_filter_info_n *const lfi_n,
|
|||||||
|
|
||||||
// If the block has no coefficients and is not intra we skip applying
|
// If the block has no coefficients and is not intra we skip applying
|
||||||
// the loop filter on block edges.
|
// the loop filter on block edges.
|
||||||
if ((mbmi->skip || mbmi->has_no_coeffs) && is_inter_block(mbmi)) return;
|
if (mbmi->skip && is_inter_block(mbmi)) return;
|
||||||
|
|
||||||
// Here we are adding a mask for the transform size. The transform
|
// Here we are adding a mask for the transform size. The transform
|
||||||
// size mask is set to be correct for a 64x64 prediction block size. We
|
// size mask is set to be correct for a 64x64 prediction block size. We
|
||||||
@@ -818,7 +818,7 @@ static void build_y_mask(const loop_filter_info_n *const lfi_n,
|
|||||||
*above_y |= above_prediction_mask[block_size] << shift_y;
|
*above_y |= above_prediction_mask[block_size] << shift_y;
|
||||||
*left_y |= left_prediction_mask[block_size] << shift_y;
|
*left_y |= left_prediction_mask[block_size] << shift_y;
|
||||||
|
|
||||||
if ((mbmi->skip || mbmi->has_no_coeffs) && is_inter_block(mbmi)) return;
|
if (mbmi->skip && is_inter_block(mbmi)) return;
|
||||||
|
|
||||||
*above_y |= (size_mask[block_size] & above_64x64_txform_mask[tx_size_y])
|
*above_y |= (size_mask[block_size] & above_64x64_txform_mask[tx_size_y])
|
||||||
<< shift_y;
|
<< shift_y;
|
||||||
|
@@ -1152,7 +1152,6 @@ static void decode_block(AV1Decoder *const pbi, MACROBLOCKD *const xd,
|
|||||||
#endif // CONFIG_EXT_PARTITION_TYPES
|
#endif // CONFIG_EXT_PARTITION_TYPES
|
||||||
BLOCK_SIZE bsize, int bwl, int bhl) {
|
BLOCK_SIZE bsize, int bwl, int bhl) {
|
||||||
AV1_COMMON *const cm = &pbi->common;
|
AV1_COMMON *const cm = &pbi->common;
|
||||||
const int less8x8 = bsize < BLOCK_8X8;
|
|
||||||
const int bw = 1 << (bwl - 1);
|
const int bw = 1 << (bwl - 1);
|
||||||
const int bh = 1 << (bhl - 1);
|
const int bh = 1 << (bhl - 1);
|
||||||
const int x_mis = AOMMIN(bw, cm->mi_cols - mi_col);
|
const int x_mis = AOMMIN(bw, cm->mi_cols - mi_col);
|
||||||
@@ -1372,9 +1371,6 @@ static void decode_block(AV1Decoder *const pbi, MACROBLOCKD *const xd,
|
|||||||
row, col, tx_size);
|
row, col, tx_size);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!less8x8 && eobtotal == 0)
|
|
||||||
mbmi->has_no_coeffs = 1; // skip loopfilter
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user