summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_speed_features.h
diff options
context:
space:
mode:
authorPengchong Jin <pengchong@google.com>2014-08-13 20:07:39 -0700
committerPengchong Jin <pengchong@google.com>2014-08-15 16:14:20 -0700
commiteca93642e28102e5e30d6499f9661b89e8fdc27b (patch)
tree775844a89c8924dc6a45fa9edd756c8477f135e6 /vp9/encoder/vp9_speed_features.h
parent5b63c2797a50a6a007a9b20377b071cd0aa6d702 (diff)
downloadlibvpx-eca93642e28102e5e30d6499f9661b89e8fdc27b.tar
libvpx-eca93642e28102e5e30d6499f9661b89e8fdc27b.tar.gz
libvpx-eca93642e28102e5e30d6499f9661b89e8fdc27b.tar.bz2
libvpx-eca93642e28102e5e30d6499f9661b89e8fdc27b.zip
Add a speed feature to give the tighter search range
Add a speed feature to give the tighter partition search range. Before partition search, calculate the histogram of the partition sizes of the left, above and previous co-located blocks of the current block. If the variance of observed partition sizes is small enough, adjust the search range around the mean partition size, which will be tigher. The feature is currently turned on at speed 2. Experiments on sample youtube clips show on average the runtime is reduced by 3-7%. For hard stdhd clips: park_joy_1080p @ 15000kbps: 509251 ms -> 491953 ms (3.3%) pedestrian_area_1080p @ 2000kbps: 223941 ms -> 214226 ms (4.3%) The PSNR performance is changed: derf: -0.112% yt: -0.099% hd: -0.090% stdhd:-0.102% Change-Id: Ie205ec5325bf92ec5676c243e30ba9d0adca10f2
Diffstat (limited to 'vp9/encoder/vp9_speed_features.h')
-rw-r--r--vp9/encoder/vp9_speed_features.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_speed_features.h b/vp9/encoder/vp9_speed_features.h
index de731cee1..300b86822 100644
--- a/vp9/encoder/vp9_speed_features.h
+++ b/vp9/encoder/vp9_speed_features.h
@@ -63,7 +63,8 @@ typedef enum {
typedef enum {
NOT_IN_USE = 0,
RELAXED_NEIGHBORING_MIN_MAX = 1,
- STRICT_NEIGHBORING_MIN_MAX = 2
+ CONSTRAIN_NEIGHBORING_MIN_MAX = 2,
+ STRICT_NEIGHBORING_MIN_MAX = 3
} AUTO_MIN_MAX_MODE;
typedef enum {