Age | Commit message (Collapse) | Author |
|
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-Id: I5a2abd35cb303d8f6354b3119ab95acf90405116
|
|
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
|
|
Change-Id: I0426126d0a65f13f9250983e44cc366b1b1a9c4a
|
|
Change-Id: Ib1cb1fbe92a39ff5312cee069559be6d3ea458d0
|
|
it's been unused since:
4ac6a25 Moving vp9_tree_probs_from_distribution() to encoder.
Change-Id: Ieae65864277fc3dbe993c5c08d75c6c5fcaa3a2d
|
|
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
|
|
vestigial. replace instances with memset() which they already were being
defined to.
Change-Id: Ie030cfaaa3e890dd92cf1a995fcb1927ba175201
|
|
(see I3a05cf1610679fed26e0b2eadd315a9ae91afdd6)
For the test clip used, the decoder performance improved by ~2%.
This is also an intermediate step towards adding back the
mode_info streams.
Change-Id: Idddc4a3f46e4180fbebddc156c4bbf177d5c2e0d
|
|
This tree should be defined in common/, as it is needed for
both encoder and decoder.
Change-Id: I4f5cbc80025cf2ced14182c98f7c82dc7d0f87db
|
|
Change-Id: Iabe8a8868a747626c24bb13f1796f4c7827af367
|
|
This commit breaks the overly broad header files into more
targeted and smaller ones, to help better structure the system
layout.
Change-Id: I7b24559d3ea6e582cf5d9bbe8f71459f9824d71b
|
|
mi_grid_* are arrays of pointer to pointer. They save the pointers that point
to the MIs in cm->mi. But they are unnecessary and complicated. The original
goal was to remove MODE_INFO_t copy. But with an extra MODE_INFO_t pointer
inside MODE_INFO_t, same goal could be achieved.
This commit totally removes the mi_grid_* structures. But there are still
many dummy MODE_INFO_t inside cm->mi which are a waste of memory. Next commit
will do on-demand MODE_INFO_t allocation in order to save these memories.
Change-Id: I3a05cf1610679fed26e0b2eadd315a9ae91afdd6
|
|
Tokenization and Detokenization enhancements for 10/12 bit
Change-Id: I3c269ec30f8eb160ee024905638a193975237559
|
|
Change-Id: I1b3c5337f018dde27dc819ab18bd081d169a91e8
|
|
Change-Id: I5b050122e6ed183a5b33c1f38e4fbf63b6721062
|
|
Refactoring to remove some duplication of probability
tables between tokenization and detokenization.
Change-Id: I2fc6a6497f9c0410021a9b41f828bc58a864e466
|
|
Actually, it would be great to have two separate enums INTRA_MODES and
INTER_MODES in future.
Change-Id: I6c4147cf0002853da9c1e03fe9514eab876f01c8
|
|
Renames:
mi_8x8 -> mi
mode_info_stride -> mi_stride
Change-Id: I66f3e5fd1e7b7f46f108af5bb711c5fd9493c1be
|
|
Change-Id: I9a19eb96907f674e3ce1e573f5dd49f0fbf2ae4f
|
|
Change-Id: I1fe71e35b1e44da693b43d26607abb33efd56820
|
|
Change-Id: Iaac57b24f79cd205a8c62bc1177412d22f5787a8
|
|
- place extern within the macro
- use in the header only
Change-Id: I4274b345d8af9ef329c0eb9553a3ddaad70d1d26
|
|
Change-Id: I859719d41ced2e35d2765b636e627bb7edc3651e
|
|
Change-Id: Ic334da9aee968e33762c2b25d9fbad24c844b411
|
|
VS2013 Chromium builds failed with:
warning C4742: 'vp9_coefband_trans_8x8plus' has different alignment in
https://code.google.com/p/chromium/issues/detail?id=336620
Change-Id: I865f72bc23ae958531eeb5f497002c12e9a36fcd
|
|
Change-Id: I07470ad1b7a0344d088911428ffab8ba9a0d8708
|
|
Moving vp9_norm probability table from vp9_entropy.c to vp9_prob.c
Change-Id: Ie757b73860c6f43130790c332b292e2a1a81b788
|
|
string literal to int within an assert
Change-Id: I0c889256b67a078e6e2a79577f0b7ae084243258
|
|
Change-Id: Ic3bb862e93aedf6a489a33ea6f7e5097d96855ee
|
|
Also adding BAND_COEFF_CONTEXTS macro to simplify for loop logic.
Change-Id: I12a78a49cf1addf81e6b3fe2a3736ec2b79bd79e
|
|
|
|
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: Ie829ee58a55157e6972c63cebe69a5d0a3221349
|
|
Change-Id: I5556e8d1fc150be8a3e93af21900829b59a500dc
|
|
Change-Id: I00a5203c8ed76c184d936fccf93d76e7c06773d3
|
|
Change-Id: I473947b5ca70b7a81151926284bff86f8555492a
|
|
Change-Id: Ic316d3374ff9a2b43897272260947d56765a0fdd
|
|
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
|
|
Change-Id: I60e02fa3de930ff1f969687ab5af93dee40d86ad
|
|
Implements scan order to band map with arrays in both the encoder
and decoder to remove conditional statements.
Encoding seems to be about 1% faster at speed 0, tested on football.
Decoding seems to be about 0.5-1% faster on a set of 25 videos.
Change-Id: Idb233ca0b9e0efd790e30880642e8717e1c5c8dd
|
|
Change-Id: I12c67c8c0fa1aa7fb3f7d6cc2ef65be29c4ea292
|
|
Moving code that gets band_translate array from get_scan_and_band()
function to get_band_translate() function. Renaming get_scan_and_band() to
get_scan().
Change-Id: I43047c205a1ca2a6e24be44db39dc04b7a385008
|
|
|
|
Change-Id: If14265084e9b4c85c75b43e8d33a6fafad468cbc
|