summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_block.h
diff options
context:
space:
mode:
authorMarco <marpan@google.com>2017-03-16 15:55:33 -0700
committerMarco <marpan@google.com>2017-03-20 12:42:26 -0700
commit06c8713e89514ccbed2d68e847adfd7830b53881 (patch)
tree1c82709b9a673f4374c2e3eb96da7b514cf761cd /vp9/encoder/vp9_block.h
parent36533e8c5a00b0ae430ba2b102bedfd587e67db1 (diff)
downloadlibvpx-06c8713e89514ccbed2d68e847adfd7830b53881.tar
libvpx-06c8713e89514ccbed2d68e847adfd7830b53881.tar.gz
libvpx-06c8713e89514ccbed2d68e847adfd7830b53881.tar.bz2
libvpx-06c8713e89514ccbed2d68e847adfd7830b53881.zip
vp9: Use sb content measure to bias against golden.
For each superblock, keep track of how far from current frame was the last significant content change, and use that (along with GF distance), to turnoff GF search in non-rd pickmode. Only enabled for speed >= 8. avgPNSR on RTC/RTC_derf down by ~0.9/1.2. Speedup on mac: ~3-5%. Speedup on arm: 3.6% for VGA and 4.4% for HD. Change-Id: Ic3f3d6a2af650aca6ba0064d2b1db8d48c035ac7
Diffstat (limited to 'vp9/encoder/vp9_block.h')
-rw-r--r--vp9/encoder/vp9_block.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_block.h b/vp9/encoder/vp9_block.h
index c86c818aa..071a9b3e3 100644
--- a/vp9/encoder/vp9_block.h
+++ b/vp9/encoder/vp9_block.h
@@ -170,6 +170,8 @@ struct macroblock {
uint8_t skip_low_source_sad;
+ uint8_t last_sb_high_content;
+
// Used to save the status of whether a block has a low variance in
// choose_partitioning. 0 for 64x64, 1~2 for 64x32, 3~4 for 32x64, 5~8 for
// 32x32, 9~24 for 16x16.