- 18 Jan, 2018 5 commits
-
-
Hui Su authored
A function to calculate luma prediction mode info. rate cost for intra blocks. Change-Id: I285518dc34c0ffa58bdcd09e76463c21240336e1
-
Yushin Cho authored
Change-Id: I0cd3de4a5673003f9fbe9c615e139e8133a99dcc
-
Yaowu Xu authored
Change-Id: I8bb21fbbc3366690ccc13a9b31a6726dfbfa2ff4
-
Zoe Liu authored
Change-Id: I51a751cd656846e6f3db6c15e320bdc7f1c868fe
-
Hui Su authored
Change-Id: I6cd366d929d689217f292db07cbeaf1fd35c2055
-
- 17 Jan, 2018 7 commits
-
-
Hui Su authored
The tx size cost should be included in the total rate cost. Change-Id: Ib8fe9cc67cf712ba1c7c8f539b390909c7e6be7b
-
Imdad Sardharwalla authored
The ref_mv_idx offset of 1 was not taken into account for the NEAR_MV mode. Change-Id: I0939cfd8cf2496f6d4f0dbac67b2e03942318195
-
Hui Su authored
Fix tx type as the default type and search for the best prediction mode; then do a final search for the best tx type. When it's enabled at speed 0, encoding speed increases to 3x with 2% compression loss on keyframes. It's currently turned on for speed 2 and above. Change-Id: Ic9ca1479da10d467a88a4d692d9c75da40d2798d
-
Hui Su authored
Change-Id: I0156df138342be1f4ffa867a5e293887ff83e251
-
David Barker authored
In the decoder, the function get_tx_size_context() is called by read_selected_tx_size(), *before* mbmi->ref_frame is set up. This means that mbmi->ref_frame still holds the ref frames from the previous block, and does not indicate if the current block is inter or not. Fortunately, all of the other functions called by read_selected_tx_size() have an explicit "is_inter" parameter, which is set correctly. So we can just plumb this through into get_tx_size_context(). Change-Id: I00f0f3704937f592ccc5d304ed20ee25196dd520
-
Yue Chen authored
BUG=aomedia:1236 Change-Id: I72c1e5ba7f0090c0831ca9aaccbc32dc4f1fdf4f
-
Urvang Joshi authored
Change-Id: Ic68c6e8d54782f47fe9d1d1775b861edeb52bf35
-
- 16 Jan, 2018 4 commits
-
-
Debargha Mukherjee authored
Change-Id: I861ccc09454606ce4172db02a52550f9b7a7800c
-
Cheng Chen authored
Static local functions. Remove av1_ prefix for local functions. Change-Id: I91cda7b6a1e09683ed70cd74e724db88ddf124dc
-
David Michael Barr authored
This is to exclude coding CFL for block sizes where it is normatively not allowed. Reuse the alternate CDFs from the --disable-cfl path. This yields some improvement on subset1: PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 -0.0113 | -0.2630 | -0.2138 | 0.0021 | -0.0110 | -0.0157 | -0.0511 BUG=aomedia:1182 Change-Id: I1e5f23ef7f2debcf8edce788bfa63ec95db4a679
-
Yunqing Wang authored
The motion vector search result at single reference frame mode is stored for later use. There are some issues in current implementation. 1. single_newmv is only stored for 1st ref_mv, but not for other ref_mv values tested. 2. If single reference mode is skipped and not tested, single_newmv is not available. 3. Interintra mode always use single_newmv as its MV, which may not be available as mentioned above. To fix it, we store single_newmv for every ref_mv tested. In interintra mode, if single_newmv is not available, do motion search to find a MV. This was revealed by a motion vector unit test failure. BUG=aomedia:1190 Change-Id: I3e690587644d4c8c31337f37380b796a3d71a3f6
-
- 15 Jan, 2018 1 commit
-
-
Sebastien Alaiwan authored
This experiment has been adopted, we can simplify the code by dropping the associated preprocessor conditionals. Change-Id: Ia2100f102de6d9d5a67ba7178a20a50202839636
-
- 13 Jan, 2018 1 commit
-
-
Hui Su authored
Initialize the RD_STATS variable to avoid valgrind error of "Conditional jump or move depends on uninitialised value(s)". BUG=aomedia:1219,aomedia:1226 Change-Id: Ie7749c8297b377750f0901d07e2c6024552a10df
-
- 12 Jan, 2018 3 commits
-
-
Yue Chen authored
Interintra RDO is moved into motion_mode_rd instead of calling handle_inter_mode() separately. This will save time on interp filter and new mv search, also skips interintra modes if the base inter predictors are not good enough. Speedup: LL ~20% HL < 1% Tiny performnace improvements (<0.05%). Change-Id: If5b1ad22396df7590fbc1060e26b61734a205830
-
Hui Su authored
Change-Id: I2a9e16bf337a91219fc2aa10937d3cd1dfa67a71
-
Hui Su authored
Change-Id: I26d23cd1107b4568c6f473df373be77fddb7c752
-
- 11 Jan, 2018 3 commits
-
-
Ryan authored
when trellis quantizaiton is disabled, the b_quantizer should be used. existing code has a lot of hard coded flag not hooked up correctly with high level trellis quantization enable/disable flag, which causes fp_quantizer is used. this patch is intended to remove the hard coded flags and correctly get them from the high level control. Change-Id: I0142aace03586d07aedea138fce08d3e72d99c32
-
Jingning Han authored
When the coding block size is below 16x16, the current tx size search loop may end up searching 4x4 transform size multiple times. This commit skips the redundant search steps. Tested a a few 1080p clips at 4 Mbps, the encoding speed is up by 10% for key frame coding, and 3% for overall. Change-Id: Ifbb27bad1ec55ef0011b1e789d995f36b3f4605e
-
Hui Su authored
Set up the identity scale factor once per frame, instead of per joint motion search. Change-Id: I5edd264655254f4b6a0a923d8ab43adbca044228
-
- 10 Jan, 2018 3 commits
-
-
Michelle Findlay-Olynyk authored
Add speed feature that uses hash tables to reuse previously found optimized coefficients in av1_optimize_txb. This skips some expensive optimize_txb calls. Currently shows no significant quality degredation or speed improvement, and set to off by default. Requires hash_me, lv_map and lv_map_multi. Adding to speed features required changing AV1_COMMON *cm to AV1_COMP *cpi in a chain of functions. Variations that have been tried: -varying the maximum eob on which the feature activates: 16, 32, 64. 16 currently used. 64 has best hit rate but longer execution time. -varying the data hashed and the length of hashes (first hash is 16 bit and based on context data, while second hash is 16 bit and based only on pre-optimized qcoeff values.) -softening the data used for the hashes: ideally this would raise the number of hits, without compromising quality too much. Change-Id: I94f22be82f3a46637c0489d512f2e334a307575f
-
Hui Su authored
BUG=aomedia:1203 Change-Id: I03ca925734535c31a1ed6bdeb7f29b5b5d5f476c
-
Urvang Joshi authored
Use assert to test the assumption noted in the comment. Ran some encodes with varying per-frame resolutions (using SUPERRES_RANDOM and RESIZE_RANDOM modes) to ensure that these asserts are indeed valid. Change-Id: I30021fff05f9793f80e42c5319bed02b0ae04cbd
-
- 09 Jan, 2018 2 commits
-
-
Cheng Chen authored
Put loops of searching jnt_comp only inside handle_inter_mode function. Change-Id: I9508dea64da7e6dfe31fad09aac8679cc855f55f
-
Angie Chiang authored
Change-Id: I05e77bf0c263ab7b94038f0c812bcec67df4ad24
-
- 08 Jan, 2018 3 commits
-
-
Sebastien Alaiwan authored
This allows dropping the code for non-scaled (VP9) transforms, who don't have highbitdepth implementations anymore anyway. Change-Id: I00071e1ca05f642eeba071849bb85b9b8b61c50f
-
Luc Trudeau authored
This reverts commit 9abda591. Reason for revert: This will only throw a warning on problematic configurations (CONFIG_DEBUG should not be enabled in relase) Change-Id: I12000e9ee95b9691f233a877fca2073f3566bdb6
-
Jingning Han authored
Restore the selected blk_skip array in the intra prediction mode search in inter frame coding. Change-Id: I55bfcec0336b98edc07c1451f89f3f45b9d91463
-
- 06 Jan, 2018 4 commits
-
-
Hui Su authored
At this point, av1_adapt_inter_frame_probs() can be removed. Change-Id: Ic8f9cc4f6b874aeec84a57fb7dbfacdb33309b51
-
Hui Su authored
Change-Id: I7c09b63aadefef3350d713e03b822447c9472509
-
Yunqing Wang authored
Removed unused macro USE_EXTRA_FILTER. Change-Id: Ief6c31c3a9a2e0845e0777e1dcef23f15cbcc898
-
Hui Su authored
Change-Id: Ib4b83335ba9c61435f774136bc57638d8b88e963
-
- 05 Jan, 2018 3 commits
-
-
Jingning Han authored
Properly store and update the luma component result in the key frame rate distortion optimization process for chroma component prediction. The txk-sel provides 0.15% gains for key frame coding on top of lv-map/multi and all other default experiments. Change-Id: I694860607b318d0a84333ed928d3de85c7676623
-
Jingning Han authored
The cfl route needs the reconstructed luma pixels in the chroma RD search. Replace an extra route of txfm_rd_in_plane with the use of av1_encode_intra_block_plane to directly write out the needed luma pixels in the key frame rate-distortion optimization process. The compression stats remain identical. The key frame encoding speed is on average 3% faster for a few tested 1080p clips. Change-Id: I65760b657a6d4b45bed9c4f1eca0cff1a2c274a1
-
Jingning Han authored
If the transform block selects a transform kernel type that makes it all zero coefficients and hits the best rd cost, store such decision and force the transform block to be coded as all zero block in the final coding pass. This makes txk-sel improve the kf coding performance by 0.15% now. Change-Id: I4bc3c185b9c68daefb856276da45bbf9e317d02e
-
- 04 Jan, 2018 1 commit
-
-
Hui Su authored
-Use the CDF values to calculate the cost for ref frame signaling -Update the cost per superblock -Fix some errors in the default CDF Test on midres speed-1 30 frames shows ~0.1% coding gain. Change-Id: I6f3e5896ef1cae9b515fc8287bc7565d68d05a57
-