vpx/vp9/encoder
Jingning Han 46ea9ec719 Enable real-time version reference motion vector search
This commit enables a fast reference motion vector search scheme.
It checks the nearest top and left neighboring blocks to decide the
most probable predicted motion vector. If it finds the two have
the same motion vectors, it then skip finding exterior range for
the second most probable motion vector, and correspondingly skips
the check for NEARMV.

The runtime of speed -5 goes down
pedestrian at 1080p 29377 ms -> 27783 ms
vidyo at 720p       11830 ms -> 10990 ms
i.e., 6%-8% speed-up.

For rtc set, the compression performance
goes down by about -1.3% for both speed -5 and -6.

Change-Id: I2a7794fa99734f739f8b30519ad4dfd511ab91a5
2014-06-26 09:49:13 -07:00
..
x86 Merge "Fast computation path for forward transform and quantization" 2014-06-12 11:59:52 -07:00
vp9_aq_complexity.c Fix AQ mode 2 bug where delta causes Q 0. 2014-06-03 13:31:32 +01:00
vp9_aq_complexity.h Move aq_mode=2 (complexity_aq) to separate file. 2014-03-26 18:01:59 -07:00
vp9_aq_cyclicrefresh.c Enable background detection for adaptive quantizer control 2014-04-21 08:57:53 -07:00
vp9_aq_cyclicrefresh.h Encapsulating CYCLIC_REFRESH struct into .c file. 2014-03-26 11:00:35 -07:00
vp9_aq_variance.c Moving compute_qdelta functions into vp9_ratectrl.{h, c}. 2014-04-07 16:57:53 -07:00
vp9_aq_variance.h Renaming "onyx" to "encoder". 2014-04-22 14:57:05 -07:00
vp9_bitstream.c Dual ARF changes: Buffer index selection. 2014-06-24 16:30:44 +01:00
vp9_bitstream.h Cleaning up vp9_bitstream.{c, h} files. 2014-02-27 15:32:11 -08:00
vp9_block.h Switch active map implementation to segment based. 2014-06-20 13:13:23 -07:00
vp9_context_tree.c Moving PC_TREE from MACROBLOCK to VP9_COMP. 2014-05-16 10:17:13 -07:00
vp9_context_tree.h Fast computation path for forward transform and quantization 2014-06-12 11:10:54 -07: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 Fix C versions of DC calculation functions 2014-06-13 16:09:40 -07:00
vp9_denoiser.c Fixed VP9 denoiser COPY_BLOCK case 2014-06-20 07:18:42 -07:00
vp9_denoiser.h Fixes in VP9 alloc, free, and COPY_FRAME case 2014-06-19 08:41:36 -07:00
vp9_encodeframe.c Merge "Reuse inter prediction result in real-time speed 6" 2014-06-25 08:18:33 -07:00
vp9_encodeframe.h Hiding struct diff in *.c file. 2014-05-19 11:19:21 -07:00
vp9_encodemb.c Fast computation path for forward transform and quantization 2014-06-12 11:10:54 -07:00
vp9_encodemb.h Fast computation path for forward transform and quantization 2014-06-12 11:10:54 -07:00
vp9_encodemv.c Adding MV_SPEED_FEATURES struct. 2014-06-12 14:15:27 -07:00
vp9_encodemv.h Renaming "onyx" to "encoder". 2014-04-22 14:57:05 -07:00
vp9_encoder.c Merge "Dual arf: Name changes." 2014-06-26 01:55:00 -07:00
vp9_encoder.h [spatial svc]Implement lag in frames for spatial svc 2014-06-24 14:01:17 -07:00
vp9_extend.c Move vp9_extend.{h,c} from common to encoder 2013-11-18 12:43:36 -08:00
vp9_extend.h vp9/encoder: add extern "C" to headers 2014-01-23 16:21:24 -08:00
vp9_firstpass.c Merge "Dual arf: Name changes." 2014-06-26 01:55:00 -07:00
vp9_firstpass.h Dual ARF changes: Buffer index selection. 2014-06-24 16:30:44 +01:00
vp9_lookahead.c [spatial svc]Implement lag in frames for spatial svc 2014-06-24 14:01:17 -07:00
vp9_lookahead.h [spatial svc]Implement lag in frames for spatial svc 2014-06-24 14:01:17 -07:00
vp9_mbgraph.c Adding MV_SPEED_FEATURES struct. 2014-06-12 14:15:27 -07:00
vp9_mbgraph.h Renaming MB_PREDICTION_MODE to PREDICTION_MODE. 2014-04-22 17:48:31 -07:00
vp9_mcomp.c Adding MV_SPEED_FEATURES struct. 2014-06-12 14:15:27 -07:00
vp9_mcomp.h Moving full_pixel_search() to vp9_mcomp.c. 2014-06-12 13:06:37 -07:00
vp9_picklpf.c Moving loopfilter call to vp9_decode_frame(). 2014-05-12 16:19:19 -07:00
vp9_picklpf.h Renaming "onyx" to "encoder". 2014-04-22 14:57:05 -07:00
vp9_pickmode.c Enable real-time version reference motion vector search 2014-06-26 09:49:13 -07:00
vp9_pickmode.h Reuse inter prediction result in real-time speed 6 2014-06-24 12:46:33 -07:00
vp9_quantize.c Fast computation path for forward transform and quantization 2014-06-12 11:10:54 -07:00
vp9_quantize.h Fast computation path for forward transform and quantization 2014-06-12 11:10:54 -07:00
vp9_ratectrl.c Dual ARF changes: Buffer index selection. 2014-06-24 16:30:44 +01:00
vp9_ratectrl.h Experiment for mid group second arf. 2014-06-24 12:59:14 +01:00
vp9_rdopt.c Merge "Add vp9_ prefix to mv_pred and setup_pred_block functions" 2014-06-25 08:57:08 -07:00
vp9_rdopt.h Merge "Add vp9_ prefix to mv_pred and setup_pred_block functions" 2014-06-25 08:57:08 -07:00
vp9_resize.c Removing redefinition of ROUND_POWER_OF_TWO. 2014-02-27 11:57:00 -08:00
vp9_resize.h Multiple resize filters 2014-01-25 09:39:48 -08:00
vp9_sad.c Remove Wextra warnings from vp9_sad.c 2014-06-02 13:50:20 -07:00
vp9_segmentation.c Removing redundant "8x8" suffix from MODE_INFO vars. 2014-05-15 11:14:42 -07:00
vp9_segmentation.h Renaming "onyx" to "encoder". 2014-04-22 14:57:05 -07:00
vp9_speed_features.c Make non-RD intra mode search txfm size dependent 2014-06-25 18:52:18 -07:00
vp9_speed_features.h Merge "Reuse inter prediction result in real-time speed 6" 2014-06-25 08:18:33 -07:00
vp9_ssim.c Adding vp9_ssim.h file. 2014-04-08 16:08:39 -07:00
vp9_ssim.h Adding vp9_ssim.h file. 2014-04-08 16:08:39 -07:00
vp9_subexp.c Removed several unused functions. 2014-03-17 14:09:29 -07:00
vp9_subexp.h vp9_prob_diff_update_savings_search_model(): remove params 2014-03-02 20:36:32 -08:00
vp9_svc_layercontext.c [spatial svc]Implement lag in frames for spatial svc 2014-06-24 14:01:17 -07:00
vp9_svc_layercontext.h [spatial svc]Implement lag in frames for spatial svc 2014-06-24 14:01:17 -07:00
vp9_temporal_filter.c Adding MV_SPEED_FEATURES struct. 2014-06-12 14:15:27 -07:00
vp9_temporal_filter.h Adding vp9_temporal_filter_init() function. 2014-05-01 11:35:50 -07:00
vp9_tokenize.c Add a TODO 2014-05-16 12:48:38 -07:00
vp9_tokenize.h Shrink dct_value_cost[] to int16_t. 2014-02-25 13:07:18 -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 Reusing existing vp9_get{8x8, 16x16}var() instead of new ones. 2014-05-29 11:14:06 -07:00
vp9_variance.h Remove Wextra warnings from vp9_sad.c 2014-06-02 13:50:20 -07:00
vp9_write_bit_buffer.c vp9_write_bit_buffer.h header statics converted to globals 2014-03-24 09:56:06 -07:00
vp9_write_bit_buffer.h vp9_write_bit_buffer.h header statics converted to globals 2014-03-24 09:56:06 -07:00
vp9_writer.c Removing unused active_section global variable. 2014-03-07 14:05:51 -08:00
vp9_writer.h Adding vp9_cost.{h, c} files. 2014-03-05 11:57:57 -08:00