vpx/vp9/encoder
Jingning Han 531468a07a Tuning SATD rate calculation for speed
This commit allows the encoder to check the eob per transform
block to decide how to compute the SATD rate cost. If the entire
block is quantized to zero, there is no need to add anything; if
only the DC coefficient is non-zero, add its absolute value;
otherwise, sum over the block. This reduces the CPU cycles spent
on vp9_satd_sse2 to one third.

Change-Id: I0d56044b793b286efc0875fafc0b8bf2d2047e32
2015-03-31 11:02:20 -07:00
..
arm/neon Add vp9_sad32x32x4d_neon Neon intrinsic function. 2015-01-27 08:54:00 -08:00
x86 Use aligned copy in 8x8 Hadamard transform SSE2 2015-03-31 10:21:52 -07:00
vp9_aq_complexity.c Substantial restructuring of AQ mode 2. 2014-12-09 15:10:52 +00:00
vp9_aq_complexity.h Substantial restructuring of AQ mode 2. 2014-12-09 15:10:52 +00:00
vp9_aq_cyclicrefresh.c Adjustments to aq-mode=3. 2015-03-18 12:06:16 -07:00
vp9_aq_cyclicrefresh.h Adjustments to aq-mode=3. 2015-03-18 12:06:16 -07:00
vp9_aq_variance.c Increase strength of AQ1. 2014-11-27 10:53:37 +00:00
vp9_aq_variance.h Add variance restriction to AQ2. 2014-11-20 16:23:35 -08:00
vp9_avg.c Enable 16x16 Hadamard transform in SATD based mode decision 2015-03-30 15:43:31 -07:00
vp9_bitstream.c Make encoder buffer allocation dynamic 2015-03-04 07:58:32 -08:00
vp9_bitstream.h remove static initializers for partition tree 2014-12-17 11:41:06 -08:00
vp9_block.h Account for chroma component costs in RTC mode decision 2015-02-04 09:45:14 -08:00
vp9_context_tree.c vp9_ethread: modify VP9_COMP structure 2014-11-24 17:57:38 -08:00
vp9_context_tree.h vp9_ethread: modify VP9_COMP structure 2014-11-24 17:57:38 -08:00
vp9_cost.c Adding vp9_cost.{h, c} files. 2014-03-05 11:57:57 -08:00
vp9_cost.h Adding vp9_cost.{h, c} files. 2014-03-05 11:57:57 -08:00
vp9_dct.c Removed redundant local variables in the forward hybrid transforms. 2015-01-07 16:38:29 -08:00
vp9_dct.h Refactored idct routines and headers 2014-11-24 09:57:40 -08:00
vp9_denoiser.c Remove a few unneccessary multiplications in denoiser. 2015-02-20 11:55:11 -08:00
vp9_denoiser.h Skip duplicate denoiser frame buffer allocation 2015-01-07 08:49:04 -08:00
vp9_encodeframe.c Merge "A tiny cyclic refresh / active map fix." 2015-03-24 09:43:24 -07:00
vp9_encodeframe.h Move computation up to frame level 2015-02-10 15:41:52 -08:00
vp9_encodemb.c dc quantizer fix for 32x32 transforms 2015-03-03 15:58:27 -08:00
vp9_encodemb.h Combine vp9_encode_block_intra and encode_block_intra 2014-10-28 18:57:01 -07:00
vp9_encodemv.c vp9_ethread: modify VP9_COMP structure 2014-11-24 17:57:38 -08:00
vp9_encodemv.h vp9_ethread: modify VP9_COMP structure 2014-11-24 17:57:38 -08:00
vp9_encoder.c Merge "Safely free all the frame buffers after all the workers finish the work." 2015-03-23 16:50:15 -07:00
vp9_encoder.h Reconcile active_map and cyclic refresh 2015-03-12 16:19:49 -07:00
vp9_ethread.c Fix misleading indentation. 2015-03-05 12:10:56 -08:00
vp9_ethread.h vp9_ethread: the tile-based multi-threaded encoder 2014-12-04 11:21:34 -08:00
vp9_extend.c Fix source frame border extension 2015-02-27 15:48:01 -08:00
vp9_extend.h vp9/encoder: add extern "C" to headers 2014-01-23 16:21:24 -08:00
vp9_firstpass.c Merge "Enable group adaptive max q by default." 2015-03-24 15:00:12 -07:00
vp9_firstpass.h Auto-adaptive encoder frame resizing logic 2015-02-10 09:59:32 -08:00
vp9_lookahead.c Allow larger encoder configurations. 2015-01-29 15:07:40 -08:00
vp9_lookahead.h Allow larger encoder configurations. 2015-01-29 15:07:40 -08:00
vp9_mbgraph.c Make encoder buffer allocation dynamic 2015-03-04 07:58:32 -08:00
vp9_mbgraph.h Renaming MB_PREDICTION_MODE to PREDICTION_MODE. 2014-04-22 17:48:31 -07:00
vp9_mcomp.c Refactor column integral projection computation 2015-03-16 12:07:15 -07:00
vp9_mcomp.h Move integral projection motion search to vp9_mcomp.c 2015-03-04 10:30:15 -08:00
vp9_picklpf.c vp9_ethread: add parallel loopfilter 2015-01-16 17:19:27 -08:00
vp9_picklpf.h Renaming "onyx" to "encoder". 2014-04-22 14:57:05 -07:00
vp9_pickmode.c Tuning SATD rate calculation for speed 2015-03-31 11:02:20 -07:00
vp9_pickmode.h Enable sub8x8 inter block search for RTC coding mode 2014-12-24 17:40:31 -08:00
vp9_quantize.c vp9_ethread: fix me consts initialization to support aq_mode=3 encoding 2015-03-06 16:31:46 -08:00
vp9_quantize.h dc quantizer fix for 32x32 transforms 2015-03-03 15:58:27 -08:00
vp9_ratectrl.c Merge "Some rate control adjustments to control overshoot" 2015-03-12 11:10:59 -07:00
vp9_ratectrl.h Auto-adaptive encoder frame resizing logic 2015-02-10 09:59:32 -08:00
vp9_rd.c vp9_pred_mv(): misc fixes and optimizations 2015-03-20 17:17:04 -07:00
vp9_rd.h vp9_ethread: fix me consts initialization to support aq_mode=3 encoding 2015-03-06 16:31:46 -08:00
vp9_rdopt.c Merge "Revised rd adjustment for variance." 2015-03-24 03:12:56 -07:00
vp9_rdopt.h Experimental rd bias based on source vs recon variance. 2015-03-20 11:57:36 +00:00
vp9_resize.c vp9_resize_plane: quiet some static analysis warnings 2015-03-18 14:34:30 -07:00
vp9_resize.h Adds high bit-depth frame resize functions 2014-09-23 22:55:33 -07:00
vp9_sad.c Rename highbitdepth functions to use highbd prefix 2014-10-09 14:40:40 -07:00
vp9_segmentation.c vp9_ethread: modify VP9_COMP structure 2014-11-24 17:57:38 -08:00
vp9_segmentation.h Removing direct references to VP9_COMP. 2014-08-06 12:59:02 -07:00
vp9_skin_detection.c Add skin detection. 2015-02-11 17:47:17 -08:00
vp9_skin_detection.h Add skin detection. 2015-02-11 17:47:17 -08:00
vp9_speed_features.c Auto-adaptive encoder frame resizing logic 2015-02-10 09:59:32 -08:00
vp9_speed_features.h Move computation up to frame level 2015-02-10 15:41:52 -08:00
vp9_ssim.c High-bitdepth bugfixes 2014-10-01 14:18:11 -07:00
vp9_ssim.h High-bitdepth bugfixes 2014-10-01 14:18:11 -07:00
vp9_subexp.c Rework coeff probability model update for rtc coding 2014-12-03 09:15:25 -08:00
vp9_subexp.h Rework coeff probability model update for rtc coding 2014-12-03 09:15:25 -08:00
vp9_svc_layercontext.c Make encoder buffer allocation dynamic 2015-03-04 07:58:32 -08:00
vp9_svc_layercontext.h [spatial svc]Another workaround to avoid using prev_mi 2014-10-16 16:09:40 +01:00
vp9_temporal_filter.c Revert "Revert "Add support for setting byte alignment."" 2014-12-15 12:20:37 -08:00
vp9_temporal_filter.h Re-factor and simplify arnr filter. 2014-07-11 17:45:40 +01:00
vp9_tokenize.c WIP: Remove giant value cost table 2014-12-23 15:06:17 -08:00
vp9_tokenize.h Fix compiler warnigns for msvc2013 2015-01-05 17:31:19 -08:00
vp9_treewriter.c Adding vp9_cost.{h, c} files. 2014-03-05 11:57:57 -08:00
vp9_treewriter.h Adding vp9_cost.{h, c} files. 2014-03-05 11:57:57 -08:00
vp9_variance.c Fix visual studio 2013 compiler warnings 2014-11-05 13:47:28 -08:00
vp9_variance.h Rename highbitdepth functions to use highbd prefix 2014-10-09 14:40:40 -07:00
vp9_write_bit_buffer.c vp9_write_bit_buffer: fix function name typo 2014-08-05 21:57:54 -07:00
vp9_write_bit_buffer.h vp9_write_bit_buffer: fix function name typo 2014-08-05 21:57:54 -07:00
vp9_writer.c remove unused fields from BOOL_CODER / vp9_writer 2014-08-05 21:58:03 -07:00
vp9_writer.h Merge "fixes several -Wunused-function warnings" 2014-08-12 20:15:14 -07:00