diff options
author | Marco Paniconi <marpan@google.com> | 2019-03-08 19:38:43 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2019-03-08 19:38:43 +0000 |
commit | a7b84619926c51a7bb3a8fd77f7fe98f85be50e4 (patch) | |
tree | dfd494611dde13550af6c86a1f368840c1e74817 /vp9 | |
parent | af5e63091555b015f05c90940143eb86dfc0b32f (diff) | |
parent | 8d488e8c3b301804bf0287a27f06972affa96378 (diff) | |
download | libvpx-a7b84619926c51a7bb3a8fd77f7fe98f85be50e4.tar libvpx-a7b84619926c51a7bb3a8fd77f7fe98f85be50e4.tar.gz libvpx-a7b84619926c51a7bb3a8fd77f7fe98f85be50e4.tar.bz2 libvpx-a7b84619926c51a7bb3a8fd77f7fe98f85be50e4.zip |
Merge "vp9-screen: Fix to screen wth layered encoding"
Diffstat (limited to 'vp9')
-rw-r--r-- | vp9/encoder/vp9_encodeframe.c | 9 | ||||
-rw-r--r-- | vp9/encoder/vp9_pickmode.c | 1 |
2 files changed, 6 insertions, 4 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 5ed46f2f7..b4cda004b 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -1265,10 +1265,11 @@ static int choose_partitioning(VP9_COMP *cpi, const TileInfo *const tile, int pixels_wide = 64, pixels_high = 64; int64_t thresholds[4] = { cpi->vbp_thresholds[0], cpi->vbp_thresholds[1], cpi->vbp_thresholds[2], cpi->vbp_thresholds[3] }; - int force_64_split = - cpi->rc.high_source_sad || - (cpi->use_svc && cpi->svc.high_source_sad_superframe) || - (cpi->oxcf.content == VP9E_CONTENT_SCREEN && !x->zero_temp_sad_source); + int force_64_split = cpi->rc.high_source_sad || + (cpi->use_svc && cpi->svc.high_source_sad_superframe) || + (cpi->oxcf.content == VP9E_CONTENT_SCREEN && + cpi->compute_source_sad_onepass && + cpi->sf.use_source_sad && !x->zero_temp_sad_source); // For the variance computation under SVC mode, we treat the frame as key if // the reference (base layer frame) is key frame (i.e., is_key_frame == 1). diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c index b799a1160..558210c60 100644 --- a/vp9/encoder/vp9_pickmode.c +++ b/vp9/encoder/vp9_pickmode.c @@ -2033,6 +2033,7 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data, // stationary blocks, only skip zero motion check for non-stationary blocks. if (cpi->oxcf.content == VP9E_CONTENT_SCREEN && sf->short_circuit_flat_blocks && x->source_variance == 0 && + cpi->compute_source_sad_onepass && cpi->sf.use_source_sad && ((frame_mv[this_mode][ref_frame].as_int != 0 && x->zero_temp_sad_source) || (frame_mv[this_mode][ref_frame].as_int == 0 && |