summaryrefslogtreecommitdiff
path: root/vp9/common/vp9_entropy.h
AgeCommit message (Collapse)Author
2014-12-23WIP: Remove giant value cost tableJim Bankoski
Change-Id: Iabe8a8868a747626c24bb13f1796f4c7827af367
2014-10-07Clean up header files in vp9_blockd.h and related filesJingning Han
This commit breaks the overly broad header files into more targeted and smaller ones, to help better structure the system layout. Change-Id: I7b24559d3ea6e582cf5d9bbe8f71459f9824d71b
2014-09-19Remove mi_grid_* structures.hkuang
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
2014-09-19High bit-depth coefficient coding functionsDeb Mukherjee
Tokenization and Detokenization enhancements for 10/12 bit Change-Id: I3c269ec30f8eb160ee024905638a193975237559
2014-08-04break at the end of clauses with assert(0) to avoid gcc warningJim Bankoski
Change-Id: I1b3c5337f018dde27dc819ab18bd081d169a91e8
2014-08-01vp9_entropy: inline comes first to avoid warning.Jim Bankoski
Change-Id: I5b050122e6ed183a5b33c1f38e4fbf63b6721062
2014-07-11Some extra bit probability cleanupsDeb Mukherjee
Refactoring to remove some duplication of probability tables between tokenization and detokenization. Change-Id: I2fc6a6497f9c0410021a9b41f828bc58a864e466
2014-04-22Renaming MB_PREDICTION_MODE to PREDICTION_MODE.Dmitry Kovalev
Actually, it would be great to have two separate enums INTRA_MODES and INTER_MODES in future. Change-Id: I6c4147cf0002853da9c1e03fe9514eab876f01c8
2014-04-01Renaming two members in MACROBLOCKD struct.Dmitry Kovalev
Renames: mi_8x8 -> mi mode_info_stride -> mi_stride Change-Id: I66f3e5fd1e7b7f46f108af5bb711c5fd9493c1be
2014-03-12Renaming mode2txfm_map to intra_mode_to_tx_type_lookup.Dmitry Kovalev
Change-Id: I9a19eb96907f674e3ce1e573f5dd49f0fbf2ae4f
2014-02-28Moving FRAME_CONTEXT & FRAME_COUNTS to vp9_entropymode.h.Dmitry Kovalev
Change-Id: I1fe71e35b1e44da693b43d26607abb33efd56820
2014-02-27Adding get_y_mode() function.Dmitry Kovalev
Change-Id: Iaac57b24f79cd205a8c62bc1177412d22f5787a8
2014-02-18vp9: normalize DECLARE_ALIGNED use on global tablesJames Zern
- place extern within the macro - use in the header only Change-Id: I4274b345d8af9ef329c0eb9553a3ddaad70d1d26
2014-02-09Converted short static functions to inline.Jim Bankoski
Change-Id: I859719d41ced2e35d2765b636e627bb7edc3651e
2014-01-23vp9/common: add extern "C" to headersJames Zern
Change-Id: Ic334da9aee968e33762c2b25d9fbad24c844b411
2014-01-21Match vp9_coefband_trans_* declarationsJohann
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
2013-12-20Moving MAX_PROB constant to vp9_prob.h.Dmitry Kovalev
Change-Id: I07470ad1b7a0344d088911428ffab8ba9a0d8708
2013-12-16Converting vp9_treecoder.h to vp9_prob.{h, c}Dmitry Kovalev
Moving vp9_norm probability table from vp9_entropy.c to vp9_prob.c Change-Id: Ie757b73860c6f43130790c332b292e2a1a81b788
2013-12-12vp9 asserts: fix compile warningJames Zern
string literal to int within an assert Change-Id: I0c889256b67a078e6e2a79577f0b7ae084243258
2013-12-06Removing BLOCK_TYPES and adding PLANE_TYPES constant instead.Dmitry Kovalev
Change-Id: Ic3bb862e93aedf6a489a33ea6f7e5097d96855ee
2013-12-05Renaming PREV_COEF_CONTEXTS to COEFF_CONTEXTS.Dmitry Kovalev
Also adding BAND_COEFF_CONTEXTS macro to simplify for loop logic. Change-Id: I12a78a49cf1addf81e6b3fe2a3736ec2b79bd79e
2013-12-04Merge "Cleaning up vp9_entropy.h file."Dmitry Kovalev
2013-12-03Formatting vp9_pareto8_full array.Dmitry Kovalev
Change-Id: Ic7f47a8d233daf5e61e82092865837ea4eda4095
2013-12-03Cleaning up vp9_entropy.h file.Dmitry Kovalev
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
2013-11-27Moving token-encoding related stuff from common to encoder.Dmitry Kovalev
Change-Id: I0e59d320407b3bed0ba3622a7b29975f6fad7ebf
2013-11-22Organizing all scan tables into lookup table.Dmitry Kovalev
Change-Id: Ie829ee58a55157e6972c63cebe69a5d0a3221349
2013-11-20Clean up removal of vp9_pareto8 table.Jim Bankoski
Change-Id: I5556e8d1fc150be8a3e93af21900829b59a500dc
2013-11-20remove the model and copy in pack_mb_tokensJim Bankoski
Change-Id: I00a5203c8ed76c184d936fccf93d76e7c06773d3
2013-11-19scan order table lookup same for encoder and decoderJim Bankoski
Change-Id: I473947b5ca70b7a81151926284bff86f8555492a
2013-11-19entropy code speedupJim Bankoski
Change-Id: Ic316d3374ff9a2b43897272260947d56765a0fdd
2013-11-13Simplifies band-getting with a static arrayDeb Mukherjee
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
2013-11-12Adding const to tree pointer inside vp9_extra_bit struct.Dmitry Kovalev
Change-Id: I60e02fa3de930ff1f969687ab5af93dee40d86ad
2013-11-12Removes conditional statements from band gettingDeb Mukherjee
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
2013-10-31Cleanup. Adding const to function pointer arguments.Dmitry Kovalev
Change-Id: I12c67c8c0fa1aa7fb3f7d6cc2ef65be29c4ea292
2013-10-16Adding get_band_translate() function.Dmitry Kovalev
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
2013-10-16Merge "Removing print_prob_tree function and vp9_coeff_probs typedef."Dmitry Kovalev
2013-10-14Removing print_prob_tree function and vp9_coeff_probs typedef.Dmitry Kovalev
Change-Id: If14265084e9b4c85c75b43e8d33a6fafad468cbc
2013-10-14Using constants instead of plain numbers.Dmitry Kovalev
Replacing 22 with TREE_SIZE(MAX_ENTROPY_TOKENS) 12 with MAX_ENTROPY_TOKENS Change-Id: If24919336e8ace9cf64991bd5ae33fa6656f7b93
2013-10-11Merge "Replacing {VP9_COEF, MODE}_UPDATE_PROB with DIFF_UPDATE_PROB."Dmitry Kovalev
2013-10-11Replacing {VP9_COEF, MODE}_UPDATE_PROB with DIFF_UPDATE_PROB.Dmitry Kovalev
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
2013-10-10Removing vp9_tree_p typedef.Dmitry Kovalev
It is used only two times and it is more clear to use real type instead of typedef. Change-Id: Idc25c16504c3da4d040e0cdb33a2987631bb6a5b
2013-10-10Merge "Moving all scan/iscan code into separate vp9_scan.{h, c} files."Dmitry Kovalev
2013-10-07Removing redundant vp9_pt_energy_class declarations.Dmitry Kovalev
Declaring vp9_pt_energy_class in vp9_entropy.h instead of many external places. Change-Id: I66e8a3fc119a43f88d130d0dae4133c825a047a3
2013-10-07Moving all scan/iscan code into separate vp9_scan.{h, c} files.Dmitry Kovalev
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
2013-09-30Removing unused vp9_coeff_stats_model typedef.Dmitry Kovalev
Change-Id: I6973e7121b6393379b5759f288632e8eab763d3e
2013-09-27Removing vp9_get_coef_neighbors_handle function.Dmitry Kovalev
Change-Id: I6be72c8b048d1ccc7ef43764cf84c32360098970
2013-09-19Adding get_scan_and_band function.Dmitry Kovalev
Extracting get_scan_and_band function from get_entropy_context to remove duplicated code. Change-Id: I5da1f5a60263017e887da68bc834317b5f084cb2
2013-09-04resolve clang warnings : uninitialized vars in vp9_entropy.hJim Bankoski
This helps clear out some of the warnings Change-Id: Ie7ccaca8fd92542386a7f1b257398e1bdf2f55dc
2013-08-29consistently name VP9_COMMON variables #3James Zern
stragglers Change-Id: Ib1e853f9a331b7b66639dc34d79568d84d1930f1
2013-08-27Adding get_entropy_context function.Dmitry Kovalev
Moving common code from encoder and decoder to this function. Change-Id: I60fa643fb1ddf7ebbff5e83b6c4710137b0195ef