Age | Commit message (Collapse) | Author |
|
Various header/test files had to be re-worked in order to
build "Remove cm parameter from vp9_decode_block_tokens()".
This patch reverts the "Remove cm" part and only contains
the re-worked header files.
Change-Id: I520958a88d1991fee988a3c784d0eac40e117a32
|
|
Moved vp9_accumulate_frame_counts to vp9_thread_common.c to
eliminate the duplicate code.
Change-Id: I9cf506d729603c8bf1494b4c86a3b7d47af1917a
|
|
1. move the check of search method of USE_TX_8X8 up one level to
avoid operations of build_tree_distributions()
2. count tx used and avoid computaton for coef udpate when one size
is not used at all.
Change-Id: Ia3e54a2588aa531c41377a1bfaa64385d04a592c
|
|
If decoding starts with intra-only frame, there is a possibility
of using uninitialized entropy context, what leads to undefined
behavior.
Change-Id: Icbb64b5b1bd1e5de2a4bfa2884e56bc0a20840af
|
|
Add comments on the use case of these definitions. Further reduce
the scope of header file in vp9_context_tree.h.
Change-Id: Ic4a7638e838d0ac441b64abfc56e57354c059d75
|
|
Actually, it would be great to have two separate enums INTRA_MODES and
INTER_MODES in future.
Change-Id: I6c4147cf0002853da9c1e03fe9514eab876f01c8
|
|
Change-Id: Iebd182d7aeebc0f8964b6fd35057449bb25b00c1
|
|
Change-Id: I1fe71e35b1e44da693b43d26607abb33efd56820
|
|
|
|
Change-Id: Ic334da9aee968e33762c2b25d9fbad24c844b411
|
|
Change-Id: I7520e1cc82b749187c9445356dd7b54f3f3826cc
|
|
Moving vp9_norm probability table from vp9_entropy.c to vp9_prob.c
Change-Id: Ie757b73860c6f43130790c332b292e2a1a81b788
|
|
Change-Id: I248ccb1532e2cd95314d0b95108f2c2e71cf084f
|
|
We only update partition_probs for inter frames but they are constant
for key frames. It is not necessary to have constants inside frame
context and copy them every time. This change reduces FRAME_CONTEXT size
by at least 48 bytes.
Change-Id: If70a53be51043f37fe7d113853217937710932a7
|
|
Change-Id: I9781a62bc1a4cd9176554d1271d87dbcafda9cb0
|
|
Using TREE_SIZE for the following trees:
vp9_intra_mode_tree
vp9_inter_mode_tree
vp9_partition_tree
vp9_switchable_interp_tree
vp9_mv_joint_tree
vp9_mv_class_tree
vp9_mv_class0_tree
vp9_mv_fp_tree
Change-Id: I0212bb4c1ee6648249f68517e28a67a56591ee1b
|
|
Values of MODE_UPDATE_PROB and VP9_COEF_UPDATE_PROB are equal, so replacing
them with one constant. Inlining appropriate arguments for functions:
vp9_cond_prob_diff_update (encoder)
vp9_diff_update_prob (decoder)
Change-Id: I1255a1cb477743b799b3bfbbcd8de6b32b067338
|
|
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
|
|
Change-Id: I302ab4603553352a84b57bc89bc9e3d037978d29
|
|
stragglers
Change-Id: Ib1e853f9a331b7b66639dc34d79568d84d1930f1
|
|
Change-Id: I481d9bb2fa3ec72b6a83d5f04d545ad8013f295c
|
|
VP9_COMMON is the right place to segmentatation struct because it has
global segmentation parameters, not something specific to macroblock
processing.
Change-Id: Ib9ada0c06c253996eb3b5f6cccf6a323fbbba708
|
|
This changeset allows to remove vp9_switchable_interp and
vp9_switchable_interp_map arrays and make code much clear. Actually we
still have to use these mapping but only inside read_interp_filter_type and
write_interp_filter_type functions.
Change-Id: I4026c6f8c4acefba6c81421b7bacbaa52cc45f50
|
|
Using inter-mode counts instead of inter-mode-tree branch counts inside
FRAME_COUNTS structure.
Change-Id: I60dde13af37d06146d7d15543311c1b5044e9e04
|
|
Change-Id: I6aa4191935aa93461a07c41b59fdae1eb5f5f107
|
|
|
|
Change-Id: I0625d8ffddf590dfecd1bb8b8d6f57ef64b8bf18
|
|
Removing unused constants, macros, and function declarations. Using
ROUND_POWER_OF_TWO macro, vp9_zero, vp9_copy where possible. Moving
#include from *.h to *.c. Merging for loops for motion vectors.
Change-Id: Ic3bf841764a2bb177128bb3a6d7aa8f68229cd13
|
|
Moving code from vp9_adapt_mode_context to vp9_adapt_mode_probs.
Change-Id: I60829c30b28968cd813551ef3a206dfb98d323c9
|
|
Change-Id: I21ee76bcae101cc9f6ef1d867622e50b7ae565fc
|
|
All filters are interpolating now, so we don't need this array, all
values from this array are evaluated to true.
Change-Id: I9af6d8219ae0eb984063cd15e4e2296374ae4961
|
|
|
|
Changing fc->tx_probs back to fc->pre_tx_probs. This change actually
affects the bitstream but current test vectors work. Chrome branch is not
affected at all. Broken since:
cc662dd Adding struct tx_probs and struct tx_counts to cleanup the code.
Change-Id: I36dd4b3678e902e10aba8dd49b0012eb558c209d
|
|
Renaming vp9_sb_mv_ref_tree to vp9_inter_mode_tree, and
vp9_sb_mv_ref_encoding_array to vp9_inter_mode_encodings.
Change-Id: I0e91fbf81350d3ec5a2599064c74089b5d06133a
|
|
These arrays have constant values (no any updates). Removing two
corresponding memcpy calls. Making a little cleanup in vp9_entropymode.h
as well: removing redundant 'extern' keyword and moving all function
declarations at the end.
Change-Id: Ia16b38b46aec2e2500f5df29c40a297ae241dede
|
|
Removing vp9_modelcontext.c.
Change-Id: If2316c58dead2708d9f95b52d9494ba4c1dd7427
|
|
Also removing unused declarations from vp9_entropymode.h file.
Change-Id: Ib9c5826db3584a32f6bb3297a76c522b99d83402
|
|
* New probs for subpel filters/tx_count
* Makes a change to not reset to defaults for the tx_size
probs if an intermediate frame reverts to using a fixed tx_size.
* A few updates to the parameters for backward adaptation for mode/mv
* some cosmetic cleanups
derf300: +0.06%
Change-Id: I22994d659bc31ca7a4fc8820fde24001e64a2920
|
|
Reduces TX_SIZE contexts to 2 for each kind. The code is
cleaner and there is hardly any performance difference with
more than two contexts.
Results: almost neutral
Change-Id: I17656bd6db76224ae2856adf882504560e7dbaa4
|
|
Adds coding of transform size within a frame by use of context
of transform sizes selected in left and above blocks.
Also incorporates code for generating stats.
TODO: generate and incorporate new default stats
Change-Id: I6a7af099f6ad61d448521d9a51167aedaf638ed6
|
|
Changes to the coding of transform sizes, along with forward
and backward probability updates.
Results:
derf300: +0.241%
Context based coding of transform sizes will be in a separate
patch.
Change-Id: I97241d60a926f014fee2de21fa4446ca56495756
|
|
Split partition probabilities between keyframes and non-keyframes,
since they are fairly different. Also have per-blocksize interframe
y intramode probabilities, since these vary heavily between different
blocksizes.
Lastly, replace default probabilities for partitioning and intra modes
with new ones generated from current codec. Replace counts with actual
probabilities also.
Change-Id: I77ca996e25e4a28e03bdbc542f27a3e64ca1234f
|
|
NO bitstream change
Change-Id: I79f6146dac5fdd157051b6f8dc611c0b7b5e5f7f
|
|
These are now merged in a new define called VP9_INTRA_MODES.
Change-Id: I0890f895756a7395d84c92f98f43e43f4cf9050d
|
|
Also merge all counters. This removes a few unused probability updates
from the bitstream.
Change-Id: I20f58853e9dac84d8c0d9703ae012c55917516eb
|
|
Change-Id: Ic40d56fb162f4e201547dfae33e62ccd9e865889
|
|
1. remove prediction mode conversion
2. unified bmode, same for key and non-key frame
3. set I4X4_PRED count for pdf to 0, as I4X4_PRED is no longer
coded ever. It is determined by ref_frame and block partition
Change-Id: If5b282957c24339b241acdb9f2afef85658fe47d
|
|
Also do per-partition motion vector referencing in <sb8x8 partitions,
and adjust mvref finding for sub8x8 partitions.
Change-Id: Id3ed1ed4d2a8910d11d327db6cc63b8eb79f941f
|
|
Replace vp9_kf_default_bmode_counts structure with
direct default probabilities. The probability structure is
smaller and it removes the need to specify in the bitstream
how to convert the counts to probabilities.
Note that I have concerns still about the size and value of
the large intra mode context. This may cause problems for
HW but it also means we rely heavily on reverse update as
forwards update of a structure this size is problematic. I
intend to review this more generally in the next few days to
see if we can come up with a competitive solution that does
not rely on such a large context.
Change-Id: I0a36071079d5d26a57ab0e9fbf91af4199aa7984
|
|
Delete code under the CONFIG_COMP_INTERINTRA_PRED
flag.
Change-Id: I3d1079cf46305c08f7e11d738596ea112e7b547f
|