- 06 Dec, 2013 - 9 commits
-
-
Yaowu Xu authored
In lossless coding, distortion is always 0. Early exit based on this metric was incorrect. This CL also changed to use best_rd instead of distortion as the metric for easly exit as requested by Jim. Change-Id: I8ef3e407ac03b4abc3283b273f936a68fad5c2ab
-
Dmitry Kovalev authored
Change-Id: I8ab9bbe2595ed1743f35223b6a6ce6d023b9a20e
-
Dmitry Kovalev authored
Renames: vp9_get_pred_context_comp_inter_inter => vp9_get_reference_mode_context vp9_get_pred_prob_comp_inter_inter => vp9_get_reference_mode_prob Change-Id: I3bbb69481e6b0c848028667c9269f567f293d3bd
-
Paul Wilkins authored
Removed an adaptive rate correction factor that was having a negative impact on quality in many clips. This factor was influencing the Q range available to each frame independently of the bits allocated to each. Average results with DISABLE_RC_LONG_TERM_MEM. derf +0.199, -0.059. yt +3.957, +3.798 std hd +1.577, +2.140 yt hd +4.127, +4.513 Average results without DISABLE_RC_LONG_TERM_MEM derf -0.628, -0.665 yt +3.432, +3.015 std hd -0.105, +0.153 yt hd +3.432, +3.015 Change-Id: I45bab6b606f49a442e7b27a6d631f3ffd843bbce
-
Dmitry Kovalev authored
Writing custom coeff branch count calculation (which is much clearer) in adapt_coef_probs() function. Removing vp9_treecoder.c file. Change-Id: I8880fb7a39996c8bcf6cd0acf9898a8c712ba91f
-
Dmitry Kovalev authored
Also adding BAND_COEFF_CONTEXTS macro to simplify for loop logic. Change-Id: I12a78a49cf1addf81e6b3fe2a3736ec2b79bd79e
-
Dmitry Kovalev authored
Renaming: vp9_get_pred_context_intra_inter => vp9_get_intra_inter_context vp9_get_pred_prob_intra_inter => vp9_get_intra_inter_prob Change-Id: I2c1affea2e84f4e616137c6df82adb11c7845781
-
Deb Mukherjee authored
Includes various cleanups. Streamlines the interfaces so that all rate control state updates happen in the vp9_rc_postencode_update() function. This will hopefully make it easier to support multiple rate control schemes. Removes some unnecessary code, which in rare cases can casue a difference in the constrained quality mode output, but other than that there is no bitstream change yet. Change-Id: I3198cc37249932feea1e3691c0b2650e7b0c22fc
-
Dmitry Kovalev authored
NUM_YV12_BUFFERS => FRAME_BUFFERS ALLOWED_REFS_PER_FRAME => REFS_PER_FRAME NUM_REF_FRAMES_LOG2 => REF_FRAMES_LOG2 NUM_REF_FRAMES => REF_FRAMES NUM_FRAME_CONTEXTS_LOG2 => FRAME_CONTEXTS_LOG2 NUM_FRAME_CONTEXTS => FRAME_CONTEXTS Change-Id: I4e1ada08f25d8fa30fdf03aebe1b1c9df0f87e63
-
- 05 Dec, 2013 - 3 commits
-
-
Dmitry Kovalev authored
Change-Id: I68d6217db6f67da15380cd59ec5eda0c44da7d34
-
Dmitry Kovalev authored
Change-Id: I40a070c353663e82c59e174d7c92eb84f72ed808
-
Jingning Han authored
Both single frame and compound inter motion search run with luma component only. Hence removing the block size mapping therein. Change-Id: I217488e702432ae9fa0e95bf6f516ebb36b5c79b
-
- 04 Dec, 2013 - 3 commits
-
-
Dmitry Kovalev authored
Change-Id: I7ccbe13e1accd292a3e0e98522416f9c4b4bc82b
-
Dmitry Kovalev authored
In the decoder we don't need to save eobs, we can pass eob as an argument. That's why removing eob arrays from VP9Decompressor and TileWorkerData, and moving eob pointer from macroblockd_plane to macroblock_plane. Change-Id: I8eb919acc837acfb3abdd8319af63d1bbca8217a
-
Dmitry Kovalev authored
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
-
- 03 Dec, 2013 - 4 commits
-
-
Jingning Han authored
This commit makes the coefficient tree initialized prior to token initialization, where the coefficient costs are filled out according to the probabilities associated with coefficient value categories. Change-Id: If4e89c3923058376f8382c683fe4a225a4a38af3
-
Jingning Han authored
This commit fixes the intra prediction reference source selection in the settings of skip_encode. Use original boundary pixels as prediction reference, when the inverse transform and reconstruction are skipped in the per block size rate-distortion optimization loop. Change-Id: I36081aa30aa46e203e0e6f4e8a420fd08269469a
-
Alex Converse authored
Its last remaining caller can be passed its results directly without any additional work. Also, it's not non-4:2:0 safe. Change-Id: Ia5089ba5f7f66c7617270483c619c9271aefd868
-
Jingning Han authored
This commit fixes the use of uv_intra_estimate by properly restoring the mode_info struct required by rd_pick_intra_sbuv_mode. Change-Id: I6a156d79533c4e2e60dfd3b8c5bb0a42a8eca280
-
- 02 Dec, 2013 - 1 commit
-
-
Alex Converse authored
E.g. disable vertical partioning for 4:2:2. Until we come up with something better to do with the chroma block size, this prevents an assert error. Change-Id: I9394fb3f14ec1343abc3ad4769de208e6278f285
-
- 27 Nov, 2013 - 6 commits
-
-
Deb Mukherjee authored
Fixes an inadvertant change made in a previous patch while doing some experiments. Change-Id: I9961f2157c803676491a3d6daf056ff8a37367b3
-
Dmitry Kovalev authored
Change-Id: I5a5888d4639cc6b7eb266be47581dd15ba08c91e
-
Deb Mukherjee authored
Moves all post encode rate control updates to a separate function plus other cleanups. Change-Id: I70e8eccf666c88d8b649b969997fd84d27e4baaa
-
Dmitry Kovalev authored
Change-Id: I0e59d320407b3bed0ba3622a7b29975f6fad7ebf
-
Dmitry Kovalev authored
We only need qcoeff buffers in the encoder. Reducing TileWorkerData struct and VP9Decompressor struct sizes by 24K. Change-Id: Id148868461f7ffa3d3dd634b371503ae9c57e207
-
Yaowu Xu authored
Change-Id: Iae16644faeed920e69cd5d1db71e2e1e4bda241c
-
- 26 Nov, 2013 - 5 commits
-
-
Dmitry Kovalev authored
Change-Id: I248ccb1532e2cd95314d0b95108f2c2e71cf084f
-
Yaowu Xu authored
Change-Id: I406021e34b31b899202a99b39d3da4fa06ebee69
-
Yaowu Xu authored
Change-Id: Ibc61ef81fafeb20df6df6e5496b6c01760f3dc84
-
Deb Mukherjee authored
Removes the active_worst_qchanged variable since it is never set to 1. Change-Id: I29a291fd1068fd9b504a2db7768d45644c1eae3e
-
Dmitry Kovalev authored
Moved arrays: vp9_mv_joint_encodings vp9_mv_class_encodings vp9_mv_class0_encodings vp9_mv_fp_encodings Change-Id: Iaf5008c579fcbd6d77fdd81d1aef8c71b5f308b7
-
- 25 Nov, 2013 - 6 commits
-
-
Dmitry Kovalev authored
Renaming vp9_init_mode_costs() to fill_mode_costs() and moving it to vp9_rdopt.c. Change-Id: Ib2542d216458f6dced9f4b7ccbdd2cd98176aa5a
-
Dmitry Kovalev authored
Change-Id: Ib273dfff3be284f3c9ae288e5315fb6c6126f9c2
-
Paul Wilkins authored
The idea here is to allow "in frame" adjustment of the final Q value used to encode each SB64, using segmentation. There is also adjustment of the rd mult in regions of overspend. Activated using aq_mode=2 Change-Id: I2f140cd898c9f877c32cd6d2e667f5e11ada4b1c
-
Adrian Grange authored
When calling check_initial_width through vp9_set_size_literal the function was defaulting to using non-subsampled chroma. This patch changes the default to assume sampled chroma as an interim solution until complete support for other color formats is added. Change-Id: Id8e7e919b350e3473dfdf7551af6fd0716478b04
-
Dmitry Kovalev authored
Change-Id: I9af38f1a0e226ee094c17081f044a722ac1caded
-
Guillaume Martres authored
This function is also used with the U and V planes. Change-Id: Ib6beae0438790bfb690b3a2bda9c5c8b0e89a9b8
-
- 23 Nov, 2013 - 3 commits
-
-
Dmitry Kovalev authored
Change-Id: I0fd76937e847f78378a7ab3fa0af00a7c2c52b42
-
Dmitry Kovalev authored
List of renames: COMPPREDMODE_TYPE => REFERENCE_MODE SINGLE_PREDICTION_ONLY => SINGLE_REFERENCE COMP_PREDICTION_ONLY => COMPOUND_REFERENCE HYBRID_PREDICTION => REFERENCE_MODE_SELECT (like TX_MODE_SELECT) NB_PREDICTION_TYPES => REFERENCE_MODES Change-Id: If723dabe9435325d0165dcd028142a2c78b417b4
-
Dmitry Kovalev authored
Change-Id: Ie829ee58a55157e6972c63cebe69a5d0a3221349
-