]>
granicus.if.org Git - libvpx/log
Jingning Han [Tue, 3 May 2016 17:29:31 +0000 (17:29 +0000)]
Merge "Add dual_filter into the experimental flag list" into nextgenv2
Yi Luo [Tue, 3 May 2016 16:20:23 +0000 (16:20 +0000)]
Merge "Enable VP10 HBD PSNR checking unit test" into nextgenv2
Jingning Han [Mon, 2 May 2016 15:55:40 +0000 (08:55 -0700)]
Add dual_filter into the experimental flag list
Change-Id: I3f240fb46716b70e7c0ddd40660f55e1285875cd
Angie Chiang [Tue, 3 May 2016 01:29:51 +0000 (01:29 +0000)]
Merge "Fix vp10 highbd psnr calculation" into nextgenv2
Yi Luo [Tue, 3 May 2016 00:51:28 +0000 (00:51 +0000)]
Merge "Add the 64-bit CPU cycle count utility function" into nextgenv2
Yi Luo [Thu, 21 Apr 2016 22:59:05 +0000 (15:59 -0700)]
Add the 64-bit CPU cycle count utility function
Change-Id: Ie87245bbdf5735bc9729199eeb07899d81dbf267
(cherry picked from commit
b547a2f38cfab81f6cbe392b9eb48ab0c12b80cf )
Angie Chiang [Mon, 2 May 2016 21:03:33 +0000 (14:03 -0700)]
Fix vp10 highbd psnr calculation
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1209
Change-Id: Ia189ec4c1cc9bbcb79a45d1904567d943e2b3bb6
Yi Luo [Mon, 2 May 2016 18:29:58 +0000 (11:29 -0700)]
Enable VP10 HBD PSNR checking unit test
We enable this unit test to protect the high bit depth picture
quality from degrading under VP10 optimization and new experimental
tools.
Change-Id: I6297a44cf01954773e06549ab2a68c319fc848a8
Yue Chen [Mon, 2 May 2016 18:09:08 +0000 (18:09 +0000)]
Merge "Bug fixes for obmc/ext-inter/ext-tile experiment" into nextgenv2
Yi Luo [Mon, 2 May 2016 17:34:50 +0000 (17:34 +0000)]
Merge "HBD hybrid transform 8x8 SSE4.1 optimization" into nextgenv2
Jingning Han [Mon, 2 May 2016 15:39:12 +0000 (15:39 +0000)]
Merge "Fix encoder failure in segmentation mode" into nextgenv2
Yue Chen [Sat, 30 Apr 2016 00:45:53 +0000 (17:45 -0700)]
Bug fixes for obmc/ext-inter/ext-tile experiment
Fix 1: in ext-inter + obmc config, properly identify if the left
predictor used for obmc is a compound one in the case that the
neighbor uses wedgeinterinter pred and we will dump the ALTREF part.
This will fix the seg fault in unit test:
VP10/AltRefForcedKeyTestLarge.Frame1IsKey/0
Fix 2: in ext-tile + obmc experiment, handle the case that the
above block does not fit in the same row tile with the current one,
so as to prevent potential crashes.
Change-Id: I1c177d4f4ad15e10d11d8756e146496437753eea
Jingning Han [Sat, 30 Apr 2016 00:32:44 +0000 (17:32 -0700)]
Fix encoder failure in segmentation mode
This commit fixes an encoder segment fault in the codebase, when
the segmentation feature is turned on. The issue was introduced in
5cce322 Porting ext_partition experiment from nextgen
Change-Id: Ifb4c06c5a6976114a8bd061d40d0338a136abaaf
Yi Luo [Thu, 28 Apr 2016 23:10:14 +0000 (16:10 -0700)]
HBD hybrid transform 8x8 SSE4.1 optimization
- Tx_type: DCT_DCT, DCT_ADST, ADST_DCT, ADST_ADST.
- Update bit-exact unit test against current C version.
- HBD encoder speed improves ~3.8%.
Change-Id: Ie13925ba11214eef2b5326814940638507bf68ec
Debargha Mukherjee [Wed, 27 Apr 2016 20:42:27 +0000 (13:42 -0700)]
Refactor wedge generation
Change-Id: I2ec4f562e28a4673477e20186f9d6167b24b76b8
Debargha Mukherjee [Thu, 28 Apr 2016 20:25:53 +0000 (20:25 +0000)]
Merge "Make the backward updates work with bitshifts" into nextgenv2
Debargha Mukherjee [Tue, 26 Apr 2016 22:04:19 +0000 (15:04 -0700)]
Make the backward updates work with bitshifts
Removes integer divides from backward updates for VP10.
Currently this is put in as part of the entropy experiment.
Coding efficiency change is in the noise level.
Change-Id: I5b3c0ab6169ee6d82d0ca1778e264fd4577cdd32
Debargha Mukherjee [Fri, 11 Mar 2016 22:05:23 +0000 (14:05 -0800)]
Brings back near-near compound mode into ext-inter
lowres: improves by 0.1%
Change-Id: I245019916bf47c6e24bc8c3953b86715ab0193c9
Geza Lore [Thu, 28 Apr 2016 16:59:42 +0000 (17:59 +0100)]
Fix some mismatches when using ext-interp.
With ext interp, write_switchable_interp_filter calls
vp10_is_interp_needed, which needs access to the reference frame
buffers to check if they are scaled, the ref frame buffer pointer
at this point used to be uninitialized in the encoder resulting in
bitstream syntax mismatch when the encoder/decoder did not read/write
the interp filter element consistently.
Change-Id: Ie0be2a19cbfcb5639a751aa857458e91c23b8fe3
Alex Converse [Wed, 27 Apr 2016 23:59:14 +0000 (23:59 +0000)]
Merge changes Ia2dd6bb1,Id1220b03 into nextgenv2
* changes:
transform tests: Avoid #if inside INSTANTIATE_TEST_CASE_P
variance_test: Avoid #if inside INSTANTIATE_TEST_CASE_P
Alex Converse [Wed, 27 Apr 2016 23:47:30 +0000 (23:47 +0000)]
Merge "convolve_test: Avoid #if inside INSTANTIATE_TEST_CASE_P" into nextgenv2
Alex Converse [Wed, 27 Apr 2016 23:02:39 +0000 (23:02 +0000)]
Merge "buf_ans: Misc cleanup." into nextgenv2
Hui Su [Wed, 27 Apr 2016 22:00:22 +0000 (22:00 +0000)]
Merge "ext-intra: completely remove floating point operations" into nextgenv2
Alex Converse [Wed, 27 Apr 2016 19:52:25 +0000 (12:52 -0700)]
transform tests: Avoid #if inside INSTANTIATE_TEST_CASE_P
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1200
Change-Id: Ia2dd6bb1ca2dff4422753af4a00156a12e488ed0
Alex Converse [Wed, 27 Apr 2016 19:23:00 +0000 (12:23 -0700)]
variance_test: Avoid #if inside INSTANTIATE_TEST_CASE_P
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1200
Change-Id: Id1220b03e7be931e298848de381fdbce911e4a73
Alex Converse [Wed, 27 Apr 2016 01:09:40 +0000 (18:09 -0700)]
convolve_test: Avoid #if inside INSTANTIATE_TEST_CASE_P
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1200
Change-Id: I7f7754e7d1288b103a4510303d10afc68a7d8ca8
Alex Converse [Wed, 27 Apr 2016 21:38:30 +0000 (21:38 +0000)]
Merge "Fix vp10 txfm on MSVC 2015." into nextgenv2
Alex Converse [Wed, 27 Apr 2016 21:03:04 +0000 (14:03 -0700)]
buf_ans: Misc cleanup.
Change-Id: I18a3ef2ee6cdda57abcd27683b30b4e3136182c0
Debargha Mukherjee [Wed, 27 Apr 2016 20:43:32 +0000 (20:43 +0000)]
Merge "Turn skip recode off temporarily for ref-mv" into nextgenv2
Alex Converse [Wed, 27 Apr 2016 00:08:18 +0000 (17:08 -0700)]
Fix vp10 txfm on MSVC 2015.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1187
Change-Id: Ied6d3d003ed6ab9cf4f03cdd1d0037ae755254f4
hui su [Tue, 26 Apr 2016 16:36:11 +0000 (09:36 -0700)]
ext-intra: completely remove floating point operations
No performance changes
Change-Id: Ia489041253423ddf8ebc7e2d41fbfb9e138109f0
Jingning Han [Wed, 27 Apr 2016 17:15:16 +0000 (17:15 +0000)]
Merge "Fix compound mv costing for ref-mv." into nextgenv2
Debargha Mukherjee [Tue, 26 Apr 2016 15:24:01 +0000 (08:24 -0700)]
Turn skip recode off temporarily for ref-mv
To fix tests in VP10/AltRefForcedKeyTestLarge.Frame1IsKey/*
Change-Id: I2f4f9fea515c9935d57006b709a9dd524f174b25
Debargha Mukherjee [Wed, 27 Apr 2016 16:36:24 +0000 (16:36 +0000)]
Merge "Initialize dummy variables." into nextgenv2
Geza Lore [Wed, 27 Apr 2016 12:37:29 +0000 (13:37 +0100)]
Fix compound mv costing for ref-mv.
I believe this is necessary for computing the correct rate,
when not doing joint_motion_search.
Change-Id: I7634d6d7a5e6f0a6998edb4d577dd047d80df3c8
Geza Lore [Wed, 27 Apr 2016 12:31:52 +0000 (13:31 +0100)]
Initialize dummy variables.
Valgrind flags these up as needed by handle_inter_mode.
Initializing fixes some assertion failures in the unit tests with
only ref-mv enabled.
Change-Id: I4d56c356692745dbecd9f790cdbb8dbfbaf72d55
Geza Lore [Wed, 27 Apr 2016 10:08:41 +0000 (11:08 +0100)]
Fix ext-tile without ext-partition.
Default case (when ext-partition was not configured) was incorrect
in encoder tile size initialization.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1197
Change-Id: Ibe57cb1dc16b9fa300573816fc16d2d2f6849fc6
Yue Chen [Wed, 27 Apr 2016 06:29:38 +0000 (06:29 +0000)]
Merge "Optimization for EXT_INTER + OBMC" into nextgenv2
Yue Chen [Tue, 26 Apr 2016 22:47:43 +0000 (15:47 -0700)]
Optimization for EXT_INTER + OBMC
Remove the restriction that the neighboring predictor cannot be
used in obmc prediction if it is an interintra or wedgeinterinter
block. The inter predictor of the interintra block, or the first
inter predictor(using LAST or GOLDEN frame) of the wedgeinterinter
block will be exploited in obmc prediction.
Coding gain: 0.248% (2.833%->3.081%) lowres
Change-Id: I4ac0368b9d2f2956f266b30c1ac97db8bafa0742
Debargha Mukherjee [Tue, 26 Apr 2016 23:32:16 +0000 (23:32 +0000)]
Merge "Reduce intra transform set" into nextgenv2
Yue Chen [Tue, 26 Apr 2016 21:40:13 +0000 (21:40 +0000)]
Merge "Remove double counting for mv costs" into nextgenv2
Jingning Han [Tue, 26 Apr 2016 21:31:09 +0000 (21:31 +0000)]
Merge "Rework motion vector precision limit" into nextgenv2
Yue Chen [Tue, 26 Apr 2016 20:01:52 +0000 (13:01 -0700)]
Remove double counting for mv costs
The bug is introduced by commit
1a0352d , in which mv costs are
counted twice in joint_motion_search() in ext_inter experiment.
Change-Id: Ibace453df999d3c2e781d73f1f0912038fee2d4e
Hui Su [Tue, 26 Apr 2016 18:53:33 +0000 (18:53 +0000)]
Merge "ext-intra: get rid of some floating operations." into nextgenv2
Jingning Han [Mon, 25 Apr 2016 21:26:53 +0000 (14:26 -0700)]
Rework motion vector precision limit
This commit enables 1/8 luma component motion vector precision
for all motion vector cases. It improves the compression performance
of lowres by 0.13% and hdres by 0.49%.
Change-Id: Iccfc85e8ee1c0154dfbd18f060344f1e3db5dc18
Debargha Mukherjee [Mon, 25 Apr 2016 17:43:49 +0000 (10:43 -0700)]
Reduce intra transform set
Reduce transform set for intra for 8x8 and smalller to 7 from 12.
Also fixes an issue with prob updates.
Enocder Speed-up about 8-10%
Coding efficiency very little change.
lowres: -2.996 (from -3.055 before)
midres: -2.482 (from -2.552 before)
Change-Id: I4ba50ff967521b33c748fe423bd92f7cf4105ebc
Hui Su [Tue, 26 Apr 2016 16:41:49 +0000 (16:41 +0000)]
Merge "Keep track of zcoeff_blk in tx size/type search" into nextgenv2
hui su [Mon, 25 Apr 2016 18:44:24 +0000 (11:44 -0700)]
ext-intra: get rid of some floating operations.
No performance changes.
Change-Id: Idd4043090fec09e57520bc970ed2e39e6f7e1a5e
Debargha Mukherjee [Mon, 25 Apr 2016 21:42:23 +0000 (21:42 +0000)]
Merge "Clear X87 register state before using double." into nextgenv2
Yi Luo [Mon, 25 Apr 2016 19:43:35 +0000 (19:43 +0000)]
Merge "HBD hybrid transform 4x4 SSE4.1 optimization" into nextgenv2
Geza Lore [Mon, 25 Apr 2016 15:37:44 +0000 (16:37 +0100)]
Clear X87 register state before using double.
MMX and X87 floating point instructions cannot be mixed freely on
the 32 bit x86 architecture.
This fixes a lot of unit tests in the 32bit build with
--enable-ext-intra.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1196
Change-Id: I0e1c3565f4b9cb4fc2d716e94d9c40e68b36fac8
Alex Converse [Mon, 25 Apr 2016 17:11:16 +0000 (17:11 +0000)]
Merge "Raise the probability resolution for rANS tokens to 10-bits per symbol" into nextgenv2
Yi Luo [Mon, 25 Apr 2016 16:41:11 +0000 (09:41 -0700)]
HBD hybrid transform 4x4 SSE4.1 optimization
- Optimization on tx_type: DCT_DCT, DCT_ADST, ADST_DCT, ADST_ADST.
- Overall encoder speed improves ~4.5%-6%.
- Update bit-exact unit test against current C version.
Change-Id: If751c030612245b1c2470200c9570cf40d655504
Jingning Han [Mon, 25 Apr 2016 16:13:04 +0000 (16:13 +0000)]
Merge "Fix out-of-bound memory access in loop filter" into nextgenv2
Jingning Han [Mon, 25 Apr 2016 16:12:51 +0000 (16:12 +0000)]
Merge "Refactor sub-pixel motion search" into nextgenv2
James Zern [Wed, 20 Apr 2016 19:44:08 +0000 (12:44 -0700)]
vp10/rdopt: quiet unused variable warning
when CONFIG_REF_MV and CONFIG_EXT_INTER are enabled
Change-Id: I17fa2b5fe0e1878333099cc5fa2b1ee36636b4d3
Yue Chen [Sat, 23 Apr 2016 16:51:07 +0000 (16:51 +0000)]
Merge "Fix EXT_INTER unit test failure in 32-bit builds" into nextgenv2
Jingning Han [Sat, 23 Apr 2016 01:10:30 +0000 (18:10 -0700)]
Fix out-of-bound memory access in loop filter
This commit fixes an out-of-bound memory access case in the
loop filter mask setting. This issue was introduced in
10232ed Refactor loopfilter level arrays to 2D.
https://chromium-review.googlesource.com/#/c/336645/
Change-Id: I7101a4a79b9ecfdd8ec5ef13a0b314cc95f48d12
Yue Chen [Sat, 23 Apr 2016 05:37:13 +0000 (22:37 -0700)]
Fix EXT_INTER unit test failure in 32-bit builds
Align new buffers that are used in interintra and wedgeinterinter prediction.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1196
Change-Id: I1ef49fdf13c79a22cf8a1737e3d3052da0a92dfe
Jingning Han [Fri, 22 Apr 2016 22:47:03 +0000 (15:47 -0700)]
Silence compiler above-boundary warnings
Change-Id: I6d806f92e8d38d5b0b01bc8e0fd97bd8839c84df
Alex Converse [Wed, 6 Jan 2016 20:37:27 +0000 (12:37 -0800)]
Raise the probability resolution for rANS tokens to 10-bits per symbol
Change-Id: I397b5a9371c85d1df401d261143c985623e9def6
Jingning Han [Fri, 22 Apr 2016 05:22:37 +0000 (22:22 -0700)]
Refactor sub-pixel motion search
Unify the rate cost used in the motion estimation process.
Change-Id: I8e52ca9f29eee3469553433302b62fb02a038919
Jingning Han [Fri, 22 Apr 2016 04:44:55 +0000 (21:44 -0700)]
Replace left shift with multiplications
This avoids the potential risk in left shift of negative numbers.
Change-Id: I7aecb499ee6ce7342b172adc4741de5c6c107a24
Jingning Han [Fri, 22 Apr 2016 18:33:32 +0000 (11:33 -0700)]
Fix an enc/dec mismatch issue in ext-inter experiment
This commit fixes an encoding decision process issue that could
trigger enc/dec mismatch in the ext-inter experiment.
Change-Id: I6f10d1fd2fd1aa04e51df04c39a65cf72ac66c42
Yi Luo [Wed, 20 Apr 2016 01:23:17 +0000 (18:23 -0700)]
Change hybrid transform function argument from TXFM_2D_CFG* to int
Unit test shows manually developed SSE4.1 code would performs ~30%
better if TXFM_2D_CFG configuration is set in lower level. This
change only updates function signature. There is no performance
impact.
Change-Id: I62692bd50a21ffc8a944bbd6c155c0a2020ad77b
Alex Converse [Thu, 21 Apr 2016 20:27:19 +0000 (13:27 -0700)]
Unbreak the non-var_tx build.
Change-Id: I76cc3d88122de42f035fbf6508bdf3fd7c995012
Debargha Mukherjee [Thu, 21 Apr 2016 19:56:17 +0000 (19:56 +0000)]
Merge "Fix uninitialized blk_skip for VAR TX." into nextgenv2
Alex Converse [Thu, 21 Apr 2016 18:08:04 +0000 (18:08 +0000)]
Merge "Move ZERO_TOKEN into the ANS coef tokenset." into nextgenv2
Angie Chiang [Wed, 20 Apr 2016 02:17:39 +0000 (02:17 +0000)]
Merge "relax txfm test error constraint" into nextgenv2
Alex Converse [Tue, 19 Apr 2016 23:29:14 +0000 (23:29 +0000)]
Merge "Store ANS token CDFs in the FRAME_CONTEXT rather than in a global table." into nextgenv2
Alex Converse [Wed, 13 Apr 2016 18:48:37 +0000 (11:48 -0700)]
Move ZERO_TOKEN into the ANS coef tokenset.
Change-Id: I87943e027437543ab31fa3ae1aa8b2de3a063ae5
Jingning Han [Tue, 19 Apr 2016 21:20:08 +0000 (21:20 +0000)]
Merge "Handle zero motion vector residual" into nextgenv2
Hui Su [Tue, 19 Apr 2016 21:18:50 +0000 (21:18 +0000)]
Merge "Adjust optimize_b RD parameters" into nextgenv2
Hui Su [Tue, 19 Apr 2016 21:18:37 +0000 (21:18 +0000)]
Merge "Enable optimize_b for intra blocks" into nextgenv2
Angie Chiang [Tue, 19 Apr 2016 19:52:03 +0000 (19:52 +0000)]
Merge "Change the naming of txfm#d_test" into nextgenv2
Angie Chiang [Tue, 19 Apr 2016 18:59:00 +0000 (11:59 -0700)]
Change the naming of txfm#d_test
Change-Id: I151b18b38f7a000fb6e431cd42675ac4e7e9e3ca
hui su [Tue, 19 Apr 2016 17:44:27 +0000 (10:44 -0700)]
Keep track of zcoeff_blk in tx size/type search
Prevent potential problems when per transform block
zero forcing is re-enabled (a To-Do).
Change-Id: I03b0ab2a86d88058441f2ca18994cfd2e6329898
Yue Chen [Tue, 19 Apr 2016 18:41:01 +0000 (18:41 +0000)]
Merge "Remove an unsuccessful adaption of overlap sizes in obmc experiment" into nextgenv2
hui su [Mon, 18 Apr 2016 17:10:58 +0000 (10:10 -0700)]
Adjust optimize_b RD parameters
Coding gain:
lowres 0.44%
midres 0.24%
hdres 0.32%
Change-Id: Ie558203b2b2bf5c16cd49b114df3d696c4f35049
hui su [Fri, 15 Apr 2016 17:49:08 +0000 (10:49 -0700)]
Enable optimize_b for intra blocks
Coding gain:
lowres 0.05%
midres 0.10%
hdres 0.18%
Change-Id: I508b150c02588f911a8ddddfe73c770f0819fe10
Alex Converse [Fri, 19 Feb 2016 20:51:15 +0000 (12:51 -0800)]
Store ANS token CDFs in the FRAME_CONTEXT rather than in a global table.
This will facilitate bringing the zero node into the token set while
allowing its probability to vary independently.
Change-Id: I57b44c0fce44debb8e612021e44713b229d1b3cf
Alex Converse [Tue, 19 Apr 2016 16:39:18 +0000 (16:39 +0000)]
Merge "Use an exponential growth approach for the ANS reversal buffer." into nextgenv2
Geza Lore [Tue, 19 Apr 2016 13:22:48 +0000 (14:22 +0100)]
Fix uninitialized blk_skip for VAR TX.
x->blk_skip used to be uninitialized (leftover from encoding the
previous block), if cm->tx_mode != TX_MODE_SELECT (which is used with
higher --cpu-used or --rt options). This resulted in degraded coding
performance when using cm->tx_mode != TX_MODE_SELECT.
This fixes the VP10/EndToEndTestLarge.EndtoEndPSNRTest/40 unit test.
Also fixed an edge effect where encode_block in encodemb.c used the
formal width of the block (without cropping at the right edge), to
look up blk_skip, while select_tx_block in rdopt.c used the cropped
width to set blk_skip.
Change-Id: I76d0f49ac5ab3ab54203573e0d7fcfcc1c6aa10d
Yaowu Xu [Tue, 19 Apr 2016 15:43:58 +0000 (15:43 +0000)]
Merge "Merge branch 'master' into nextgenv2" into nextgenv2
Geza Lore [Tue, 19 Apr 2016 14:41:56 +0000 (15:41 +0100)]
Revert "Fix uninitialized blk_skip for VAR TX."
This reverts commit
e7b89d88354708790211ff3949fdc705a4fa1672 .
Geza Lore [Tue, 19 Apr 2016 13:22:48 +0000 (14:22 +0100)]
Fix uninitialized blk_skip for VAR TX.
x->blk_skip used to be uninitialzied (leftover from encoding the
previous block), if cm->tx_mode != TX_MODE_SELECT (which is used with
higher --cpu-used or --rt options). This resulted in degraded coding
performance when uning cm->tx_mode != TX_MODE_SELECT.
This fixes the VP10/EndToEndTestLarge.EndtoEndPSNRTest/40 unit test.
Change-Id: If39062927446798c626fc93694b4e6a4f35fa5da
Jingning Han [Thu, 14 Apr 2016 19:37:10 +0000 (12:37 -0700)]
Handle zero motion vector residual
This commit handles the zero motion vector residuals for single
and compound reference modes, respectively. It improves the coding
performance by 0.13% with no additional encoding complexity.
Change-Id: I16075a836025bd2746da2ff4698fb9261e4b08c1
Yi Luo [Mon, 18 Apr 2016 23:07:25 +0000 (23:07 +0000)]
Merge "Disable HBD 4x4 DCT_DCT HT test" into nextgenv2
Yue Chen [Mon, 18 Apr 2016 20:49:03 +0000 (13:49 -0700)]
Remove an unsuccessful adaption of overlap sizes in obmc experiment
We removed this adaption, which intended to reduce the size of
overlapped region if the neighboring block is a non-skip one. Thus,
now the width/height of the overlapping region is fixed as a half of
the current block.
Performance improvement (lowres/midres): 0.111%/0.102%
Change-Id: Ife75dad9d4eb355c78a05178b50cc015c442884f
Yaowu Xu [Mon, 18 Apr 2016 19:22:56 +0000 (12:22 -0700)]
Merge branch 'master' into nextgenv2
Conflicts:
vp10/common/scan.c
vp9/common/vp9_pred_common.c
vp9/decoder/vp9_decoder.c
Change-Id: Id559d98ea676da15d60ed464ddb6c48d3eed1111
Jingning Han [Fri, 15 Apr 2016 23:51:10 +0000 (16:51 -0700)]
Refactor transform selection process
This commit re-arranges the transform type and size selectio
process. It removes an unnecessary rate-distortion cost computation
step. Local experiments show that this speeds up the encoding
process by 6% for both the baseline and the ext-intra experiment.
Change-Id: Iab3b86a63a1e9e55548466791ed5d29a0575c1e7
Jingning Han [Mon, 18 Apr 2016 19:45:44 +0000 (19:45 +0000)]
Merge "Refactor rd_variance_adjustment function" into nextgenv2
Angie Chiang [Mon, 18 Apr 2016 19:40:33 +0000 (19:40 +0000)]
Merge changes I67543d36,I763f2924 into nextgenv2
* changes:
Reduce shift in txfm8x8
Let txfm's constant bit be the same for each stage
Yi Luo [Mon, 18 Apr 2016 19:24:31 +0000 (12:24 -0700)]
Disable HBD 4x4 DCT_DCT HT test
- HBD HT unit tests will be modified to test against new algorithm.
Change-Id: Iba58eeb21a45612685c93c98d7c846dab25e6638
Paul Wilkins [Mon, 18 Apr 2016 18:47:13 +0000 (18:47 +0000)]
Merge "Adjustment to prediction decay."
Angie Chiang [Mon, 18 Apr 2016 18:40:28 +0000 (18:40 +0000)]
Merge "Fit adst/dct's stage range into 32-bit in bd12" into nextgenv2
Angie Chiang [Mon, 18 Apr 2016 18:11:35 +0000 (18:11 +0000)]
Merge "Remove double operation from tx_size selection" into nextgenv2
Yi Luo [Mon, 18 Apr 2016 18:04:05 +0000 (18:04 +0000)]
Merge "Improvement on hybrid transform 4x4 DCT_DCT SSE4.1 optimization" into nextgenv2
Angie Chiang [Thu, 14 Apr 2016 22:16:08 +0000 (15:16 -0700)]
Remove double operation from tx_size selection
This CL fix the bug
rdopt.c:1687: choose_tx_size_from_rd: Assertion
`mbmi->tx_type == DCT_DCT' failed
It is caused by
1) mms register access before double operation
2) different compiler behaviors
code:
int64_t a = INT64_MAX;
double b = 1. * INT64_MAX;
printf("a < b: %d\n", a < b);
result:
a < b: 0
code:
--target=x86-linux-gcc
int64_t a = INT64_MAX;
double b = 1. * INT64_MAX;
printf("a < b: %d\n", a < b);
result:
a < b: 1
I remove the double operation and test it with EXT_TX experiment.
The psnr change is around 0.05%, which is considered as noise level.
Change-Id: If8935c70c8603617fcfa8571accd30ccdda786a0
Jingning Han [Fri, 15 Apr 2016 22:56:34 +0000 (15:56 -0700)]
Refactor rd_variance_adjustment function
Compute the reconstruction variance in the prediction mode search.
Change-Id: Id9c7635a9c9f5383e61c0e427e95234211834301