Age | Commit message (Collapse) | Author |
|
Remove trailing commas to keep multiple elements on one line.
Add blank lines to prevent comments from being treated as blocks.
clang-format guards for struct with a comment in the middle.
Change-Id: I3bcb8313ae8aaf69179249a13b4087b1272cdbc0
|
|
Change-Id: Ie0f150fdcfcbf7c4db52d3a08bc8238ed1c72e3b
|
|
Don't initialize first pass costs for a number of symbols where first
pass probabilities aren't initialized.
This brings a 1.22x first pass speedup.
https://bugs.chromium.org/p/webm/issues/detail?id=1089
Change-Id: I97438c357bd88f52f5a15c697031cf0c3cc8f510
|
|
Change-Id: I6977f7d155cc1e81ae2393933893caac6770821f
|
|
The old workaround "p = 0 ? 0 : p -1" is misleading.
?: happens before =
assigning back to p truncates to one byte.
Therefore it is equivalent to (p - 1) & 0xFF, but the check just exists
to work around a first pass bug, so let's make the work around more
clear.
https://bugs.chromium.org/p/webm/issues/detail?id=1089
Change-Id: I587c44dd61c1f3767543c0126376f881889935af
|
|
This reverts commit 7f56cb29787b187c8cb1b778918ca3b80184c804.
It causes uninitialized reads in the first pass setting up later cost tables.
Change-Id: I2df498df3f5c03eff359f79edf045aed0c618dc9
|
|
The old workaround "p = 0 ? 0 : p -1" is misleading.
?: happens before =
assigning back to p truncates to one byte.
Therefore it is equivalent to (p - 1) & 0xFF, but the check just exists
to work around a first pass bug, so let's make the work around more
clear.
https://code.google.com/p/webm/issues/detail?id=1089
Change-Id: Ia6dcc8922e1acbac0eeca23a4d564a355c489572
|
|
change prefix vp9_ to vpx_ for non codec specific functions and data
structures.
Change-Id: I97c7e6422eceea99212b93f4942bc2187763a07c
|
|
Replace vp9_ in names to vpx_ as they are not codec specific.
Change-Id: I2e583aa63dee769353ada4b42417aa15c4074ebb
|
|
it's been unused since:
4ac6a25 Moving vp9_tree_probs_from_distribution() to encoder.
Change-Id: Ieae65864277fc3dbe993c5c08d75c6c5fcaa3a2d
|
|
vestigial. replace instances with memcpy() which they already were being
defined to.
Change-Id: Icfd1b0bc5d95b70efab91b9ae777ace1e81d2d7c
|
|
This tree should be defined in common/, as it is needed for
both encoder and decoder.
Change-Id: I4f5cbc80025cf2ced14182c98f7c82dc7d0f87db
|
|
This patch allocated frame contexts outside VP9_COMMON. This allows
multiple threads to share the same copy of frame contexts, and
reduces the overhead. It also guarantees the correct update of
these contexts during bitstream packing. This patch doesn't change
encoding result.
Change-Id: Ic181a2460b891d1d587278a6d02d8057b9dbd353
|
|
Tokenization and Detokenization enhancements for 10/12 bit
Change-Id: I3c269ec30f8eb160ee024905638a193975237559
|
|
Refactoring to remove some duplication of probability
tables between tokenization and detokenization.
Change-Id: I2fc6a6497f9c0410021a9b41f828bc58a864e466
|
|
- place extern within the macro
- use in the header only
Change-Id: I4274b345d8af9ef329c0eb9553a3ddaad70d1d26
|
|
Moving vp9_norm probability table from vp9_entropy.c to vp9_prob.c
Change-Id: Ie757b73860c6f43130790c332b292e2a1a81b788
|
|
Change-Id: Ic3bb862e93aedf6a489a33ea6f7e5097d96855ee
|
|
Writing custom coeff branch count calculation (which is much clearer) in
adapt_coef_probs() function. Removing vp9_treecoder.c file.
Change-Id: I8880fb7a39996c8bcf6cd0acf9898a8c712ba91f
|
|
Also adding BAND_COEFF_CONTEXTS macro to simplify for loop logic.
Change-Id: I12a78a49cf1addf81e6b3fe2a3736ec2b79bd79e
|
|
Moving all probability tables from removed file to vp9_entropy.c.
Change-Id: I12846f1da778c3016d96b82e53384d4634883430
|
|
|
|
Change-Id: Ic7f47a8d233daf5e61e82092865837ea4eda4095
|
|
Renaming constants for consistency:
DCT_VAL_CATEGORY1 => CATEGORY1_TOKEN
DCT_VAL_CATEGORY2 => CATEGORY2_TOKEN
DCT_VAL_CATEGORY3 => CATEGORY3_TOKEN
DCT_VAL_CATEGORY4 => CATEGORY4_TOKEN
DCT_VAL_CATEGORY5 => CATEGORY5_TOKEN
DCT_VAL_CATEGORY6 => CATEGORY6_TOKEN
DCT_EOB_TOKEN => EOB_TOKEN
DCT_EOB_MODEL_TOKEN => EOB_MODEL_TOKEN
MAX_ENTROPY_TOKENS => ENTROPY_TOKENS
Moving constants:
INTER_MODE_CONTEXTS from vp9_entropy.h to vp9_blockd.h.
EOSB_TOKEN from vp9_entropy.h to vp9_tokenize.h
Change-Id: I5fcbf081318e1d365792b6d290a930c6cb0f3fc2
|
|
Change-Id: I0e59d320407b3bed0ba3622a7b29975f6fad7ebf
|
|
Change-Id: I5556e8d1fc150be8a3e93af21900829b59a500dc
|
|
Change-Id: I00a5203c8ed76c184d936fccf93d76e7c06773d3
|
|
Change-Id: Ic316d3374ff9a2b43897272260947d56765a0fdd
|
|
Change-Id: I568f5e2d4ef2f2affe013ba1691ffb546f1fe8c6
|
|
Simplifies the code by implementing band mapping with static arrays.
A lot of the code complexity introduced in a previous patch
disappears.
Change-Id: Ia3fac36e594fb5ad2d55ae141c58bba4c55c2d28
|
|
Removing special case handling from vp9_tree_probs_from_distribution(),
tree_merge_probs(), and vp9_tokens_from_tree_offset() functions. Replacing
inter_mode_offset() function with macro INTER_OFFSET which is used now for
vp9_inter_mode_tree definition.
Change-Id: Iff75a1499d460beb949ece543389c8754deaf178
|
|
We don't have to calculate 'new' probability in convert_distribution()
because it is enough to calculate only 'new' counters which could be used
to calculate probability if necessary. That's why removing a lot of unused
temporary probability arrays and reducing number of get_binary_prob()
calls.
Change-Id: I4e14eb7203d1ace61bbddefd6b9b6326be83ba63
|
|
|
|
Updated the encoder to handle frames that are coded
intra-only. Intra-only frames must be non-showable,
that is, the "show frame" flag must be set to 0 in
the frame header.
Tested by forcing the ARF frames to be coded intra-
only.
Note: The rate control code will need to be modified
to account for intra-only frames better than they
are currently handled.
Change-Id: I6a9dd5337deddcecc599d3a44a7431909ed21079
|
|
Replacing
22 with TREE_SIZE(MAX_ENTROPY_TOKENS)
12 with MAX_ENTROPY_TOKENS
Change-Id: If24919336e8ace9cf64991bd5ae33fa6656f7b93
|
|
|
|
Change-Id: I7231589bda71d0d23c730283febd5bb58585a0da
|
|
Now we have entropy code separate from scan/iscan code. The next step
in future is to move iscan code from common part to the encoder.
Change-Id: Id9732f7d80aec00af35c1d58d1137c4c96c91451
|
|
Change-Id: I4e163cc4ce9ec2f3a5a8b9da478049c71b08d71f
|
|
Change-Id: I6be72c8b048d1ccc7ef43764cf84c32360098970
|
|
pc -> cm
Change-Id: If3e83404f574316fdd3b9aace2487b64efdb66f3
|
|
Removing redundant parenthesis and curly braces. Combining declarations
with initializations. Adding useful intermediate variables instead of
recalculating expressions every time.
Change-Id: I00106f404afd60bfc189905b0fded881684f941a
|
|
Change-Id: I541a178d997b4541e0e2d4d5b854e2ed6b113c3a
|
|
Change-Id: Icd128ab58719e0b9066bdfa66a5d0d427a84d6df
|
|
|
|
Change-Id: I2a6a646570e2af66315e7c658d00d99f80c4b127
|
|
Fixes a warning on MSVS 2012 where the alignment of vp9_default_iscan_8x8
didn't match between its declaration and definition.
Change-Id: I1466a15635f4b22594d705d570b7e399bfb6cf21
|
|
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
|
|
Adding common merge_probs and merge_probs2 functions. Changing ints to
usigned ints in some places.
Change-Id: Icf088ffdea7cf5b95284a128916409bdd53506b0
|
|
Change-Id: I61a8b0101eac3ee2e0621d56151b90c269fd4db4
|