- 18 Feb, 2017 1 commit
-
-
Nathan E. Egge authored
When run with --enable-ec_adapt, forward updates to the tx_size_prob array will not be made. objective-1-fast: master-ec_adapt-e568e6f0@2017-02-17T15:30:27.109Z -> tx_size-ec_adapt@2017-02-17T15:31:49.504Z PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 -0.0113 | -0.0112 | -0.0113 | -0.0114 | -0.0114 | -0.0114 | -0.0112 master-ec_adapt-robust-e568e6f0@2017-02-17T20:29:45.315Z -> tx_size-ec_adapt-robust@2017-02-17T20:33:06.405Z PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 -0.0244 | -0.0243 | -0.0243 | -0.0245 | -0.0245 | -0.0245 | -0.0243 Change-Id: I5873c5d14e3f3868997775f85fa743d2d55d81b7
-
- 17 Feb, 2017 2 commits
-
-
Yaowu Xu authored
Replace obselete size "4" with correct one "tile_size_bytes". This fixes a decoder crash. BUG=aomedia:352 Change-Id: I5b1c606a4d5be946acc68b3cfe0d0603a5591c44
-
Debargha Mukherjee authored
Adds functinoality for least-squares, RANSAC as well as encoding and decoding with new constrained homographies that warp blocks to horizontal and/or vertical trapezoids. This is for future experimentation. None of the models are actually enabled in the code. Change-Id: I1936018c6b11587d6fd83c3a2c63548cb641b33f
-
- 14 Feb, 2017 1 commit
-
-
Debargha Mukherjee authored
Allows DomainTxfm filters to be turned off for experimentation. Also expands the parameter set for the Self guided filters. Change-Id: I68fdb8e079a2464d80b3a4a990005c49baaaf0b8
-
- 13 Feb, 2017 1 commit
-
-
Jingning Han authored
This fixes a decoding failure issue of adaptive scan order in the error resilient mode. BUG=aomedia:353 Change-Id: I4b09f168cd0e0efc843a05f82d7e1c05173ee629
-
- 12 Feb, 2017 1 commit
-
-
Jingning Han authored
This commit makes the adaptive scan order system support multi- thread encoding. It fixes unit test failure issue associated with AV1/AVxEncoderThreadTest.EncoderResultTest/0. BUG=aomedia:353 Change-Id: I61cbf9531c8deab97fb3bb17428d0b2a63cf309a
-
- 11 Feb, 2017 1 commit
-
-
Zoe Liu authored
Noticed that some ALTREF_FRAMEs could have used compound modes for its prediction but have been labeled as SINGLE_REFERENCE mode in the frame header. This experiment is to remove the COMPOUND_REFERENCE mode from the frame-level reference mode choices and only leave SINGLE_REFERENCE and REFERENCE_MODE_SELECT the two choices in the frame header. When turning on both ext-refs and ref-adapt, compared against ext-refs itself, a small gain is achieved. In PSNR, the bitrate saving gains are as follows: lowres: Avg -0.120%; BDRate -0.128% midres: Avg -0.155%; BDRate -0.128% Change-Id: I2cfff8a6b7eaa65ef863dbdbc4dd086d3b586f8c
-
- 09 Feb, 2017 1 commit
-
-
Thomas Daede authored
Change-Id: Iad2b526d65865cbcb2119aca21686563ca8e97fd
-
- 07 Feb, 2017 1 commit
-
-
Timothy B. Terriberry authored
This ensures we operate at the same precision that Daala uses, which matters when activity masking is enabled, because of the gain companding. Metrics from Patchset 4 (which had slightly incorrect rounding): With activity masking (5 frames only): av1_pvq_AM_ref_5f@2017-02-07T03:37:53.702Z -> av1_pvq_AM_derf_fix2_coeff_scaling_5f@2017-02-07T00:12:24.427Z PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 0.6653 | -12.3177 | -12.1858 | 0.3350 | 4.1013 | 2.0964 | -4.0539 In particular for Netflix_Crosswalk_1920x1080_60fps_8bit_420_60f.y4m -5.0589 | -22.3077 | -21.2188 | -7.0389 | -3.3715 |-5.7794 | -13.1891 I.e., it fixes the large regression with AM on this sequence, and substantially improves chroma (at a lesser cost to other metrics). Without activity masking (5 frames only): av1_pvq_ref_5f@2017-02-07T03:52:51.279Z -> av1_pvq_derf_fix2_coeff_scaling_5f@2017-02-07T00:12:48.873Z PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 0.0989 | -0.0322 | -0.0464 | 0.1883 | 0.0795 | 0.0579 | 0.0923 Change-Id: I46b808b7c8e4733465f8bebc8336dfd5b75783ec
-
- 06 Feb, 2017 1 commit
-
-
Alex Converse authored
The new_tokenset experiment replaces the unconstrained tokenset with a multisymbol alphabet in an inventive way. Tested configurations: new_tokenset + ec_adapt, new_tokenset, ec_multisymbol Change-Id: I846ab2e51c2a1dc3f2f9904ed8c47a8e98f853c5
-
- 04 Feb, 2017 1 commit
-
-
Fangwen Fu authored
Change-Id: I1050b69045407381d4626b65a0bf6f35957a66f4
-
- 03 Feb, 2017 5 commits
-
-
Thomas Davies authored
RD search and trellis encoding are still sub-optimal. Change-Id: I233979909118241a0c78761c1d5c2cd6857915e0
-
Yue Chen authored
BDRATE results: lowres: -0.880% (up from -0.844%) Change-Id: I017c0beddcc687148fed33c1e9963e05f1eaf6ea
-
hui su authored
Change-Id: I378b677cf579441ba0a9014a8a77a1cf3f8b5689
-
Thomas Davies authored
Preparation for merging EOB_TOKEN. The block_zero value corresponds to the first EOB_TOKEN: other EOB_TOKEN values will be merged with non-zero values. Change-Id: I94036783ee240fa916a79c544ecd716a9c24fa59
-
Ryan Lei authored
This commit renames deblocking_across_tiles to loopfilter_across_tiles, to get ready for dering and clpf integration. Change-Id: Id25b051da9b1e5cb92f35a9619662597462d9537
-
- 01 Feb, 2017 1 commit
-
-
David Barker authored
This fixes the following mismatch bugs: * At the bitstream level, the decoder would not read the delta_qindex information for supertx blocks, but the encoder always sent it, leading to the encoder and decoder becoming misaligned. The delta_qindex information is still required for supertx blocks, so change the decoder to read it. * In addition, the quantizer was not properly adjusted for supertx blocks at the decoder. We copy the quantizer setup code from non-supertx blocks. Since this does not change the encoder, it should not have any quality impact. Change-Id: I9a0f79c3aa66f2a5a353821e2a6f3b526636e7b4
-
- 31 Jan, 2017 2 commits
-
-
Alex Converse authored
Change-Id: Ibd4bbceca8218eb94ed0af3c980f8e829a1896de
-
Thomas Davies authored
Zero, one, and two or more coded as one symbol (head). Remaining tokens coded as a tail symbol. The pareto CDF distribution is adjusted to cover tokens from two onwards. Change-Id: I98b33fab6b9f52690f6ad618ac55e725a97be056
-
- 27 Jan, 2017 1 commit
-
-
Debargha Mukherjee authored
Fixes and turns on the test. BUG=aomedia:312 Change-Id: I6c7d1970e743ec2b025a798070761d22624e796a
-
- 26 Jan, 2017 1 commit
-
-
ltrudeau authored
Creates the PVQ_SKIP_TYPE enum to encapsulate the different types of skipping that can be signaled by PVQ (i.e. skip: AC, DC or both). There is no impact on the bitstream. However, the decoder will now emit an internal error if the decoded skip flag is out of range. The block_skip variable is also renamed to ac_dc_coded as it stores the same information. Change-Id: Ib2aadaf99dc1736ea392ae5ed8948c3cdc12da9b
-
- 25 Jan, 2017 1 commit
-
-
hui su authored
Minor performance changes 0.03% better on lowres 0.01% better on midres Change-Id: I7a7168f3a2a4d17a03353841a416eff6edf1e241
-
- 24 Jan, 2017 1 commit
-
-
David Barker authored
Now that https://aomedia-review.googlesource.com/#/c/6729/ has been merged, build_intra_predictors_for_interintra() is now redundant, so replace it by a direct call to av1_predict_intra_block() and remove the old function. Reset rect_interintra back to 1. To do this, we need to make the intra predictor take a BLOCK_SIZE instead of a TX_SIZE. This is because we need to be able to predict 32x64 and 64x32 blocks, but there is no TX_32X64 or TX_64X32. No effect on output or performance. Change-Id: I8c185a211c97a85012cc54ec293c785a693608ed
-
- 23 Jan, 2017 2 commits
-
-
Fangwen Fu authored
Change-Id: Ieb2922c3df4ef4f8514b8a6df6f9a8fc45ef3cf4
-
Yushin Cho authored
This commit adds a new experiment, Daala's distortion function, which is designed to better approximate perceptual distortion in 8x8 pixel blocks. This experiment is expected to work best with PVQ. It measures the variance of overlapped 4x4 regions in the 8x8 area, then uses these variances to scale the MSE of weighted frequency domain distortion of 8x8 block. Since AV1 calculates distortion in blocks as small as 4x4, it is not possible to directly replace the existing distortion functions of AV1, such as dist_block() and block_rd_txf(). Hence, there has been substantial changes in order to apply Daala's 8x8 distortion function. The daala distortion function is applied after all 4x4 tx blocks in a 8x8 block are encoded (during RDO), as in below two cases: 1) intra/inter sub8x8 predictions and 2) 4x4 transform with prediction size >= 8. To enable this experiment, add '--enable-daala-dist' with configure. TODO: Significant tuning of parameters is required since the function has originally came from Daala thus most parameters would not work correctly outside Daala. The fact that chroma distortion is added to the distortion of AV1's RDO is also critical since Daala's distortion function is applied to luma only and chroma continues to use MSE. Change-Id: If35fdd3aec7efe401f351ba1c99891ad57a3d957
-
- 21 Jan, 2017 1 commit
-
-
Jingning Han authored
This commit enables the adaptive scan order system support rectangular trnasform block sizes. It resolves the coding failure when rect-tx or var-tx are enabled. BUG=aomedia:143 Change-Id: Ic565284e811e3f7e0ebf2e08fb3748257ce8a049
-
- 20 Jan, 2017 2 commits
-
-
Thomas Davies authored
Change-Id: I4b53dab674390496d8fe7299970c5fb327b5a7be
-
Thomas Davies authored
Change-Id: Id01c785ad48134075c4f6643233413564f0b8fbc
-
- 19 Jan, 2017 4 commits
-
-
Alex Converse authored
Change-Id: I3d64ec4bbc72143b30a094ece7a6c711d6b479cd
-
David Barker authored
* Change Wiener filter storage to match the format expected by the convolve functions Change-Id: I4d1fb08a13cfc31e69e12c1cb4b2e510c6d8ae30
-
Thomas Davies authored
This will support adapting in each tile. (https://bugs.chromium.org/p/aomedia/issues/detail?id=71) Change-Id: I3eced47715749a48f78c4ccf151c4d0b58f36c0d
-
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 3 commits
-
-
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
-
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
-
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
-
- 13 Jan, 2017 1 commit
-
-
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
-
- 12 Jan, 2017 1 commit
-
-
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
-
- 11 Jan, 2017 1 commit
-
-
Alex Converse authored
Change-Id: I4a0f0a775362e6e43cd28ed29bf83c912cdc7df5
-
- 10 Jan, 2017 1 commit
-
-
Nathan E. Egge authored
Change the od_decode_cdf_adapt() function to take an aom_reader struct instead of an od_ec_dec struct. Rename od_decode_cdf_adapt() to aom_decode_cdf_adapt(). Change-Id: I0713d2f56acfea3f67f1b4087c0feee77c2e25cb
-
- 09 Jan, 2017 1 commit
-
-
Debargha Mukherjee authored
Slight improvement in midres and hdres sets of 0.02% and 0.0.9% respectively. This is also a better design anyways. Change-Id: I15b60b8836070a2132641e5b1d8e9f68df426c08
-