- 19 Jan, 2017 3 commits
-
-
Jingning Han authored
This commit adds 2x2 transform block scan order to make the adaptive scan order support cb4x4 mode. BUG=aomedia:135 Change-Id: Ic8c3ae9ed65d577df629524b617b386b5e799d4c
-
Jingning Han authored
The check condtion on block size is deprecated. No need to keep this assertion around. Change-Id: Icf2dde2a678cbbce837798877634b7be54e86e67
-
Yue Chen authored
When segment feature is on, frame level cm->tx_mode can be set to ONLY_4X4 only if all segments are lossless. Otherwise will cause bugs when xd->lossless[i] is 0 and xd->lossless[0] is 1. Also fix the condition of coding tx_type, which should be on when the qindex of current segment is > 0. BUG=aomedia:106 BUG=aomedia:104 Change-Id: Ic076083bb78b3b99a6f7d17ec82ee402c64bcc52
-
- 18 Jan, 2017 8 commits
-
-
Angie Chiang authored
We need uint16_t buf for storing no-rounding prediction. Add uint16_t buf in conv_params for that. This CL let us avoid changing interface of convolve functions. Change-Id: I079fad911327f40ffb98e17c73e7638b1719c975
-
Angie Chiang authored
Separate prediction code and parameter generating code. This will not change bitstream statistics. Change-Id: I194480166d3f8641592e53683029be1d466cfba9
-
Yue Chen authored
At the final round of encoding of each superblock, will go through each prediction block to check if ncobmc mode is better than non- overlapped prediction. Note that causal obmc mode is dumped here. PSNR gain (MOTION_VAR + NCOBMC): -2.845% lowres Change-Id: Ibe504f7f1882446a08ba426e1e9824bca73bf655
-
Yunqing Wang authored
While encoding a key frame with quantizer = 0 and aq-mode = 1, for some segment_ids, the quantizer got modified and could be > 0, and lossless[segment_id] might be 0 or 1 depending on the segment_id. Namely, blocks with lossless[segment_id] = 0 were allowed to choose transform sizes other than 4x4. This conflicted with tx_mode which was a frame-level decision. In this patch, the transform search condition was modified so that the transform choice was consistent with tx_mode of that frame. BUG=aomedia:104 Change-Id: Ia39127b5dee129283a133cf5e4000da62d9e0f1c
-
Urvang Joshi authored
These are under EXT_TX + RECT_TX experiment combo. Results ======= Derf Set: -------- All Intra frames: 1.8% avg improvement (and 1.78% BD-rate improvement) Video: 0.230% avg improvement (and 0.262% BD-rate improvement) Objective-1-fast set -------------------- Video: 0.52 PSNR improvement Change-Id: I1893465929858e38419f327752dc61c19b96b997
-
David Barker authored
Change-Id: I0d9850e082b8da3b182a3bbaf6569c45317c9659
-
Angie Chiang authored
Those functions includes av1_make_inter_predictor av1_build_inter_predictor inter_predictor Change-Id: Ide3b744277cf30964e8b352fc8de91365d7217a8
-
Alex Converse authored
At the edges of the picture only a subset of partitions are legal. Add new contexts for these borders so they don't distort the probabilities of the interior of the image where all partitions are legal. Only include one context for each block size of each border direction because so few blocks fall into these contexts to begin with. objective-1-fast: PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 -0.0294 | -0.0911 | -0.2382 | -0.0481 | -0.0441 | -0.0450 | -0.0454 derf144: -0.135 lowres: -0.124 midres: -0.076 hdres: -0.078 Change-Id: I909b98eebb7e49273cde90154c8408febe334158
-
- 17 Jan, 2017 2 commits
-
-
Debargha Mukherjee authored
Adds a few options to make the compound mask lightly dependent on the the two predictors. Also adds high bit depth support Change-Id: If57b6e8ddd140e0c00fd9d4738927d37225091cb
-
Angie Chiang authored
Call av1_convolve_init_# before testing convolve functionality. Change-Id: I15c7c292251a7dbf2ea77a2778f8dc7049ae8334
-
- 14 Jan, 2017 3 commits
-
-
Angie Chiang authored
Beside above and left positions, additional above-left, above-right, and bottom-left positions are added as neighbor candidates. In av1_update_neighbors, two available positions will be picked as context neighbors. The picking priority is above -> left -> above-left -> above->right -> bottom->left Change-Id: I82eaf0b23d0189caaea008ecc86776492886a05b
-
Angie Chiang authored
Change-Id: I85f059b6e2c48bcdf2edd3b7bf896fdccbaaa703
-
Yi Luo authored
- Adjust the accuracy value and fix, C/Trans4x4HT.AccuracyCheck/5,6,7 as CONFIG_AOM_HIGHBITDEPTH = 1. Change-Id: I2f8d97b2e2c1ee45bfae613657ca01b5666d76ee
-
- 13 Jan, 2017 11 commits
-
-
Yi Luo authored
Change-Id: I77bc383d4b2526cd9bef4d806905db0111c04f65
-
Yi Luo authored
- Turn on SSE2 unit tests Change-Id: I285771b04c0dec0501210fde570b9ac3cb9c4be0
-
Jingning Han authored
Change-Id: If38fa7e7816a556602c937f0526f5842cc216bf3
-
hui su authored
Rate and distortion stats were not correctly recorded. Change-Id: I91829d66b42e7b7b5b8bf37a0c1c43d6b8206a9f
-
Yue Chen authored
When both GLOBAL_MOTION and WARPED_MOTION are enabled, identify the neighbors using global motion, and generate correct projection samples, from which the local warped motion is estimated. Change-Id: I13556a49649208e6f4d30bc570a41074aabc8ae6
-
Yue Chen authored
Change-Id: Id2537c8826e07ad6605aaa9858ba6d797bcd23a5
-
Yue Chen authored
In order to use mvs from a future block in obmc, we first send mbmi info for the entire superblock, and then call another recursion to handle the coeffs and recon. Note: this change is currently not compatible with SUPERTX, later I will move detoken and recon for supertx to a proper place Change-Id: I19ab77fa137f53a370e68ea777f70d0306e3e303
-
hui su authored
Simplify code. Change-Id: Ifa65ea66e55c52ab79f32de1fc27121ddf088fc3
-
Thomas Davies authored
Also fix warning. Change-Id: Ia515360af9c3269901eb0d002d326b7af43a00e7
-
Angie Chiang authored
Use a round flag in ConvolveParams to indicate if the destination buffer has the result rounded by FILTER_BITS or not. This CL is part of the goal of reducing interpolation rounding error in compound prediction mode. Change-Id: I49e522a89a67a771f5a6e7fbbc609e97923aecb6
-
Jingning Han authored
Change-Id: Ia4779ffb47de333d670ae110cbdfb6cc567da910
-
- 12 Jan, 2017 11 commits
-
-
Yue Chen authored
In order to reduce the code complexity for handling parameter coding and recon separately for each 64x64 in non-causal obmc experiment, we break them down to two steps calling separate functions, one for params, the other dealing with coefficients and recon(decoder side). Note: actually the non-causal prediction can use the original syntax, but right now in the decoder coeff detoken and recon are heavily nested. Change-Id: I72d9c42ab8f38b57850d6b0481551893f1702822
-
David Barker authored
End-to-end speed improvements: (measured on tempete_cif.y4m, 20 frames for encoder and all 260 frames for decoder) * GLOBAL_MOTION encoder: ~10% faster * GLOBAL_MOTION decoder: 100-200% faster depending on bitrate * WARPED_MOTION encoder: ~2.5% faster * WARPED_MOTION decoder: ~20-40% faster depending on bitrate The improvement in the GLOBAL_MOTION decoder is particularly large because its runtime is dominated by calls to warp_plane(). This introduces minor changes to the output of the warp filter, but these should be rare. Change-Id: I5813ab9e90311e27587045153c32d400b6b9eb92
-
Yi Luo authored
- Witness the follow user-level speedup on AV1 baseline: Encoding time reduction: 4.26% Decoding time reduction: 25.35% Change-Id: Ideaf3cd473ad45ed9256c80d5a5daed0a6e098cf
-
Yue Chen authored
NCOBMC (non-causal obmc) allows overlapped prediction that takes mvs from blocks at positions with non-causal relation (e.g. at the bottom, or to the right) to the current block. This experiment will be a sub-experiment of MOTION_VAR, so will only be effective when MOTION_VAR is on. Change-Id: Ie3aa9591e1c15f5cc251664ea3c146210a5010cf
-
Jingning Han authored
Replace hard coded numbers with macro defs. Change-Id: I125ef4e4c8c3aead182c583522450626b730bbb3
-
Jingning Han authored
Fix the corner case and use the right rate cost udpate for rd_debug. This would make the var-tx pass rd_debug test. Change-Id: Ib0fbd2d73030c0d150222c6b7c2dfffc0c6af085
-
Jingning Han authored
Make the transform block partition context model support the rectangular transform block size partition. The coding gains from cb4x4 and var-tx are: cb4x4 + var-tx lowres 4.3% midres 2.6% Change-Id: I6cc1413fbf6d7707ca7fd24300623a3f0118be7c
-
Nathan E. Egge authored
Replace all instances of Daala's OD_ACCOUNTING with those specified by CONFIG_ACCOUNTING. Change-Id: Ibb59fc5df0ce4b0528b15296bf2f14029c414bc0
-
Nathan E. Egge authored
The generic coder now uses the AOM entropy coder API and no longer needs to include the entenc.h and entdec.h headers. Change-Id: I213acb5b6bd8a3fe60dc096b83d76ae72315e9de
-
Nathan E. Egge authored
The functions aom_encode_pvq_split() and aom_decode_pvq_split() code the rest value as raw bits using the od_ec_enc_bits() and od_ec_dec_bits() functions. These code bits in the reverse order as the aom_write_literal() and aom_read_literal() functions, so both the encoder and decoder must be changed at the same time. This commit has no impact on metrics but is a bitstream change. Change-Id: Iee79777f35aebbb23043a7efa7fe439af70348ba
-
Nathan E. Egge authored
The functions aom_laplace_encode_special() and aom_laplace_decode_special() code the rest value as raw bits using the od_ec_enc_bits() and od_ec_dec_bits() functions. These code bits in the reverse order as the aom_write_literal() and aom_read_literal() functions, so both the encoder and decoder must be changed at the same time. This commit has no impact on metrics but is a bitstream change. Change-Id: I428d5a83dd108c3a54f3c1dbae2c7fd5e59f5726
-
- 11 Jan, 2017 2 commits
-
-
Debargha Mukherjee authored
A slight improvement for lowres and midres. Change-Id: I377ba41034e1d70320e0c694d90a058e7809b129
-
ltrudeau authored
Cherry-pick Daala da7896a7 Remove double negation and added a comment explaining that this is used for visualization. This change does not alter the bitstream. Change-Id: I2a01ed292cc5cfa4e1bfdbc08251da6bd2c27158
-