vpx/vp9
Jingning Han faff6ed0fb Skip duplicate block encoding in the rd loop
This speed feature allows the encoder to largely remove the spatial
dependency between blocks inside a 64x64 superblock, thereby removing
the need to repeatedly encode superblocks per partition type in the
rate-distortion optimization loop.

A major challenge lies in the intra modes tested in the rate-distortion
optimization loop. The subsequent blocks do not have access to the
reconstructed boundary pixels without the intermediate coding steps.
This was resolved by using the original pixels for intra prediction
in the rd loop, followed by an appropriately designed distortion
modeling on the quantization parameters. Experiments also suggested
that the performance impact is more discernible at lower bit-rate/psnr
settings. Hence a quantizer dependent threshold is applied to deactivate
skip of block coding.

For bus_cif at 2000 kbps,
speed 0: runtime 269854ms -> 237774ms (12% speed-up) at 0.05dB
         performance loss.

speed 1: runtime 65312ms  -> 61536ms, (7% speed-up) at 0.04dB
         performance loss.

This operation is currently turned on in settings of speed 1.

Change-Id: Ib689741dfff8dd38365d8c1b92860a3e176f56ec
2013-07-15 11:08:58 -07:00
..
common Merge "Fixing vp9_get_pred_context_comp_ref_p function." 2013-07-15 10:51:42 -07:00
decoder Using vp9_copy and vp9_zero instead of custom code. 2013-07-12 18:07:43 -07:00
encoder Skip duplicate block encoding in the rd loop 2013-07-15 11:08:58 -07:00
exports_dec support building vp8 and vp9 into a single lib 2012-11-15 10:46:17 -08:00
exports_enc support building vp8 and vp9 into a single lib 2012-11-15 10:46:17 -08:00
vp9_common.mk convolve8 optimizations for neon 2013-07-11 11:08:19 -07:00
vp9_cx_iface.c Bug fix: set frame_parallel_decoding_mode 2013-07-03 10:25:29 -04:00
vp9_dx_iface.c vp9_dx_iface: s/vp8/vp9/ where possible 2013-07-12 11:05:39 -07:00
vp9_iface_common.h Using mi_cols instead of mb_cols. 2013-07-08 14:54:04 -07:00
vp9cx.mk Remove unused fwalsh/fdct x86 SIMD implementations. 2013-07-10 18:22:51 -07:00
vp9dx.mk Remove all asm offset files from VP9 2013-07-09 14:26:53 -07:00