- 24 Oct, 2017 2 commits
-
-
Yunqing Wang authored
Modified the copying code and the profiling showed better performance than previous implementation. Change-Id: I41f585e0b0eac7a0deb4dec197c178e412a48db9
-
Sebastien Alaiwan authored
This experiment has been adopted. Change-Id: Ife4c18a59791268b7ac0de5a8a08e762a042cae2
-
- 21 Oct, 2017 1 commit
-
-
Debargha Mukherjee authored
Removes a bunch of unused code. Change-Id: I86bda117d8d455452ee1ee3a2a566742650e05e0
-
- 20 Oct, 2017 3 commits
-
-
Sebastien Alaiwan authored
Fallback to default warp params instead. The extra assignment to DEFAULT_WMTYPE prevents an assertion. Change-Id: If21a46cbb4cc9761e5c94bd2fcbc3a06342d677d
-
Debargha Mukherjee authored
Change-Id: I91efb93cade65469a2c4e922253b599270b45406
-
Debargha Mukherjee authored
Since CB4X4 is adopted and without it the codec does not work, it is better to remove it and simplify the code. Change-Id: I51019312846928069727967e3b2bbb60f0fba80d
-
- 17 Oct, 2017 1 commit
-
-
Hui Su authored
Support recursive tx block partition. On the screen content testset, 0.2% gain for keyframe encoding. Change-Id: I623e6fbb910fef9c91617e02edf420019f67d189
-
- 16 Oct, 2017 3 commits
-
-
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
-
- 13 Oct, 2017 2 commits
-
-
Jingning Han authored
Align all the motion vector storage buffer in 8x8 block resolution. Change-Id: Iea786db95b2274332a755dc60f66510c068e3dc5
-
Hui Su authored
Change-Id: If42a8cf9de9b4be14b4f228c5bf39747eefc168d
-
- 12 Oct, 2017 3 commits
-
-
Yunqing Wang authored
While finding the reference MV for a block, if one neighbouring block's motion mode is warped motion mode, instead of directly adding that block's MV to the candidate MV list, we use that neighbouring block's warped motion parameters to compute a MV for the center point of the current block, and then add that MV to the candidate MV list. Borg test result: avg_psnr ovr_psnr ssim cam_lowres: -0.507 -0.514 -0.685 lowres: -0.114 -0.122 -0.180 The change is added under ext_warped_motion config flag. Change-Id: I3ce6290a1fd512b613eab5d7620c8bcb08f189a6
-
Yue Chen authored
Make fi mode index entropy coded instead of using raw bits. Mode cost estimation in key-frame RDO is updated as well. Modification to inter frame RDO is not included in this patch. Also key-frame y mode cdf table is re-trained since fi modes are attached to DC_PRED Key frame BDRate: -0.399% lowres, -0.339% midres Change-Id: I9ccf478b0a2e48fb1870fe8451e45e2c858a5f63
-
David Barker authored
This patch modifies the interpretation of SEG_LVL_SKIP and SEG_LVL_ZEROMV slightly, to fix a decoder crash and to save bits in the intended use cases of these segment flags. Previously, blocks using either of these segment flags could signal reference frames just like any other block. But the mode was implicitly taken to be ZEROMV. This worked fine in VP9, but crashed for compound blocks in AV1 since those should use ZERO_ZEROMV instead. Now we make it so that SEG_LVL_SKIP and SEG_LVL_ZEROMV imply that the block is single-reference. The reference to use is taken from the SEG_LVL_REF_FRAME segment feature if that is present, or is set to LAST_FRAME if not. See the attached bug report for the reasoning behind this. As a related change, we also teach the encoder how to deal with the combination of SEG_LVL_SKIP + SEG_LVL_REF_FRAME. BUG=aomedia:675 Change-Id: I5e657cbfc1f08395a0301cba701edfb1682502a5
-
- 11 Oct, 2017 1 commit
-
-
Yunqing Wang authored
Removed rounding of blk_row/blk_col, which is more clear and doesn't change the result since the step size(mi_step) are even number. Change-Id: I3b0de69316e10c4834eb2d0d7e160a0ec9fbf130
-
- 10 Oct, 2017 4 commits
-
-
Hui Su authored
Add av1_allow_palette() to control whether palette mode should be enabled. Change-Id: Iee24636451be42eb36093dc3453bc39c7e686276
-
Lester Lu authored
In this experiment, sharp image discontinuity in the predicted block is detected. Based on this discontinuity, we choose particular LGTs as row and column transforms. Bitstream syntax, entropy coding, and RD search for LGT are added. One binary symbol is used to signal whether LGT is used. This experiment can work independently with the lgt experiment. lowres: -0.414% for key frames, -0.151% overall midres: -0.413% for key frames, -0.161% overall Change-Id: Iaa2f2c2839c34ca4134fa55e77870dc3f1fa879f
-
Debargha Mukherjee authored
Most of the fixes are related to replacing BLOCK_64X64 with cm->sb_size. Fixes the AV1/AqSegmentTest.TestNoMisMatchExtDeltaQ/* tests that were breaking before with ex-partition. Change-Id: I19d6045b422a93891b8cf4f8a929def97a595058
-
Hui Su authored
Change-Id: Ibea4c2c732b16851ad16b475ea40f021d5b5d5b3
-
- 09 Oct, 2017 4 commits
-
-
Sarah Parker authored
0.15% improvement on lowres set Change-Id: If16a8e07797c64508f9e2d9b26ae874ac53c57a4
-
Urvang Joshi authored
Introduced by: https://aomedia-review.googlesource.com/c/aom/+/25181 Change-Id: I1f25178d6b273fbeade4c33f153b5f2bac4a8b99
-
Rupert Swarbrick authored
This returns true if a block signals tx_size in the stream and uses it in the bitstream writing code and the decoder. Note that we can't quite use it in pack_inter_mode_mvs when CONFIG_VAR_TX && !CONFIG_RECT_TX but I've switched the code to using it the rest of the time since rect-tx is adopted and eventually the other code path should be deleted. Also use the helper function in tx_size_cost in rdopt.c, where the test was wrong and caused underestimates of block costs. (Specifically, the code that subtracts tx_size_cost from this_rate_tokenonly in rd_pick_intra_sby_mode ended up subtracting zero for a 4x8 block). The behaviour of the decoder should be unchanged. The only change in the encoder's behaviour should be in tx_size_cost where it should now match the rest of the code. Change-Id: I97236c9ce444993afe01ac5c6f4a0bb9e5049217
-
Zoe Liu authored
Frame sign bias value will not be signaled in frame header. Instead, the sign bias of reference frames are derived from their corresponding frame offsets at both encoder and decoder. The tool of 'frame_sign_bias' is dependent of 'frame_marker'. Compared against baseline, the enabling of both tools obtains a small coding gain of -0.08 ~ -0.11% in BDRate over Google lowres/midres tests. Change-Id: I8d85dc427ced0b2152712ccf61be4be6068075b9
-
- 08 Oct, 2017 2 commits
-
-
Yunqing Wang authored
Add an experiment "tmp", which includes: 1. Always use larger block size while storing frame MVs and make it consistent for CB4X4 or non-CB4X4 cases. Namely, use 8x8 for 4x4 mi size and 16x16 for 8x8 mi size. 2. Allocate smaller buffer for frame MVs and save memory usage. 3. Use nearby 8x8 or 16x16 location's previous frame MVs, and make the logic simple. 4. Reduce the number of copying for frame MVs, that is very costly in decoder. Baseline decoder got 5+% speedup. Borg test on lowres set showed a +0.009% PSNR difference before/after the patch. Change-Id: I61e14e95fd35bea88f338931b4f43c44f4e4cf1f
-
Zoe Liu authored
Change-Id: Ibdcb1530b9f81a2a5222e95cf5c0b7b2938509a8
-
- 06 Oct, 2017 2 commits
- 05 Oct, 2017 3 commits
-
-
Thomas Davies authored
Change-Id: I0b6f56d2bf0482cfbf45525828d6daa6aea187e5
-
Hui Su authored
Replace sorting with merging on decoder side. Change-Id: I77d63c1b2b0569a2e0d0fc239f77d7a90b1275df
-
Urvang Joshi authored
Change-Id: If6e84f390c6f92e8e013056c657758ba9e407a71
-
- 04 Oct, 2017 3 commits
-
-
Cheng Chen authored
BUG=aomedia:829 Change-Id: I78347e12b4efa05ebd424ba25de7767437495b42
-
Rupert Swarbrick authored
Before this patch, if CONFIG_DUAL_FILTER was true then an MB_MODE_INFO stored its filter choices as an array of four numbers, each of which was between 0 and 10. It also seems that elements 2 and 3 of the array were always the same as elements 0 and 1 when used. This patch defines a new type(def) called InterpFilters together with constructor and extractor functions. When CONFIG_DUAL_FILTER is zero, InterpFilters is a synonym for InterpFilter and the constructor and extractor functions should compile away to nothing. When it is nonzero, InterpFilters is a uint32_t which stores the x filter in the high part and the y filter in the low part (this looks strange, but matches the old numbering). Making this change allows us to get rid of lots of special case code that was dependent on CONFIG_DUAL_FILTER. The uniform extract/make/broadcast interface also actually shortens code in general. Change-Id: I6b24a61bac3e4b220d8d46d0b27cfe865dcfba81
-
Cheng Chen authored
When experiment LOOPFILTER_LEVEL is on, there're four base filter levels for each frame. This patch enables one to use one delta or four deltas to update corresponding filter levels for each superblock in EXT_DELTA_Q. 1 bit per frame is sent through bitstream to select one or four deltas. Now, we hard code to use one delta. Change-Id: I9c61a035064fa81878b0575ad21664e2b22a6a45
-
- 03 Oct, 2017 2 commits
-
-
Hui Su authored
The _ind and _inv mapping tables are not necessary. The CDF tables are updated with new values converted from the old tables. Performance impact is small and neutral. Change-Id: I65845ab3c80f88794abd9ab9e61494af56099c7c
-
Cheng Chen authored
Before LOOPFILTER_LEVEL, there's one filter level, now we have four filter levels for y plane vertical, y plane horizontal, u plane and v plane. This patch enables experiment LOOPFILTER_LEVEL to support per superblock loop filter level update. Change-Id: Ib11a1564471eb3076c26e73e5cdf7b5a3045ef97
-
- 02 Oct, 2017 2 commits
-
-
Thomas Davies authored
Reduce the number of contexts from 10 to 6. BUG=aomedia:830 Change-Id: If0ec302816975293b7dbd164c867feb66fa76847
-
Sebastien Alaiwan authored
This experiment has been adopted, we can simplify the code by dropping the associated preprocessor conditionals. Change-Id: Ic077963f72e8cc2ae9872b58c8a0241988384110
-
- 01 Oct, 2017 1 commit
-
-
Ryan authored
on windows build Change-Id: I841eb96b26155dd8fcba008884437035abc7e806
-
- 29 Sep, 2017 1 commit
-
-
Thomas Davies authored
Change-Id: I52f204000f5fdaf1c6fff63949d72e858ceea462
-