summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerome Jiang <jianj@google.com>2017-03-15 00:03:52 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2017-03-15 00:03:52 +0000
commit27d5a57072ff10f4a751ff72a8484ab402a0ecab (patch)
tree97e3caf3d0b0975355a82414e1eac0da322db6ef
parent2fa709280874bd78ef5d6d0da729c5a3824bbfff (diff)
parent02463273c974a48c87992c603c944161f9507677 (diff)
downloadlibvpx-27d5a57072ff10f4a751ff72a8484ab402a0ecab.tar
libvpx-27d5a57072ff10f4a751ff72a8484ab402a0ecab.tar.gz
libvpx-27d5a57072ff10f4a751ff72a8484ab402a0ecab.tar.bz2
libvpx-27d5a57072ff10f4a751ff72a8484ab402a0ecab.zip
Merge "vp9: Using source sad for speedup for dynamic resizing."
-rw-r--r--vp9/encoder/vp9_encoder.c7
-rw-r--r--vp9/encoder/vp9_speed_features.c4
2 files changed, 5 insertions, 6 deletions
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index ede17ed93..0d51f9b68 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -3128,9 +3128,10 @@ static void encode_without_recode_loop(VP9_COMP *cpi, size_t *size,
#endif
}
- if (cpi->use_svc &&
- (cpi->svc.spatial_layer_id < cpi->svc.number_spatial_layers - 1 ||
- cpi->svc.current_superframe < 1)) {
+ if ((cpi->use_svc &&
+ (cpi->svc.spatial_layer_id < cpi->svc.number_spatial_layers - 1 ||
+ cpi->svc.current_superframe < 1)) ||
+ cpi->resize_pending || cpi->resize_state || cpi->external_resize) {
compute_source_sad = 0;
if (cpi->content_state_sb != NULL)
memset(cpi->content_state_sb, 0, (cm->mi_stride >> 3) *
diff --git a/vp9/encoder/vp9_speed_features.c b/vp9/encoder/vp9_speed_features.c
index 96b467e71..331d53000 100644
--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -509,9 +509,7 @@ static void set_rt_speed_feature_framesize_independent(
sf->mv.search_method = NSTEP;
sf->mv.fullpel_search_step_param = 6;
}
- if (!cpi->resize_pending && !cpi->resize_state && !cpi->external_resize &&
- cpi->oxcf.resize_mode == RESIZE_NONE)
- sf->use_source_sad = 1;
+ if (!cpi->external_resize) sf->use_source_sad = 1;
if (sf->use_source_sad) {
// For SVC allocate for top layer.
if (cpi->content_state_sb == NULL &&