This commit enables the dynamic reference motion vector coding mode
for the compound inter blocks.
Change-Id: Ibe78fd8de6989db392cd67a9d81a69d680345ba1
Make this consistent with regular block size rate-distortion
optimization. It improves the compression performance:
derf 0.055%
hevcmr 0.129%
Change-Id: I112fe734f592c21bc7aa6efb7e3f269c4214ee7b
There were a number of compiler warnings:
1. int16_t to uint8_t in recon_intra.c;
2. double to float conversions in psnrhvs.c
3. intptr_t to int in quantize.c
4. size_t to int32_t in decoder.c
Change-Id: Id95423b17779dcfa6cf39d9a90fe8cb8b910f5df
Set USE_12_SHARP_FILTER to 1 to turn on the experiment
The psnr percentages increase
derf stdhd
lowbd +0.332 +0.318
highbd +0.476 +0.507
Change-Id: I783c0fc764ee8541645e100453c9b2073924e209
For 1 pass real-time mode. No change in behavior as only last
and golden are used as references in 1 pass real-time mode.
Change-Id: Ie4655014eee1a8b271542f29d74b2c6f7fed54c9
the results along the top and left border are then stored with a moving
window into the vector.
~40-67% faster on ARM, ~40-77+% on x86 depending on the block size.
Change-Id: Iab369aa2946a3ae4eb7290d512868fe5db92dbc8
delete apply_cyclic_refresh_bitrate(). unused since:
3472cbb vp9 aq-mode=3: Keep it on even at low bitrates.
Change-Id: I0fac9a31b59504e31000ac3a8f0b68e8d4320113
Temporaly disable warning for unused function for vp10, needs clean
out the warnings before re-enable the flag for vp10.
Change-Id: I5636f8cd607423f6ea6963db9c2cbd688e30b495
The definition is for the number of frames to check to determine the
recent decay rate, further to determine the next key frame in the
first pass of the encoder.
Change-Id: Ic696d6eb518a86fa296842273cf8767ef0b0e27a
when INLINE is defined and mips is not being targeted. otherwise keep
the old --enable-extra-warnings behavior
Change-Id: Iba576edbe5fca03efa56ce99eee11f9cafc573ad
Seperate the prediction angle search and fitler search.
It can reduce the computation overhead of filter search by as much
as 85%, while keeping more than 50% of the coding gain.
Change-Id: Id152f71e20ebcaca8b429bdd4ca1fbeb646fc6bf
-use larger threshold on y (as in vp8).
-add distance threshold for each cluster
-use larger skin distance threshold for first cluster
-add some early exist checks.
Keep default setting to model=0.
Change-Id: I1044b99ade4bb1f215a860a019a4d84cee2f7715
BD-rate performance improvement (on top of ext-intra):
derflr 0.22%
hevclr 0.36%
hevcmr 0.48%
hevchr 0.37%
stdhd 0.19%
Average speed impact on some derf clips is about 40% slower (on
top of ext-intra). Speed improvment is a to-do.
Change-Id: I8fe3fe8c5e4f60d0462778adbcc15c84dfbe7a25
This commit generalizes dynamic reference motion vector coding mode
to support multiple candidate modes in the rate-distortion
optimization scheme and to support the selection in the bit-stream
syntax. The maximum number of modes allowed is currently limited to
4. The syntax elements for the dynamic reference motion vector
modes are using binary codes. The scheme supports single reference
frame.
It improves the compression performance
derf 0.135%
hevcmr 0.098%
Change-Id: Id053d6ce76e8365e52727bd0d12d28ce3de2e0e8
It improves the compression performance of VP9 by 0.1% across all
test sets. No speed change is observed.
Change-Id: I59338c5c9e67bae22188f35fc3afbfe2a6bba6b0