- 17 Oct, 2017 12 commits
-
-
Yushin Cho authored
Added more asserts for dist-8x8 running in PSNR mode, i.e. with the encoder option "--enable-dist-8x8=1" instead of --tune=[cdef-dist | daala-dist]. The asserts checks whether a 8x8 distortion measured on reconstructed 8x8 pixels is identical to the sum of distortions from sub8x8 partitions (or tx blocks for var-tx case). Change-Id: I14f2b24e674a9cbbe60e663449fc4e7f46f0e481
-
Alexander Bokov authored
Introduces two new TX type pruning modes that provide better speed-quality trade-off compared to the existing ones. A shallow neural network with one hidden layer trained separately for each block size is used as a prediction model. The new modes differ in thresholds applied to the output of the neural net, so that they prune different number of TX types on average. Owing to relatively low quality loss PRUNE_2D_ACCURATE is used by default, regardless of speed settings. Starting with speed setting of 3 we switch to PRUNE_2D_FAST mode to get better speed-up. Evaluation results: ---------------------------------------------------------- Prune mode | Avg. speed-up | Quality loss | Quality loss |(high bitrates)| (lowres) | (midres) ---------------------------------------------------------- PRUNE_ONE | 18.7% | 0.396% | 0.308% ---------------------------------------------------------- PRUNE_TWO | 27.2% | 0.439% | 0.389% ---------------------------------------------------------- PRUNE_2D_ | 18.8% | 0.032% | 0.063% ACCURATE | | | ---------------------------------------------------------- PRUNE_2D_ | 33.3% | 0.504% | --- FAST | | | Change-Id: Ibd59f52eef493a499e529d824edad267daa65f9d
-
Debargha Mukherjee authored
Removes some stray CONFIG_CB4X4 config macros. BUG=aomedia:921 Change-Id: Icc65e0b000f659d7fb18178c928a7bff7879f58c
-
Frederic Barbier authored
A frame should be referenced with a unique delta, which is not guaranteed when diff_len is greater than frame_id_length. Otherwise, it's possible to get into a situation where a frame can be referenced with many different delta_frame_id values, although the decoder only accepts one of them. Avoid ambiguities when delta-referencing a frame, and avoid wasting bits by using a coding enforcing the restriction. Change-Id: If7c611c9b6ec69662c5af540ade59f08bacda2ba
-
Frederic Barbier authored
Let the writing/parsing logic do the +7/+2 offseting, and let the rest of the code directly manipulate the actual values. Change-Id: I460d5bf18446c028f326cb747b3c26c8d451637c
-
Nathan E. Egge authored
Change-Id: Ib38368d0aa7e13e53e8040c75a8564fbdb7646c7
-
Sebastien Alaiwan authored
Change-Id: I5bff0a68602a89ce480fec049c8b2c4bce44f6bb
-
Hui Su authored
Support recursive tx block partition. On the screen content testset, 0.2% gain for keyframe encoding. Change-Id: I623e6fbb910fef9c91617e02edf420019f67d189
-
Hui Su authored
This variable is unused. Change-Id: I8ee9c588898417e956e7cd7993ff54cbb885285e
-
Tom Finegan authored
- Missing forced disable of fp_mb_stats. BUG=aomedia:856 Change-Id: If789c95b5101c592747c73b8b39138d7e62f2132
-
Tom Finegan authored
- Again. - highbitdepth and rect_tx are now compatible with pvq. BUG=aomedia:856 Change-Id: I806e99938f1149fa088ab5abd857f03f502ee320
-
Tom Finegan authored
BUG=aomedia:474 Change-Id: I42569ab97b5246de98310031e1d2398876283527
-
- 16 Oct, 2017 14 commits
-
-
Yaowu Xu authored
This avoid compiler warnings Change-Id: I3977df12442532a699ded8f66c92422c30cd34a8
-
Yaowu Xu authored
Fixes crashes on x86-win32-vs14 build Change-Id: I045dd0fe4e9af3bfb80223e291617b717cbcb231
-
Yi Luo authored
D207E Predictor SSE2 vs C AVX2 vs C 4x4 ~2.7x 4x8 ~3.0x 8x4 ~7.2x 8x8 ~8.5x 8x16 ~9.4x 16x8 ~12.8x 16x16 ~13.0x 16x32 ~14.3x 32x16 ~19.9x 32x32 ~23.6x D63E Predictor SSE2 vs C AVX2 vs C 4x4 ~3.8x 4x8 ~4.3x 8x4 ~6.4x 8x8 ~6.8x 8x16 ~8.6x 16x8 ~9.0x 16x16 ~9.6x 16x32 ~10.3x 32x16 ~9.1x 32x32 ~11.0x Change-Id: I87373804c9d53276bf4d7788c4ae0d13d01c00dc
-
Luc Trudeau authored
Change-Id: I3dcf3dfb849aadc9a9e9d06bb6cf22dfe2acf073
-
Johann authored
Put it in the correct part of 'configure' Change-Id: I7731b13bbdbb61d2824d664d777b780d872bb1c0
-
Johann authored
Fixes a build failure when using 'make dist' Change-Id: I8f63724678ce68328ef9ad2328e9a5015d6faf48
-
Thomas Davies authored
As per spec, if delta quant is signalled at the superblock and at the segment level both should be allowed and the deltas should be summed to get the correct quant. BUG=aomedia:897 Change-Id: Ia07265c944c9969befa16f194e02bf4e7a8dd142
-
Debargha Mukherjee authored
BUG=aomedia:907 Change-Id: Ibe367eb34596e2d34d8c059e083b083e702c225e
-
Yunqing Wang authored
1. Reduce the worst-case number of samples from 34 to 16. 2. Simplify the trimming strategy to not use multiplication and division operations. Overall, this modification reduces the complexity without affecting the coding gain too much. Turning on "ext_warped_motion", the Borg test showed: avg_psnr ovr_psnr ssim cam_lowres: -0.912 -0.920 -1.246 lowres: -0.229 -0.219 -0.373 Change-Id: Ida21d1d3f22998c851b1270fe61a5e30f9e4ec38
-
Sebastien Alaiwan authored
Those are leftovers from the abandonned supertx experiment. Change-Id: If3ea7db9ea30c6be7c4955ae0a6a17730983ce66
-
Sebastien Alaiwan authored
When --enable-coefficient-range-checking isn't specified, clamp the coefficients at each stage. This doesn't change the decoder behavior for existing AV1 streams. However, some AV1 bitstreams that would have been rejected by the decoder as illegal (range check failure) are now legal bitstreams. There is no impact on video quality. BUG=aomedia:30 Change-Id: Ibcf1683e5c2ae9f91a7f37b468c4bc72e98e22fa
-
Sebastien Alaiwan authored
Change-Id: I9d3f0380865790d8adcb85f03305b193bc1949d7
-
Sebastien Alaiwan authored
This experiment has been adopted, we can simplify the code by dropping the associated preprocessor conditionals. Change-Id: I4705652ac8231ee25f960e8096dc97c2aeed1d20
-
Hui Su authored
This experiment uses switchable interpolation filter for intra prediction. Current gain is too small to be useful for AV1. May explore more for AV2 in the future. Change-Id: I24ae8c75dc71adf6271eabdb68a81b68a0869fa2
-
- 15 Oct, 2017 4 commits
-
-
Debargha Mukherjee authored
Implement upscaler block by block to guarantee a fixed number of output samples for each input block. Change-Id: I302972d3711549b9e217ca2c052a55bd04d91dae
-
Yue Chen authored
BUG=aomedia:901 Change-Id: I28165b5fbf712da02a609d8070a476f3b319a2c9
-
Jingning Han authored
When the reconstructed coefficient is below the original coeff in magnitude, skip the level down search for the given coefficient. With fast-mode fix, performance change is within 0.01% level. The overall clip encoding process speed is up by 10%-15%. Change-Id: I93b68e494aa995faa3093fdfa1bda0bcb0e2564a
-
BUG=aomedia:733 Change-Id: I7044c55611a3ea9555347f9c4fef03e3042560e2
-
- 14 Oct, 2017 5 commits
-
-
Jingning Han authored
Reduce the needed memory space for motion field estimation. Change-Id: I9caa228aa804a06370a34715a1c3463564d8d86b
-
Yushin Cho authored
Since BLOCK_4X16 and BLOCK_16X4 are listed with higher enum value than BLOCK_8X8. Change-Id: I36cdd4d33dfb2f3a01fa03c8eb8be26d8055dc43
-
BUG=aomedia:900 Change-Id: Ifb6c437d8d2f309d0717fb50c402618475fe021f
-
Change-Id: Ie02e188662119ee2719c79283641b9b74849cfab
-
Debargha Mukherjee authored
BUG=aomedia:909 Change-Id: I775c02df623a9ded5f04fcbbbb398f8e5d17a31a
-
- 13 Oct, 2017 5 commits
-
-
Jingning Han authored
Align all the motion vector storage buffer in 8x8 block resolution. Change-Id: Iea786db95b2274332a755dc60f66510c068e3dc5
-
Yi Luo authored
Change-Id: I4ce263b2731676e8620f0dbd1da2cd79bfded18c
-
Hui Su authored
Change-Id: If42a8cf9de9b4be14b4f228c5bf39747eefc168d
-
Sebastien Alaiwan authored
Also, simplify flow of control and avoid mutability. Change-Id: I4e971b784b87c7240a83752499a1fbd48cfcb220
-
Jingning Han authored
Support higher hardware throughput. The coding performance loss as compared to 15-bit precision is 0.05% for lowres. The loss is smaller as frame size goes up. Change-Id: I2e22b156f3178cf63689df306e9da13e0e4d205b
-