vpx/vp9/encoder
Paul Wilkins 21ff7bdc72 Adjustments to key frame sizing.
Adjustments take heavier account of the frame near a kf
in deciding boost and limit the total number that can contribute.
Also adjusted the minq calculations such that in most cases we
generate a smaller key frame.
Modified the code that accounts for how static the sequence is and
added some adjustment based on image size. This is still very
crude but smaller images tend to behave better with a larger
delta between KF Q and other frames than larger image formats.
Changes give sizable gains in overall PSNR  on all the test sets but the
biggest gains (~3%) were on the std-hd set.
The gains were smaller for SSIM but still significant.
Average PSNR results are mixed because this metric can very easily
be altered by having a very good / lossless coding of one or two frames.
Some of the YT and YT-HD clips in particular have blank lead ins and
allowing lossless coding of these appears to make a big difference to
average PSNR but it reality does not help much at all.

Change-Id: I6bfe485a1d330b47c783832f1717c95c535464ec
2013-04-19 10:12:13 +01:00
..
x86 Add SSE2 versions for rectangular sad and sad4d functions. 2013-04-17 10:31:59 -07:00
vp9_asm_enc_offsets.c Move qcoeff, dqcoeff from BLOCKD to per-plane data 2013-04-04 16:30:57 -07:00
vp9_bitstream.c Recursive partition syntax coding 2013-04-16 18:41:26 -07:00
vp9_bitstream.h Use standard integer types for pixel values and coefficients. 2012-12-18 15:31:19 -08:00
vp9_block.h Fairly basic integration of rectangular blocks in encoding RD loop. 2013-04-17 09:25:06 -07:00
vp9_boolhuff.c disambiguate superframe index in vp9_stop_encode() 2013-03-12 14:30:23 -07:00
vp9_boolhuff.h Use standard integer types for pixel values and coefficients. 2012-12-18 15:31:19 -08:00
vp9_dct.c Faster vp9_short_fdct4x4 and vp9_short_fdct8x4. 2013-04-16 16:11:56 -07:00
vp9_encodeframe.c Fairly basic integration of rectangular blocks in encoding RD loop. 2013-04-17 09:25:06 -07:00
vp9_encodeframe.h Code cleanup. 2013-02-21 13:50:15 -08:00
vp9_encodeintra.c Merge "WIP: removing predictor buffer usage from decoder" into experimental 2013-04-11 15:24:33 -07:00
vp9_encodeintra.h Move qcoeff, dqcoeff from BLOCKD to per-plane data 2013-04-04 16:30:57 -07:00
vp9_encodemb.c Remove subtract_mb* functions. 2013-04-11 12:27:15 -07:00
vp9_encodemb.h Remove unused macroblock versions of reconstruction functions. 2013-04-11 12:27:15 -07:00
vp9_encodemv.c Adding mv_joint_vertical and mv_joint_horizontal functions. 2013-04-15 12:07:26 -07:00
vp9_encodemv.h Use standard integer types for pixel values and coefficients. 2012-12-18 15:31:19 -08:00
vp9_firstpass.c Adjustments to key frame sizing. 2013-04-19 10:12:13 +01:00
vp9_firstpass.h Code cleanup. 2013-02-21 13:50:15 -08:00
vp9_lookahead.c Fix pulsing issue with scaling 2013-03-13 19:10:10 -07:00
vp9_lookahead.h Code cleanup. 2013-03-11 17:02:27 -07:00
vp9_mbgraph.c Extend diff MV limit from +/-256 to +/-1024 2013-03-08 10:04:36 -08:00
vp9_mbgraph.h Code cleanup. 2013-02-28 13:18:02 -08:00
vp9_mcomp.c Encoder code cleanup. 2013-04-11 11:08:00 -07:00
vp9_mcomp.h Support +/-2048 motion vector coding 2013-03-13 14:08:27 -07:00
vp9_modecosts.c fixed includes to be fully specified 2012-11-28 10:53:17 -08:00
vp9_modecosts.h Use standard integer types for pixel values and coefficients. 2012-12-18 15:31:19 -08:00
vp9_onyx_if.c Adjustments to key frame sizing. 2013-04-19 10:12:13 +01:00
vp9_onyx_int.h Recursive partition syntax coding 2013-04-16 18:41:26 -07:00
vp9_picklpf.c Remove obselete code 2013-04-10 13:45:22 -07:00
vp9_picklpf.h Remove obselete code 2013-04-10 13:45:22 -07:00
vp9_psnr.c Code cleanup. 2013-02-21 10:34:33 -08:00
vp9_psnr.h Code cleanup. 2013-02-21 10:34:33 -08:00
vp9_quantize.c Fix width/height switch-up in U/V SB quantize code. 2013-04-15 09:58:27 -07:00
vp9_quantize.h Remove unused macroblock versions of reconstruction functions. 2013-04-11 12:27:15 -07:00
vp9_ratectrl.c Recursive partition syntax coding 2013-04-16 18:41:26 -07:00
vp9_ratectrl.h Minor rate control refactoring and experiments. 2013-02-25 17:07:45 +00:00
vp9_rdopt.c Fairly basic integration of rectangular blocks in encoding RD loop. 2013-04-17 09:25:06 -07:00
vp9_rdopt.h Merge pick_sb_modes and pick_sb64_modes. 2013-04-11 09:33:49 -07:00
vp9_sad_c.c Add rectangular block size variance/sad functions. 2013-04-15 13:39:07 -07:00
vp9_segmentation.c Fairly basic integration of rectangular blocks in encoding RD loop. 2013-04-17 09:25:06 -07:00
vp9_segmentation.h Code cleanup. 2013-02-21 10:34:33 -08:00
vp9_ssim.c Use standard integer types for pixel values and coefficients. 2012-12-18 15:31:19 -08:00
vp9_temporal_filter.c Move configure_arnr_filter function 2013-04-16 15:58:27 -07:00
vp9_temporal_filter.h Move configure_arnr_filter function 2013-04-16 15:58:27 -07:00
vp9_tokenize.c Use BLOCK_SIZE_TYPE in foreach_ walker 2013-04-17 15:08:37 -07:00
vp9_tokenize.h tokenize: convert skippable functions 2013-04-11 12:27:37 -07:00
vp9_treewriter.c Use above/left (instead of previous in scan-order) as token context. 2013-03-26 16:46:09 -07:00
vp9_treewriter.h Adding vp9_write_prob function (macro for now). 2013-04-16 16:23:17 -07:00
vp9_variance_c.c Add rectangular block size variance/sad functions. 2013-04-15 13:39:07 -07:00
vp9_variance.h Add unit test for x4 multi-SAD functions 2013-03-01 18:14:02 -08:00