Dmitry Kovalev
a19d694f09
Merge "Removing BLOCK_TYPES and adding PLANE_TYPES constant instead."
2013-12-07 02:20:41 -08:00
Jim Bankoski
dcb17eaefc
Merge "Disable early exit based on distortion in lossless"
2013-12-06 14:46:28 -08:00
Dmitry Kovalev
b6e5bb27c9
Merge "Renaming reference mode context calculation function."
2013-12-06 14:22:47 -08:00
Dmitry Kovalev
af04bfa300
Merge "Replacing b_width_log2 with num_4x4_blocks_wide_lookup."
2013-12-06 14:19:59 -08:00
Yaowu Xu
f8c06fb2ac
Disable early exit based on distortion in lossless
...
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
2013-12-06 13:37:55 -08:00
Dmitry Kovalev
2da30a96d4
Merge "Removing duplicated C code from vp9_loopfilter_filters.c file."
2013-12-06 12:13:24 -08:00
Dmitry Kovalev
52618d28e1
Replacing b_width_log2 with num_4x4_blocks_wide_lookup.
...
Change-Id: I8ab9bbe2595ed1743f35223b6a6ce6d023b9a20e
2013-12-06 12:04:06 -08:00
Dmitry Kovalev
63963f51ef
Renaming reference mode context calculation function.
...
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
2013-12-06 11:23:01 -08:00
Dmitry Kovalev
d6b159d4a6
Removing BLOCK_TYPES and adding PLANE_TYPES constant instead.
...
Change-Id: Ic3bb862e93aedf6a489a33ea6f7e5097d96855ee
2013-12-06 10:54:00 -08:00
Yaowu Xu
2dd730ccb3
Merge "Remove rate correction factor."
2013-12-06 10:39:51 -08:00
Dmitry Kovalev
cf4dfdc8e7
Merge "Moving vp9_tree_probs_from_distribution() to encoder."
2013-12-06 10:18:30 -08:00
Dmitry Kovalev
8eac2ca840
Merge "Renaming constants."
2013-12-06 09:55:02 -08:00
Dmitry Kovalev
5be34ba80f
Merge "vp9_get_pred_context_intra_inter() clean up."
2013-12-06 09:14:36 -08:00
Adrian Grange
de2046275d
Merge "Remove redundant calls to vp9_update_mode_info_border"
2013-12-06 08:59:47 -08:00
Jingning Han
ee02f3fbed
Merge "Remove redundant bsize mapping in motion search"
2013-12-06 08:57:58 -08:00
Paul Wilkins
570b6d25c0
Remove rate correction factor.
...
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
2013-12-06 16:57:16 +00:00
Dmitry Kovalev
4ac6a2552b
Moving vp9_tree_probs_from_distribution() to encoder.
...
Writing custom coeff branch count calculation (which is much clearer) in
adapt_coef_probs() function. Removing vp9_treecoder.c file.
Change-Id: I8880fb7a39996c8bcf6cd0acf9898a8c712ba91f
2013-12-05 18:13:26 -08:00
Dmitry Kovalev
d72c847fe8
Merge "Renaming PREV_COEF_CONTEXTS to COEFF_CONTEXTS."
2013-12-05 17:54:44 -08:00
Dmitry Kovalev
377fa8aff8
Renaming PREV_COEF_CONTEXTS to COEFF_CONTEXTS.
...
Also adding BAND_COEFF_CONTEXTS macro to simplify for loop logic.
Change-Id: I12a78a49cf1addf81e6b3fe2a3736ec2b79bd79e
2013-12-05 17:08:06 -08:00
Dmitry Kovalev
6fd71e1b09
vp9_get_pred_context_intra_inter() clean up.
...
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
2013-12-05 17:01:03 -08:00
Deb Mukherjee
8de1d8bfe3
Merge "Further rate control cleanups"
2013-12-05 16:55:35 -08:00
Dmitry Kovalev
da519166e9
Merge "Cleaning up vp9_detokenize.c file."
2013-12-05 16:45:10 -08:00
Dmitry Kovalev
f7396f3394
Merge "Removing vp9_default_coef_probs.h file."
2013-12-05 16:44:26 -08:00
Deb Mukherjee
52d273674b
Further rate control cleanups
...
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
2013-12-05 16:31:04 -08:00
Dmitry Kovalev
0d4b8d7e43
Renaming constants.
...
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
2013-12-05 16:23:09 -08:00
Dmitry Kovalev
2b95a05bf6
Removing duplicated C code from vp9_loopfilter_filters.c file.
...
Change-Id: I299b621fca1c8ff5d296afde9698cdcccfecaf3f
2013-12-05 15:49:57 -08:00
Adrian Grange
93d8a3fd29
Remove redundant calls to vp9_update_mode_info_border
...
Removed calls to vp9_update_mode_info_border since
they immediately followed code that initialized the
entire buffer to 0.
Change-Id: Ife06794daa20439a0b607a83a87f88df59afac40
2013-12-05 15:02:32 -08:00
Dmitry Kovalev
3eb0170ea6
Using lookup to determine tx_size in encode_superblock().
...
Change-Id: I68d6217db6f67da15380cd59ec5eda0c44da7d34
2013-12-05 12:25:03 -08:00
Dmitry Kovalev
6df9ec52a0
Merge "Cleaning up vp9_get_pred_context_tx_size() function."
2013-12-05 09:59:00 -08:00
Yaowu Xu
bdf3f07677
Merge "Disable --tune=ssim for vp9"
2013-12-05 09:15:13 -08:00
Frank Galligan
7ecf3bc91c
Fix ref count decrement code.
...
Buffer 0 would never be decremented, so it could only be used
once.
Change-Id: I605d99fa2a513eadae6a0e230161729880653282
2013-12-04 22:21:00 -08:00
Dmitry Kovalev
5eeffc9fc5
Cleaning up vp9_get_pred_context_tx_size() function.
...
Change-Id: Ia6ef876e3d1e66b2182a9c0bce3fd758691cd381
2013-12-04 21:35:30 -08:00
Dmitry Kovalev
a1123538a5
Moving vp9_token from common to encoder.
...
Change-Id: I40a070c353663e82c59e174d7c92eb84f72ed808
2013-12-04 19:36:58 -08:00
Frank Galligan
8363349b84
Merge "Fix the initial references to frame buffers."
2013-12-04 19:26:40 -08:00
Jingning Han
45aa6f15b0
Remove redundant bsize mapping in motion search
...
Both single frame and compound inter motion search run with luma
component only. Hence removing the block size mapping therein.
Change-Id: I217488e702432ae9fa0e95bf6f516ebb36b5c79b
2013-12-04 17:25:06 -08:00
Dmitry Kovalev
934e10d0f1
Cleaning up vp9_detokenize.c file.
...
Using consistent names (block_idx => block, dqcoeff_ptr => dqcoeff,
pt => ctx), inlining get_tx_eob() call.
Change-Id: I05208e57df81bbb8f25b8274684a48192e9de464
2013-12-04 17:24:18 -08:00
Dmitry Kovalev
4afd141a05
Removing vp9_default_coef_probs.h file.
...
Moving all probability tables from removed file to vp9_entropy.c.
Change-Id: I12846f1da778c3016d96b82e53384d4634883430
2013-12-04 17:04:35 -08:00
Dmitry Kovalev
cf8e3d2c5c
Merge "Cleaning up vp9_dec_build_inter_predictors_sb function."
2013-12-04 16:57:54 -08:00
Frank Galligan
9ed616a56c
Fix the initial references to frame buffers.
...
The old code would start in a mixed state, where all the reference
frames were pointing to frame buffer 0, but the reference counts
were 0. This is why we needed special code for the first frame.
Change-Id: I734961012917654ff8c0c8b317aac00ab75ded1a
2013-12-04 16:53:18 -08:00
Dmitry Kovalev
3712b58c2f
Merge "Cleaning up vp9_entropy.h file."
2013-12-04 16:46:41 -08:00
Dmitry Kovalev
97b36b26e0
Merge "Removing old code."
2013-12-04 16:45:11 -08:00
Dmitry Kovalev
c6ca5c5ad9
Compact formatting default_coef_probs_{4x4, 8x8, 16x16, 32x32}.
...
Change-Id: If40b930431766d5179b9769509b5e4ca1628e9cc
2013-12-04 15:45:28 -08:00
Yaowu Xu
d84c098417
Disable --tune=ssim for vp9
...
The feature is not yet supported.
Change-Id: If46382302d2077b20670391b4a03017045a104f5
2013-12-04 12:39:15 -08:00
Dmitry Kovalev
da2da79012
Merge "Formatting vp9_pareto8_full array."
2013-12-04 12:22:50 -08:00
Dmitry Kovalev
beb35aba19
Cleaning up vp9_dec_build_inter_predictors_sb function.
...
Using get_plane_block_size() instead of manipulation with subsampling
values, calculating all required values only once without redundant calls
to b_width_log2().
Change-Id: I00303f2a0926f9c4cb17f34591adda60615f8919
2013-12-04 12:11:01 -08:00
Yunqing Wang
f6582d6928
Revert "Simplify mask checking in loop filters"
...
Jingning saw bitstream change with this patch. It could be true
that (mask_16x16_0 & 1) is 1, but (mask_16x16_1 & 1) is 0 in some
edge cases.
This reverts commit 8f05e70340533b9922be5b1c97c37e50607fd862.
Change-Id: I0a529435ce816a1e14653eb510d5090de276070a
2013-12-04 11:31:19 -08:00
Dmitry Kovalev
1470789927
Merge "Moving eob array to the encoder."
2013-12-04 10:58:02 -08:00
Adrian Grange
584c72992a
Merge "Change default behavior to assume sampled chroma"
2013-12-04 09:35:14 -08:00
Yunqing Wang
920a074e89
Merge "Improve idct16x16: _256_add_sse2(x1.107)&_10_add_sse2(x1.012)"
2013-12-04 08:50:51 -08:00
Dmitry Kovalev
30a5a07a71
Removing old code.
...
Change-Id: I7ccbe13e1accd292a3e0e98522416f9c4b4bc82b
2013-12-03 19:44:48 -08:00