Age | Commit message (Collapse) | Author |
|
|
|
Making foreach_transformed_block_in_plane more clear (it's not finished
yet). Using explicit tx_size variable consistently instead of
(ss_txfrm_size / 2) or (ss_txfrm_size >> 1) expression.
Change-Id: I1b9bba2c0a9f817fca72c88324bbe6004766fb7d
|
|
The macro block mode info context originally contained an
entry for each 16x16 macroblock. In VP9 each entry refers
to an 8x8 region not a macro block, so the naming is misleading.
This first stage clean up changes the names of 3 entries in the
structure to remove the mb_ prefix.
TODO clean up the nomenclature more widely in respect of
mbmi and bmi.
Change-Id: Ia7305c6d0cb805dfe8cdc98dad21338f502e49c6
|
|
Change-Id: I3ed4beb59371fe21ca3e82253aa98e0cbd5e0630
|
|
Adding set_skip_context() function used from both encoder and decoder.
Change-Id: Ia22cfad3211a00a63eb294f64f857b78f4aa9b85
|
|
Change-Id: I7f23d174eb089e5500f268a10db09648634c1b82
|
|
Loop filter configuration doesn't belong to macroblock, so moving it from
MACROBLOCKD to VP9_COMMON. Also moving the declaration of loopfilter struct
from vp9_blockd.h to vp9_loopfilter.h.
Change-Id: I4b3e34be9623b47cda35f9b1f9951f8c5b1d5d28
|
|
|
|
* changes:
vp9/decoder: threaded row-based loop filter
vp9/decoder: add thread worker
|
|
Currently the only threaded option for vp9 decode. Enabled when the
decoder config thread count is > 1.
Change-Id: I082959abac9e31aa4a38ed9fd68b94680e57f4df
|
|
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
|
|
Change-Id: I428c4d42212b757112e3acfe5b81314cfbb5fd6b
|
|
Using it instead of long unclear verbose check
"mbmi->ref_frame[0] != INTRA_FRAME".
Change-Id: I9c7b4b3797942fa962bf3ba7460fff3084beabe9
|
|
Change-Id: I27471768980fc631916069f24bc7c482a5c9ca17
|
|
Change-Id: I6aa4191935aa93461a07c41b59fdae1eb5f5f107
|
|
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
|
|
Adding plane type check condition because it was always used outside of
get_tx_type_{4x4, 8x8, 16x16}.
Change-Id: I02f0bbfee8063474865bd903eb25b54d26e07230
|
|
Counts are separate from frame context. We have several frame contexts but
need only one copy of all counts.
Change-Id: I5279b0321cb450bbea7049adaa9275306a7cef7d
|
|
Renamed:
MAX_MB_SEGMENTS to MAX_SEGMENTS
MB_SEG_TREE_PROBS to SEG_TREE_PROBS
The minimum unit for segmentation in the segment map
is now 8x8 so it is misleading to use MB_ as macro-block
traditionally refers to a 16x16 region.
Change-Id: I0b55a6f0426bb46dd13435fcfa5bae0a30a7fa22
|
|
excludes tiled content currently
Change-Id: I44155253e8d6771e5e039d663be5f21cc9d0355d
|
|
|
|
|
|
|
|
Using cm->frame_contexts[cm->frame_context_idx] as source of previous
probabilities.
Change-Id: Ie03778acf0e7bebdc3a1f6a51854d4a0712f24a1
|
|
Adding loopfilter struct with fields from MACROBLOCKD and VP9Common.
Eventually it will be moved to vp9_loopfilter.h for better code structure.
Change-Id: Iaf5fb71c33719cdfa1b991f671caf071be9ea035
|
|
Change-Id: Ic741054836d6c1b89c4f1c75cc6bd938a7d56723
|
|
Change-Id: Ia4e83913251c1cdc7aa2abd64bf01ecb1a962119
|
|
Moving TX_MODE enum to vp9_enums.h. Renaming txfm_mode variables to
tx_mode.
Change-Id: I459d1af6dd928ce7fccdf8ce30b6f1ca057bef92
|
|
This prevents a duplicate memcpy of a 128-byte struct every time
set_scale_factors() is called (which is a lot), thus leading to a
decrease from 3.7 MB to 1.85 MB of struct copying per 64x64 block
RD/partition loop.
Overall, this decreases encoding time of the first 50 frames of bus
@ 1500kbps (speed 0) from 1min5.9 to 1min4.9, i.e. about a 1.5%
overall speedup. We can likely get more gains by removing the copy
of the other struct (and replacing it with an indexing) as well.
Change-Id: I3dceb7e79f71e6fe911b11cc994cf89a869dde7a
|
|
Removing tile_rows and tile_columns from VP9Common, removing redundant
constants MIN_TILE_WIDTH and MAX_TILE_WIDTH, changing signature of
vp9_get_tile_n_bits.
Change-Id: I8ff3104a38179b2c6900df965c144c1d6f602267
|
|
Making implementation of vp9_set_pred_flag_{seg_id, mbskip} consistent
with vp9_get_segment_id without using confusing sub(a, b) macro. Passing
mi_row and mi_col to functions explicitly instead of replying on
mb_to_right_edge and mb_to_bottom_edge.
Change-Id: I54c1087dd2ba9036f8ba7eb165b073e807d00435
|
|
Removing unused DEC_DEBUG define and dec_debug variable. Changing function
signatures to eliminate code duplication, renaming function
mb_init_dequantizer to init_dequantizer. Also removing redundant curly
braces, and comments.
Change-Id: Ia56ee1b0be5f24abb0e878581845be8a4773c298
|
|
Also removing unused declarations from vp9_entropymode.h file.
Change-Id: Ib9c5826db3584a32f6bb3297a76c522b99d83402
|
|
lg2 -> log2
Change-Id: I0602ddff49e42c9c40c29c084d04b7592b9f8edf
|
|
Adding segmentation struct to vp9_seg_common.h. Struct members are from
macroblockd and VP9Common structs. Moving segmentation related constants
and enums to vp9_seg_common.h.
Change-Id: I23fabc33f11a359249f5f80d161daf569d02ec03
|
|
Splitting setup_txfm_mode into read_tx_mode and read_tx_probs.
Change-Id: I5b4fe48698d56490857d32eafcaeb4291f208479
|
|
Removes SEG_ID
Removes MBSKIP
Removes SWITCHABLE_INTERP
Removes INTRA_INTER
Removes COMP_INTER_INTER
Removes COMP_REF_P
Removes SINGLE_REF_P1
Removes SINGLE_REF_P2
Removes TX_SIZE
Change-Id: Ie4520ae1f65c8cac312432c0616cc80dea5bf34b
|
|
|
|
|
|
|
|
Eliminating usage of mb-units, switching to mi-units. Adding
ALIGN_POWER_OF_TWO macro.
Change-Id: I2491c969f713207c062011878b57e4e531818607
|
|
Removing set_refs, adding set_ref function.
Change-Id: I5635c478b106ae4e57d317f1c83d929644307e63
|
|
|
|
Change-Id: I65be6acc54c99688fd1f0c946cec3511514b8555
|
|
Change-Id: I32276552b3ea6dc1dce8e298be114cfe1019b31c
|
|
Change-Id: I08fc6e474ff2c12cfa065bae4989c724276e2c83
|
|
Change-Id: Ia547a5dd7650b771fd00edd673ab9f920270731c
|
|
|
|
|