Age | Commit message (Collapse) | Author |
|
Change-Id: Ic23a705e48cadaa7151f2bd8536d56636cb973e3
|
|
This commit defines b_mode_info as a struct type. This will allow
us to further remove the use of PARTITION_INFO in the encoding process.
Change-Id: I975b0f7d557b5e0f66545a61b472def76b671cce
|
|
Remove redundant variable definition/use in rate-distortion search
loop for regular and sub8x8 blocks, respectively.
Change-Id: Ic0eb3660bb6851ba2eb8d702ba9fd11595000d01
|
|
|
|
This commit separates the rate-distortion optimization loop of
superblocks from that of sub8x8 blocks. This allows better design
rate-distortion optimization search loop for each setting. It also
removes the use of SPLITMV and I4X4_PRED therein.
No performance change in speed 0 settings. For bus@CIF at 2000kbps,
the speed 1 runtime goes from 48009ms to 43894ms (about 10% faster).
The overall compression performance on derf changed by -0.021%.
Speed 2 runtime goes from 27114ms to 28700ms (6% slower), while the
overall coding efficiency goes up by 1.629% for derf, 1.236% for yt.
Change-Id: Ie6bdfa0a370148dd60bd800961077f7e97e67dd4
|
|
Change-Id: I9a0d0e9c3459954aa7b9c68f92cc5d56385ebd18
|
|
|
|
|
|
|
|
Substantial reworking of the speed vs quality trade offs for
speed 1 and 2.
In this patch I am attempting to freeze the "quality" meaning of
speeds 1 and 2 relative to speed 0 so that in future we can
better evaluate progress.
I am targeting :
Speed 1 quality ~-5% vs speed 0.
Speed 2 quality ~-10% vs speed 0
It is inevitable that quality will still fluctuate a little as we adjust
settings and add new features, but we will attempt to keep as
close as possible to these values. Above speed 2 things will remain
a bit more fluid for now.
In this patch speed 1 is approximately 4-5x as fast as speed 0. This
is similar to before but the quality hit is a lot less. Likewise speed 2
is approximately 2x as fast as speed 1 but is similar in quality to the
previous speed 1 configuration.
Also slight change to behavior of FLAG_EARLY_TERMINATE to insure
all reference frames get at least one rd test. Important for very low
variance regions.
WIP :- Added a new speed level with old speed 4 becoming speed 5.
Speed 3 and 4 tradeoffs still WIP
Change-Id: Ic7a38dd7b5b63ab1501f9352411972f480ac6264
|
|
This commit causes use last partition to consider whether a 64x64 has
motion that might make a new partitioning worth while.
Change-Id: I3a57bedef4f3cd961fadbfa96651c206fa36da4a
|
|
|
|
Adding appropriate test vector vp90-2-06-bilinear.webm.
Change-Id: Ia3bbf57318e0cc61a1b724fe751e3f9c7e11b337
|
|
|
|
Remove mode_check_freq and mode_test_hit_counts from VP9_COMP.
Change-Id: Iabfd9f841444cd9bf19ac761a9795f140082ce0b
|
|
|
|
|
|
Change-Id: Icc6a76a5be77f3e19918155bab3998e0aa32ccf5
|
|
Change-Id: I6c4058aebe834e1a12b7a3fb10484b9ebe60b349
|
|
Change-Id: I84209d382ca5dfc537ee533cd792d8caa0e25cee
|
|
Also renaming mb_row -> mi_row, mb_col -> mi_col arguments and calculate
mb_rows/mb_cols values from mi_rows/mi_cols.
Change-Id: I6919a279f560648e23bc9a12f507d17c21ffd5d7
|
|
Make encoder skip rectangular partition check in speed 1 and above,
when early termination was triggered in partition split.
Thanks Guillaume (gmartres@) for catching this issue.
This change makes bus_cif at 2000kbps speed 1 runtime goes down from
25612ms to 23438ms (about 9% speed-up), at the expense of -0.235%
performance down.
Change-Id: I98613fad081a261d30d5fa206f934ca70601c180
|
|
|
|
|
|
The code now takes into account temporal and spatial
information to determine the partition size range, but the
frequency counts have been removed.
The net effect is similar in quality but about 10% faster.
Change-Id: I39a513fb79cec9177b73b2a7218f0da70963ae95
|
|
This patch deletes the variance based speed three partitioning.
Speed 3 now uses the same partitioning method as speed 2
but with some stricter conditions.
The speed and quality are now somewhere between speeds 2 and 4
whereas before it was worse in both than speed 4.
Change-Id: Ia142e7007299d79db3ceee6ca8670540db6f7a41
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Change-Id: Ia455c1900d84a3221e3681e31e15ca86bd03f89d
|
|
|
|
Making name consistent with vp9_short_idct8x8 and vp9_short_idct8x8_1.
Change-Id: I99e0be040ec893f9571dcf090e18f98dc58339f5
|
|
Change-Id: I6be72c8b048d1ccc7ef43764cf84c32360098970
|
|
Some small changes to the quantizer mapping functions.
Also includes some cleanups.
Change-Id: I9dea29b24015f6e6697012a0e4d8983049d8e5c7
Results:
derfraw300: +0.106%
stdhdraw250: +0.139%
|
|
Making function name consistent with vp9_short_idct16x16 and
vp9_short_idct16x16_1.
Change-Id: I70e54be9e6b9a1dddab0de470686591e96d05517
|
|
Don't divide RDMULT and RDDIV by 100 when RDMULT > 1000. This was
probably done to avoid overflow when the rd cost was stored in a 32 bits
integer but this is not the case anymore. This change will make it easier
to support multiple quantizers per frame.
derf compression gain at speed 0: 0.037%
Change-Id: Ibeeb9b7cfa1a132a7af41bc90fc07a3bba0857f6
|
|
Change-Id: I60dee58a4fd24d3c4f3c101a49d30e217309f43a
|
|
|
|
|
|
Change-Id: I9795d0937bc07793c13d067281995e0750f694d9
|
|
|
|
Moving all code from that file to vp9_variace_c.c in the encoder.
Change-Id: Ic803d5b4c78d5191e4d25541b3df97337878fc3e
|
|
|
|
|
|
|
|
Change-Id: Ife0dd29fb4ad65c7e12ac5f1db8cea4ed81de488
|
|
Renaming txfm_stepdown_count to tx_stepdown_count and max_txfm_size to
max_tx_size.
Change-Id: Ifc173e22c78240e561a57c4c741b64b1b8fc6fef
|