Merge "vp9: Nonrd mode: use content_state_sb for high motion."
This commit is contained in:
commit
2075af4b16
@ -1166,7 +1166,7 @@ static int choose_partitioning(VP9_COMP *cpi, const TileInfo *const tile,
|
||||
mi->mv[0].as_int = 0;
|
||||
mi->interp_filter = BILINEAR;
|
||||
|
||||
if (cpi->oxcf.speed >= 8 && !low_res)
|
||||
if (cpi->oxcf.speed >= 8 && !low_res && x->content_state_sb != kVeryHighSad)
|
||||
y_sad = cpi->fn_ptr[bsize].sdf(
|
||||
x->plane[0].src.buf, x->plane[0].src.stride, xd->plane[0].pre[0].buf,
|
||||
xd->plane[0].pre[0].stride);
|
||||
|
@ -1928,9 +1928,14 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data,
|
||||
pd->dst.stride = this_mode_pred->stride;
|
||||
}
|
||||
} else {
|
||||
const int large_block = (x->sb_is_skin || cpi->oxcf.speed < 7)
|
||||
? bsize > BLOCK_32X32
|
||||
: bsize >= BLOCK_32X32;
|
||||
// For low motion content use x->sb_is_skin in addition to VeryHighSad
|
||||
// for setting large_block.
|
||||
const int large_block =
|
||||
(x->content_state_sb == kVeryHighSad ||
|
||||
(x->sb_is_skin && cpi->rc.avg_frame_low_motion > 70) ||
|
||||
cpi->oxcf.speed < 7)
|
||||
? bsize > BLOCK_32X32
|
||||
: bsize >= BLOCK_32X32;
|
||||
mi->interp_filter = (filter_ref == SWITCHABLE) ? EIGHTTAP : filter_ref;
|
||||
|
||||
if (cpi->use_svc && ref_frame == GOLDEN_FRAME &&
|
||||
|
Loading…
x
Reference in New Issue
Block a user