- 29 May, 2017 1 commit
-
-
Debargha Mukherjee authored
Change-Id: Idc7bb686f5751b0457c9f21daac0fa6f4865fd22
-
- 26 May, 2017 1 commit
-
-
Debargha Mukherjee authored
Change-Id: Ia18f9f7034dafb9ac0108143d4f65f3f6b1a77d5
-
- 16 May, 2017 1 commit
-
-
David Barker authored
* Calculate sx4, sy4 by truncation instead of rounding * Move some repeated calculations out of the filter loop This is expected to have a roughly neutral effect on BDRATE. The speedup of each filter (SSE2, lowbd SSSE3, highbd SSSE3) is 7-10%, for a total speedup of 14-18% when considered together with patches f7a5ee53 and 14b8112b. Change-Id: I692f649202214c7ab53ecf81f81386f1503e2d20
-
- 15 May, 2017 1 commit
-
-
Yaowu Xu authored
Slience warnings by converting the shifts to mulitplies. Change-Id: Icde8f2df650f740b8e90691ba706a0853be84984
-
- 12 May, 2017 2 commits
-
-
Urvang Joshi authored
Fixes the following UBSan errors due to left shifting negative values. Change-Id: I578ca3f56417a94ffe83f634171903897117aa6b
-
emilkeyder@google.com authored
This avoids repeatedly computing the frame error in refine_integerized_param. Change-Id: If4af77b68a7e61a700bafa3f60940b9017e12b40
-
- 11 May, 2017 2 commits
-
-
Sean Purser-Haskell authored
Change-Id: I175d6ff03f31a2e0d2fe7cd1c3852210d6e0ddf5
-
David Barker authored
Previously, the projected positions of chroma pixels would effectively undergo double rounding, since we round both when calculating x4 / y4 and when calculating the filter index. Further, the two roundings were different: x4 / y4 used ROUND_POWER_OF_TWO_SIGNED, whereas the filter index uses ROUND_POWER_OF_TWO. It is slightly more accurate (and faster) to replace the first rounding by a shift; this is motivated by the fact that ROUND_POWER_OF_TWO(x >> a, b) == ROUND_POWER_OF_TWO(x, a + b) Change-Id: Ia52b05745168d0aeb05f0af4c75ff33eee791d82
-
- 06 May, 2017 1 commit
-
-
Yaowu Xu authored
Change-Id: I6f0c93fd38abc85553b81a3f2d99e97ed9c803f7
-
- 05 May, 2017 2 commits
-
-
Debargha Mukherjee authored
BUG=aomedia:516 Change-Id: I0af6e5e20f785bd4862f499b8d53002f58677c40
-
Sarah Parker authored
This fixes a mismatch which occurs when global/warped motion and a masked compound type are used together. Change-Id: I08b2702cdb3b85f8d8817b9286a73951c97cf379
-
- 04 May, 2017 1 commit
-
-
David Barker authored
The SSSE3 filter is very similar to the SSE2 filter, but the horizontal pass is sped up by using the 8x8->16 multiplies added in SSSE3. Also apply const-correctness to all versions of the filter The timings of the existing filters are unchanged, and the lowbd SSSE3 filter is ~17% faster than the lowbd SSE2 filter. Timings per 8x8 block: lowbd SSE2: 320ns lowbd SSSE3: 273ns highbd SSSE3: 300ns Filter output is unchanged. Change-Id: Ifb428a33b106d900cde1b080794796c0754ae182
-
- 03 May, 2017 4 commits
-
-
Sean Purser-Haskell authored
Make row indexed at 192/96 equal to the one indexed at 191/95, so that clamping the table address to 191/95 produces results consistent with the libaom implementation. New change to replace 10692 which was reverted in 10870. Change-Id: I756bd9a3567aa5ac14a2d4d7d2e9bda2ebc9ac7b
-
Debargha Mukherjee authored
Change-Id: If54cb2a96b02f29ba9c2cc6046189c925586e972
-
Frank Galligan authored
BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=498 Change-Id: I007abe5dd0ad61586de56db3ad2b13f9fb71e5d9
-
Frank Galligan authored
BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=497 Change-Id: I725881f3e3dd6bdb104d71ba8045fd83aa7e3e40
-
- 02 May, 2017 2 commits
-
-
David Barker authored
Patch https://aomedia-review.googlesource.com/c/10901/ temporarily disabled the SSE2 warp filter for 4x4 blocks, because of a data race when the filter was used at the right-hand edge of a tile in a multithreaded encode. This patch fixes the data race and re-enables the SSE2 warp filter. Change-Id: I7058c897ddf538cd10001c5be13b1a1bfe8320fd
-
Yaowu Xu authored
The results of the mulipliations can be larger than INT32_MAX. Change-Id: Idc27e55c4be86b74203cabedd2c506e7762db990
-
- 01 May, 2017 3 commits
-
-
Yaowu Xu authored
llabs() takes int64_t as input paramemter, therefore fixes warnings of explict type conversion from int64_t to long. Change-Id: I2569a5c7e425e3690f5dc7a607bad2539c2324f6
-
Yaowu Xu authored
Convert shifts of int/int64 into multiplications Change-Id: I3d7ef400249096a6c3712c46f59c35c3ddfde5ca
-
Debargha Mukherjee authored
Temporarily force C version until the SSE2 version is fixed Change-Id: I51450068259f998d178b1c681872e59d056b254b
-
- 28 Apr, 2017 3 commits
-
-
Debargha Mukherjee authored
This reverts commit 266db85d. Reason for revert: Reverting to prevent software slowdown. Will be implemented differently in a separate patch. Change-Id: I386a9661c87d69e22761e5c01507f2f1f968433f
-
Yue Chen authored
Properly set number of projection samples for seg skip blocks at the encoder side to clear unit test failure when both seg feature and warped_motion is on. Clear 'implicit conversions' warnings Change-Id: I29e40ffae75880dae2584dbc8772c81321f6d69e
-
David Barker authored
When predicting a 4x4 warp block (either using ZEROMV with global-motion, or the WARPED_CAUSAL motion mode with warped-motion), the warp filter would previously write 4 bytes to the right of the block. This caused encode/decode mismatches when encoding with multiple threads and tile_cols > 1, since in that case we could end up overwriting already-generated pixels from the next tile across. This patch changes the filter so that we only overwrite the intended pixels. Change-Id: I3664b44e872e85aa5ccc0a5781f0f9ad994a5b80
-
- 27 Apr, 2017 1 commit
-
-
Sean Purser-Haskell authored
is accessed. Change-Id: I3d65123893663cc7d303056e46934aec153bc35b
-
- 26 Apr, 2017 2 commits
-
-
Debargha Mukherjee authored
Change-Id: I73f82b418625009d9634c1750aa82ce2dfa85abb
-
James Zern authored
inline is undefined in visual studio 2013 for C Change-Id: I85adb3968e4a98e2d7909cc42e955b1447fcfa26
-
- 24 Apr, 2017 1 commit
-
-
Yaowu Xu authored
BUG=aomedia:448 Change-Id: Ieff977fca8a5033ddef2871a194870f59301ad8f
-
- 21 Apr, 2017 1 commit
-
-
Urvang Joshi authored
This reverts commit 8cd0e7ef. Reason for revert: This change breaks av1_warp_affine_c when CONFIG_HIGHBITDEPTH is enabled. In particular, running ./test_libaom --gtest_filter=*Warp* compiled with --enable-warped-motion --enable-highbitdepth shows several test failures, followed by a segmentation fault when it gets up to test SSE2/AV1WarpFilterTest.CheckOutput/4 The tricky part is that the use the lowbd version of the function is dependent on a mix of two conditions: (1) Compile time check for CONFIG_HIGHBITDEPTH and (2) Run time check to see if bit-depth == 8 So, it is tricky to refactor. BUG=aomedia:442 Change-Id: I610c537fb65bde4f357185a13081639f906351de
-
- 20 Apr, 2017 1 commit
-
-
Urvang Joshi authored
Only a few lines differed between the two. BUG=aomedia:442 Change-Id: I304c07d962c9a166596ec97ae4e2ec23ea90a195
-
- 17 Apr, 2017 1 commit
-
-
Debargha Mukherjee authored
Reduces precision of matrices by 2 bits. No material change in performance. Change-Id: I549a27da1dcb381fb329c345ee280dbd86b45bac
-
- 13 Apr, 2017 1 commit
-
-
Debargha Mukherjee authored
Adds filters for 1/32 subpel precision for warping. To use 1/32 subpel precision make WARPEDPIXEL_PREC_BITS 5. By default, WARPEDPIXEL_PREC_BITS is set as 6 in common/mv.h, which uses 1/64 subpel precision. If 1/32 precision is used, BDRATE drops: on lowres: -1.101 (vs. -1.186% with 1/64) w/warped-motion -1.587 (vs. -1.650% with 1/64) w/global-motion on cam_lowres: -2.638 (vs. -2.707% with 1/64) w/warped-motion -3.396 (vs. -3.453% with 1/64) w/global-motion Change-Id: I82fbfddaad9bd9be658fe382401d212833c7ceef
-
- 12 Apr, 2017 1 commit
-
-
Rename '--enable-aom-highbitdepth' to '--enable-highbitdepth' Change-Id: I1de13c3508c30c552532993419d8ace326142ab6
-
- 11 Apr, 2017 2 commits
-
-
Sean Purser-Haskell authored
Change-Id: Ia9220b7b499567e07307444defe86a1d386cb8f9
-
Sean Purser-Haskell authored
Change-Id: I88686147ef406b10691cc3e49f5a1a21fe9de029
-
- 10 Apr, 2017 2 commits
-
-
Debargha Mukherjee authored
Change-Id: I9cd9362edbb7b642f4b632bf574abfe5b2159ff3
-
Debargha Mukherjee authored
Reduces value from 512 to 256. Change-Id: Ia1f924e8b0f38baee812740d7f90e6b95c6df15f
-
- 08 Apr, 2017 1 commit
-
-
Debargha Mukherjee authored
Change-Id: I1665b3812726fd40326a4ac3da79dc316529e17e
-
- 07 Apr, 2017 1 commit
-
-
Debargha Mukherjee authored
Change-Id: I5546263d3b3ce4c1b9b70175bc4e6a301b1c8463
-
- 06 Apr, 2017 1 commit
-
-
David Barker authored
This applies the same refactorings to highbd_warp_plane which were applied to warp_plane a while ago, and lays the groundwork for the relevant tests. Change-Id: Ic4c00bce1accc5a3624bba0c3b4b325e69a42c1a
-