vpx/vp9/encoder
Marco 9f9d4f8dc9 vp9-svc: Allow for nonzero motion on spatial reference.
For nonrd pickmode on a given spatial layer, the spatial
(golden) reference was always only using zeromv for prediction.
In this patch if the downsampling filter used for generating
the lower spatial layer is an averaging filter (nonzero phase),
we allow for subpel motion on the spatial (golden) reference to
compensate for the shift. This is done by forcing the testing of
nonzero motion mode to compensate for spatial downsampling shift.

Improvement for cases where the downsampling is averaging filter.
In the current code this is only done for generating
resolutions <= QVGA.

Improvement for avgPSNR/SSIM on RTC set for speed 7: ~1.2%.
Gain is larger (~2-3%) for VGA clips with 2 spatial layers.
~1% speed slowdown for 3 layer SVC on mac.

Change-Id: I9ec4fa20a38947934fc650594596c25280c3b289
2017-12-05 22:41:07 -08:00
..
arm/neon Rename some inline functions in NEON scaling 2017-10-09 11:23:00 -07:00
mips/msa vp9 temporal filter: sse4 implementation 2017-04-26 22:03:05 -07:00
x86 Remove unnecessary includes of emmintrin_compat.h 2017-11-29 11:48:24 -05:00
vp9_alt_ref_aq.c vp9_alt_ref_aq: correct vp9_alt_ref_aq_create proto 2017-06-21 19:00:04 -07:00
vp9_alt_ref_aq.h vp9_alt_ref_aq: correct vp9_alt_ref_aq_create proto 2017-06-21 19:00:04 -07:00
vp9_aq_360.c Add cpi parameter for forcing segmentation update 2016-08-08 13:20:42 -07:00
vp9_aq_360.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_aq_complexity.c Add cpi parameter for forcing segmentation update 2016-08-08 13:20:42 -07:00
vp9_aq_complexity.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_aq_cyclicrefresh.c vp9: Adjustments for aq-mode and pickmode for speed >= 8. 2017-06-21 16:01:24 -07:00
vp9_aq_cyclicrefresh.h vp9: Adjustments to cyclic refresh for high motion. 2017-05-21 22:21:44 -07:00
vp9_aq_variance.c Casts to remove some warnings. 2016-09-01 16:10:12 +01:00
vp9_aq_variance.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_bitstream.c [CFI] Remove function pointer casts 2017-11-20 16:36:29 -08:00
vp9_bitstream.h Changes to facilitate multi-threading of encoding stage 2017-02-02 14:47:13 +05:30
vp9_block.h vp9: Modification to adapt the ARF usage for 1 pass vbr 2017-09-28 09:10:30 -07:00
vp9_blockiness.c vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_context_tree.c vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_context_tree.h vp9: Fix denoising condition when pickmode partition is used. 2017-07-30 23:16:38 -07:00
vp9_cost.c vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_cost.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_dct.c Bug fix: fadst4() in vp9/encoder/vp9_dct.c 2017-09-20 12:27:29 -07:00
vp9_denoiser.c Remove get_filter_base() and get_filter_offset() in convolve 2017-09-05 15:22:36 -07:00
vp9_denoiser.h vp9 SVC: Fix the denoiser frame buffer management. 2017-08-10 16:56:46 -07:00
vp9_encodeframe.c Fix to copy partition. 2017-11-30 10:27:34 -08:00
vp9_encodeframe.h vp9: Incorporate source sum_diff into non-rd partition thresholds. 2017-02-21 17:22:11 -08:00
vp9_encodemb.c Remove skip_block from quantize 2017-08-21 09:49:04 -07:00
vp9_encodemb.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_encodemv.c vp9_bitstream: Parameterize max_mv_magnitude 2016-10-12 12:50:17 -07:00
vp9_encodemv.h vp9_bitstream: Parameterize max_mv_magnitude 2016-10-12 12:50:17 -07:00
vp9_encoder.c Add PSNR Cb and Cr metric to opsnr.stt 2017-11-28 20:03:59 -08:00
vp9_encoder.h CVBR command line option. 2017-11-08 10:41:04 +00:00
vp9_ethread.c [CFI] Remove function pointer casts 2017-11-20 16:36:29 -08:00
vp9_ethread.h Row based multi-threading of encoding stage 2017-02-15 00:49:34 +00:00
vp9_extend.c vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_extend.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_firstpass.c Code cleanup. 2017-11-15 17:07:28 +00:00
vp9_firstpass.h Changes to modified error. 2017-05-18 12:56:02 +01:00
vp9_frame_scale.c Add 4 to 3 scaling SSSE3 optimization 2017-10-16 15:42:42 -07:00
vp9_job_queue.h Multi-threading of first pass stats collection 2017-01-24 15:48:02 -08:00
vp9_lookahead.c vp9: normalize vpx_enc_frame_flags_t usage 2016-08-04 23:37:49 -07:00
vp9_lookahead.h vp9: normalize vpx_enc_frame_flags_t usage 2016-08-04 23:37:49 -07:00
vp9_mbgraph.c Fix for out of range motion vector bug in sub-pel motion estimation 2017-04-03 16:16:49 +00:00
vp9_mbgraph.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_mcomp.c remove vp9_full_sad_search 2017-07-10 11:20:35 -07:00
vp9_mcomp.h VP9 motion vector unit test 2017-04-06 00:50:56 +00:00
vp9_multi_thread.c Make the row based multi-threaded encoder deterministic 2017-04-24 16:28:27 -07:00
vp9_multi_thread.h Multi-threading of first pass stats collection 2017-01-24 15:48:02 -08:00
vp9_noise_estimate.c vp9: Adjust noise estimation for 360p. 2017-07-31 17:12:58 -07:00
vp9_noise_estimate.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_picklpf.c vp9: 1pass CBR: modify condition for reducing loop filter. 2017-02-22 15:09:45 -08:00
vp9_picklpf.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_pickmode.c vp9-svc: Allow for nonzero motion on spatial reference. 2017-12-05 22:41:07 -08:00
vp9_pickmode.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_quantize.c quantize: capture skip block early 2017-08-22 12:10:55 -07:00
vp9_quantize.h Migrate quantization functions from vp9/ to vpx_dsp/ 2015-07-17 16:38:14 -07:00
vp9_ratectrl.c CVBR command line option. 2017-11-08 10:41:04 +00:00
vp9_ratectrl.h CVBR command line option. 2017-11-08 10:41:04 +00:00
vp9_rd.c Fix bug in intra mode rd penalty. 2017-09-08 15:10:53 +01:00
vp9_rd.h New content type to improve grain retention. 2017-11-13 16:57:23 +00:00
vp9_rdopt.c New content type to improve grain retention. 2017-11-13 16:57:23 +00:00
vp9_rdopt.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_resize.c vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_resize.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_segmentation.c vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_segmentation.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_skin_detection.c vp9: Removed unused skin detection function. 2017-07-18 14:52:04 -07:00
vp9_skin_detection.h vp9: Removed unused skin detection function. 2017-07-18 14:52:04 -07:00
vp9_speed_features.c vp9-svc: Enbale scale partition reference frames. 2017-11-17 14:52:20 -08:00
vp9_speed_features.h vp9: SVC feature to use partition from lower resolution. 2017-11-09 14:16:50 -08:00
vp9_subexp.c vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_subexp.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00
vp9_svc_layercontext.c vp9-svc: Fix condition for setting downsampling filter. 2017-11-28 16:28:29 -08:00
vp9_svc_layercontext.h vp9: SVC feature to use partition from lower resolution. 2017-11-09 14:16:50 -08:00
vp9_temporal_filter.c New content type to improve grain retention. 2017-11-13 16:57:23 +00:00
vp9_temporal_filter.h Row based multi-threading of ARNR filtering stage 2017-02-07 14:03:19 +05:30
vp9_tokenize.c Narrow cat6_high_cost tables to uint16_t 2017-03-03 23:09:12 +00:00
vp9_tokenize.h Drop vp9_get_token_extracost 2017-03-17 16:53:09 -07:00
vp9_treewriter.c vpx_dsp/prob.h: vp9_ -> vpx_ 2015-07-20 18:13:04 -07:00
vp9_treewriter.h vp9/encoder: apply clang-format 2016-08-02 16:47:11 -07:00