diff options
author | Hui Su <huisu@google.com> | 2018-07-20 15:29:14 -0700 |
---|---|---|
committer | Hui Su <huisu@google.com> | 2018-07-23 10:22:32 -0700 |
commit | b54cdcc3de62390dc438a36425665a89958aefea (patch) | |
tree | 21a801b2b62cf84207bab351cca3322e6197de5b /vp9/encoder/vp9_speed_features.h | |
parent | e858863dda2e242ede57916dae4086a991f618dd (diff) | |
download | libvpx-b54cdcc3de62390dc438a36425665a89958aefea.tar libvpx-b54cdcc3de62390dc438a36425665a89958aefea.tar.gz libvpx-b54cdcc3de62390dc438a36425665a89958aefea.tar.bz2 libvpx-b54cdcc3de62390dc438a36425665a89958aefea.zip |
Add prune_ref_frame_for_rect_partitions feature
Add a speed feature to prune reference frames for rectangular
partitions. Rectangular partition RD search happens after square
partition RD search. With this feature, we keep record of the ref
frames picked by square partitions, and only consider those ref
frames during rect partition RD search.
With this feature on, the computation cost of rect partition RD
search is greatly reduced, so we can afford to skip rect partition
RD search less aggressively.
Overall, both compression and encoding speed are improved. Only
speed 0 is affected.
Coding gains:
lowres midres hdres
ovr psnr 0.00% -0.36% -0.37%
avg psnr 0.00% -0.36% -0.36%
Tested encoding speed with QP=40 on about 30 sequences.
Speed gains:
lowres midres hdres
average 13.4% 7.1% 6.1%
max 28.0% 12.0% 9.8%
Change-Id: Id5f36dd2ac75028ae98550d67b0a524aa251b692
Diffstat (limited to 'vp9/encoder/vp9_speed_features.h')
-rw-r--r-- | vp9/encoder/vp9_speed_features.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_speed_features.h b/vp9/encoder/vp9_speed_features.h index 7a591e491..fd4973fb2 100644 --- a/vp9/encoder/vp9_speed_features.h +++ b/vp9/encoder/vp9_speed_features.h @@ -319,6 +319,9 @@ typedef struct SPEED_FEATURES { int use_square_partition_only; BLOCK_SIZE use_square_only_threshold; + // Prune reference frames for rectangular partitions. + int prune_ref_frame_for_rect_partitions; + // Sets min and max partition sizes for this 64x64 region based on the // same 64x64 in last encoded frame, and the left and above neighbor. AUTO_MIN_MAX_MODE auto_min_max_partition_size; |