- 27 Sep, 2017 15 commits
-
-
Angie Chiang authored
Add function get_binary_prob_new in aom_entropy_optimizer.c. This function add "+1" to both 0 and 1 counters such that it won't generate extreme probability when both counters are small Change-Id: I759d6e1cfedaf1c36281b523c26e7a7d1cad147c
-
David Barker authored
When deciding whether the top-right or bottom-left blocks are available, we currently always act as if we're using 128x128 superblocks. This means that, when using 64x64 superblocks, we sometimes conclude that blocks are available when they haven't been decoded yet! This typically happens at, for example, mi_row=15, mi_col=16 (for bottom left), where we're at a 64x64 boundary but not a 128x128 boundary. This patch fixes the issue by checking based on the signalled superblock size. Note: Most of this patch is just threading 'cm' through the intra prediction process, so that we have access to cm->sb_size in has_top_right() and has_bottom_left() Change-Id: I126964c510aafffc870e7cd8b3e64a46abb14b3a
-
Dominic Symes authored
This patch is designed to complete the CONFIG_MAX_TILE experiment. It adds the following features: - Explicit tiles of same width can be signalled with command line --tile_width - Explicit tiles of same hieght can be signalled with command line --tile_height - max_tile now works with the depenedent horizontal tiles experiment - additional checking added to ensure maximum number of rows/columns <= 64 - one fix to the tile group code for when the number of tiles is not a power of two Change-Id: I749a68fdb3dcdd8d1ced2b3558f3817e4b832c06
-
Ryan authored
inside the encode_super_block function, the tx_size decision logic is different in the dry_run==0 and dry_run==1 case when segment is lossless. this change fix the inconsistence. BUG=aomedia:819 Change-Id: I2f4c5434d8c4ef722ac885a1ffd2d253863ae6d9
-
Pavel Frolov authored
This fixes decoder's capability to start decoding bitstream from non-KEY intra_only frame. BUG=aomedia:816 Change-Id: Iecd5add418590119f59a51acd7208eb08cb17042
-
Yi Luo authored
Add lowbd unit test functionality to intrapred_test.cc Function speedup against C (i7-6700): Predictor DC LEFT TOP 128 4x8 ~1.4x ~1.4x ~1.7x ~1.9x 8x4 ~1.2x ~1.6x ~1.6x ~2.6x 8x16 ~1.4x ~1.3x ~1.4x ~2.1x 16x8 ~2.0x ~1.8x ~2.3x ~2.1x 16x32 ~2.0x ~1.9x ~1.8x ~2.2x 32x16 ~2.0x ~2.0x ~1.9x ~2.2x Change-Id: I33db512020ca3c6853a9205a8079f3d00134f584
-
Luc Trudeau authored
Since Subsampled values are in Q3, one does not need to take the average, as the sum of 4 values is the average in Q2. As such, shifting by 1 to the left, results in the average in Q3. By removing the intermediate step in Q0, rounding error is removed. Results on Subset1 PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 -0.0204 | -0.1945 | -0.1474 | -0.0170 | -0.0237 | -0.0178 | -0.0973 https://arewecompressedyet.com/?job=cfl-baseline%402017-09-06T17%3A41%3A38.041Z&job=cfl-NoAverageInSub%402017-09-06T17%3A59%3A00.035Z Change-Id: I8c6d4f71ec0e6e3923e254d79b83127b3734699e
-
Luc Trudeau authored
Result from luma subsampling is left-shifted by 3. This avoids having to do it during averaging, in alpha search and when building the prediction. This change does not alter the bitstream. Results on Subset1 PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 https://arewecompressedyet.com/?job=cfl-baseline%402017-09-06T17%3A41%3A38.041Z&job=cfl-SubsampleQ3%402017-09-06T17%3A42%3A01.252Z Change-Id: I6e89eac6496f7c36e46364c9223fbcbca6759032
-
Rupert Swarbrick authored
Exactly one of tmp_dst/tmp_dst_/tmp_dst2 is used in a call to av1_make_masked_inter_predictor. Work out how many bytes are needed by the largest one possible and just allocate that. Change-Id: Ib8fabaf1f461ce1192c5657a3d2b5a4f7fa8d7b1
-
David Barker authored
When calculating the above overlapped prediction, we adjust xd->mb_to_bottom_edge to have the correct value for the prediction we're about to make. This prediction is half the height of the current block - *unless* the block is 128 pixels high, in which case the prediction is only 32 pixels high. This patch implements the special case for 128-pixel high blocks. (all of this applies analogously for left predictions too) Change-Id: I2780e8d4a6f8a9f82f540f2c2dfde691d07298e2
-
Sebastien Alaiwan authored
Change-Id: Id6f588876b1adf68abd8c17d7eef2223d552e457
-
Jonathan Matthews authored
BUG=aomedia:812 Change-Id: I635d620fc6d350391ecb7885cc119eaef0af39bc
-
Cheng Chen authored
Only use cm->mi, instead of cm->mi_grid_visible to get filter level. The latter may not work for shifted grid loop filtering. Change-Id: I55ed6a42f0abb19d6814e8c0cf8d64ce79bf6abc
-
Cheng Chen authored
Set filter step = 2, such that 3 bit can represent [-14, +14] filter level difference. Tune threshold for reusing filter level between previous and current superblock. Change-Id: I6f26377591f3e93f7c068e4aa4279ae9bc2c9522
-
Luc Trudeau authored
We extract these functions in order to move them to the cfl_store in a subsequent commit. This change does not impact the bitstream. Results on Subset1 (compared to parent with CfL enabled) PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 https://arewecompressedyet.com/?job=cfl-inter%402017-09-23T20%3A51%3A01.093Z&job=cfl-extract%402017-09-23T20%3A54%3A15.693Z Change-Id: I84bfe60e25a4a665f686d6b18789395a50318a9b
-
- 26 Sep, 2017 13 commits
-
-
Urvang Joshi authored
Based on code change in: https://aomedia-review.googlesource.com/c/aom/+/21140 Change-Id: I771ba6e08259e1c43cb06ebe6436dafe07fdf1d5
-
Tom Finegan authored
Alpha sort the experiments group in aom_config_defaults.cmake to avoid future duplication issues, and: - Remove ALTREF2. - Remove the duped CDEF line. BUG=aomedia:813 Change-Id: Ib14172c89dd3934dbf475bbfc581d017acdba2d8
-
Sebastien Alaiwan authored
Change-Id: Iee4957038d61c14cf8fa3f9c094b579c82c20603
-
Yushin Cho authored
PVQ has been broken again since the experiment flag for palette is removed in commit c6300aa1. As a fix, if PVQ is enabled then disable both of --tune-content=screen and automatic detection of screen and use of palette coding tool. Change-Id: Iea6bb042b4402163805c44dabfb3f4c05dfd4e23
-
Yushin Cho authored
Change-Id: I4d6912f3a0df0bdb3f435cc8057b63fbaa3aaa6d
-
Luc Trudeau authored
Like for intra block in intra frames, an extra call to txfm_rd_in_plane is added to the RDO of intra blocks in inter frames. This extra call is performed using the best parameters found during RDO and the reconstructed luma pixel are stored. Results on objective-1-fast (compared to CfL on Intra frames only) PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 -0.2497 | -3.5526 | -3.5048 | -0.2456 | -0.2392 | -0.2508 | -1.4811 https://arewecompressedyet.com/?job=cfl-no-inter%402017-09-13&job=cfl-inter%402017-09-13T14%3A13%3A13.918Z Change-Id: I70ea2c01859b6c55d7c3eb9680d492c0bfc2aad4
-
Rupert Swarbrick authored
The subtile and clamping features are no longer used. This patch removes the dead code that implemented them and the parameters to support them. It also changes the return format. Instead of having return type void and passing data out through 4 output pointers, the function now just returns a RestorationTileLimits structure. Since the function is defined inline in a header, I suspect that most callsites will actually compile to identical code. There should be no functional change from this patch. Change-Id: I6ebc4da66a00676bd988f939a4b4957f743e8004
-
Rupert Swarbrick authored
This patch basically just pushes #if CONFIG_HIGHBITDEPTH down past other #if/#endif blocks, letting us pull out common code instead of having to repeat it. There should be no functional change (indeed, there should be no change except whitespace after preprocessing!) Change-Id: I9bcbfbdec5ad54e42095de085df381e85bf48197
-
Thomas Davies authored
rem_bits-1 not rem_bits should be transmitted so that 2 cannot be coded in two ways. BUG=aomedia:811 Change-Id: Iaa0203214bbe6fc6775e05fe4b6e976d568f54b3
-
Cheng Chen authored
For each superblock, its filtering range is shifted up and left by 8 pixels (half of the maximum loop filter length), such that estimation of deblocking filtering will not cross two superblocks. Change-Id: I82244b7c26ab8b2ac553037b3bb1fe1d82bf5704
-
Cheng Chen authored
Signal one bit to indicate whether current superblock reuses filter level of previous superblock. Try filtering and compute sse using previous filter level and search the best possible filter level. If their diff is less than predefined threshold, current superblock reuses previous level. Otherwise, signal the best filter level. Change-Id: Ibf125860883b774ef2464b62bb8b799b48258c64
-
Debargha Mukherjee authored
The compressed header is now used only when the refresh type is set as forward, i.e. in error resilience and frame parallel modes. As long as backward updates are used the header is disabled thereby saving bits. Change-Id: Iee9f66ffbd30ef3552ea41b75e4b51537cd9ff97
-
Debargha Mukherjee authored
Change-Id: Ifb0e4363136779092fcf5e9b27318f1b83df7ad7
-
- 25 Sep, 2017 4 commits
-
-
Sebastien Alaiwan authored
Change-Id: Id721adcec7bd260f05690ee26890dd1180a74784
-
Yushin Cho authored
BUG=aomedia:818 Fixing "NIghtly test "AV1/ResizeCspTest.TestResizeCspWorks/0" fails" The flag was accidentaly turned on in the commit c00769a9. Change-Id: I9d7102022fddedc9a3e35ae8086159f06067d21c
-
Sebastien Alaiwan authored
Change-Id: Ia58759dec0c6d5e5d0e91166e2abf5204c3217f3
-
Sebastien Alaiwan authored
Use them to simplify the body of compare_img in encode_test_driver.cc. Change-Id: I4fbb4e67917f61f224e3d1b1a6970d10fc3cd777
-
- 24 Sep, 2017 4 commits
-
-
Angie Chiang authored
Change-Id: I3209d0074bf3ed1fda260dc2f5cacbfa616ad6ae
-
Angie Chiang authored
We calculate eob cost in the end of the outer for loop However, The continue statement from br_node may lead to ignoring eob cost Change-Id: Ic80c88e034836eb4dc4ac8b87bf0b7b45bf5d097
-
Angie Chiang authored
This is for reduce memory usage for adapt_scan The whole change will be under the flage USE_2X2_PROB Change-Id: If7839d6396dad7618155ef2f36896d17743696ce
-
Jingning Han authored
Change-Id: I88e425c55b61629430078e11b5b94bac164d027e
-
- 23 Sep, 2017 4 commits
-
-
Debargha Mukherjee authored
Removes setup in compressed header so that the compressed header can be skipped. Change-Id: I8d7ed63944a4f75704222f4ad7d0159db1cec0d1
-
Debargha Mukherjee authored
Change-Id: I3d6a440b13473b0d1e8b18c6629c7e8e3fb446ae
-
Yushin Cho authored
Improve dist-8x8 when computing 8x8 yuv dist for sub8x8. To apply dist-8x8 for sub8x8 partitions, once mode decision for sub8x8 partitions are finished then dist-8x8 is computed on 8x8 window. Since dist-8x8 is only for luma, chroma distortion should be identified. Previously, it has been hard to be free from potential bugs doing this, due to the complex inter mode search code. The new method is less-error-prone, which computes uv distortion (in MSE) after the mode decisions for all of sub8x8 blocks in a 8x8 window are finished, when the dist-8x8 distortion for luma 8x8 pixels are computed with new distortion metric. All the code separating y and uv distortion in inter mode search has been removed in this commit. Change-Id: Ieaccb7915df5faeb5e89a7e70b2b7cbac65231af
-
Debargha Mukherjee authored
This patch moves the sb_size to the keyframe header from all frame headers as discussed in the AOM Codec WG meeting. Change-Id: Ia0190e57b36b98e51ab61ad4ff14f24f9c294877
-