Age | Commit message (Collapse) | Author |
|
|
|
|
|
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
|
|
Change-Id: I401536778e3c68ba2b3ae3955c689d005e1f1d59
|
|
|
|
|
|
|
|
|
|
Making appropriate memset inside decode_block now.
Change-Id: I8e944194668c830de08271c8fb6e413251c201d8
|
|
Remove mode_check_freq and mode_test_hit_counts from VP9_COMP.
Change-Id: Iabfd9f841444cd9bf19ac761a9795f140082ce0b
|
|
The codec should effectively run with motion vector of range (-2048, 2047)
in full pixels, for sequences of 1080p and below. Add assertions to clarify
this behavior.
Change-Id: Ia0cac28249f587d8f8882205228fa480263ab313
|
|
|
|
Change-Id: I4b1c6bb9ff615f5872b96ed07dbf0f5e18e63643
|
|
Change-Id: I92fd32476c472e54f52b8d7602a98262b25e6eaf
|
|
|
|
|
|
|
|
|
|
Moving out decode_tokens function calls and adding decode_blocks boolean
variable. We only have to decode if eobtotal > 0, i.e. we have at least one
non-zero coefficient. Also inlining and remove vp9_set_pred_flag_mbskip
function.
Change-Id: I7be38b12ee8206faf0beea2bbf4d52be42575b03
|
|
Change-Id: Ib19dabe697656e4d7e8403d91bedca7cd31d36bf
|
|
Change-Id: Icc6a76a5be77f3e19918155bab3998e0aa32ccf5
|
|
Change-Id: I6c4058aebe834e1a12b7a3fb10484b9ebe60b349
|
|
Change-Id: I84209d382ca5dfc537ee533cd792d8caa0e25cee
|
|
|
|
The declaration of the bilinear filters specified an alignment clause
in the implementation file but not in the header. This turned out
to be harmless, but it did cause linker warnings to be emitted when
building on Windows.
The (extern) declaration in the header was changed, to match the
declaration in the implementation.
Change-Id: I44be89b1572fe9a50fa47a42e4db9128c4897b04
|
|
|
|
Interleaved the instructions, reduced register dependency, and
prefetched the source data. This improved the decoder speed
by 0.6% - 2%.
Change-Id: I568067aa0c629b2e58219326899c82aedf7eccca
|
|
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
|
|
near is a key word, changed to use nearmv instead.
Change-Id: Ib54438c431b2b2521a62fc7b61a9c127dd7bc01e
|
|
Change-Id: I6973e7121b6393379b5759f288632e8eab763d3e
|
|
Function list:
tx_counts_to_branch_counts_32x32
tx_counts_to_branch_counts_8x8
tx_counts_to_branch_counts_8x8
update_ct
update_ct2
update_mode_probs
Change-Id: I120d8945a34378cf285d6bd415e23de1d522cf2f
|
|
|
|
|
|
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
|
|
Change-Id: I7380a089105f658257bbb3e30a525da168e76952
|
|
It doesn't seem reasonable to have these files as our API part. Just
inlining them in the source.
Change-Id: Iff970bb25e72e49e7ac21990824dbf4ef8bfd2e2
|
|
|
|
We don't need these functions anymore. The only one which was actually
used is vp9_add_constant_residual_32x32. Addition of
vp9_short_idct32x32_1_add eliminates this single usage. SSE2 optimized
version of vp9_short_idct32x32_1_add will be added in the next patch set,
right now it is only C implementation. Now we have all idct functions
implemented in a consistent manner.
Change-Id: I63df79a13cf62aa2c9360a7a26933c100f9ebda3
|
|
|
|
* changes:
fixed cpp lint issue in vp9_postproc_x86
nolintify intrinsic idct file
|
|
|