Граф коммитов

17 Коммитов

Автор SHA1 Сообщение Дата
Urvang Joshi ec4048aedd Move scale_sqrt2_* functions to a common location.
All of these were duplicated in two places.

BUG=aomedia:442

Change-Id: I8eb027c814f58eb23f71a8b8b4691970a333ad96
2017-04-21 16:47:41 +00:00
Urvang Joshi bd343f43ab Common Identity 16x8 transform: forward and reverse.
The code for forward and reverse transform was exactly same, so moved to
a common header.

BUG=aomedia:442

Change-Id: Ic0d82b6213127c757c81e7a84045a30e28036161
2017-04-20 21:57:32 +00:00
Yi Luo 13d2aee7df Add the missing IDTX type optimization to hybrid txfm
Change-Id: I99b15e5270bfefe2eb3e982aeba06ed564540d73
2017-03-31 21:33:47 +00:00
Yi Luo 9a3d29eadf Add SSE2 av1_fht32x32
BUG=aomedia:407

Change-Id: I27a7a230bbc701920a996d1e22ae4d22ca8cfead
2017-03-30 21:23:55 +00:00
Yi Luo 3b0b5f17eb Fix 16x32, 32x16 rectangular transform SSE2 to match C
- Turn on SSE2 unit tests

Change-Id: I285771b04c0dec0501210fde570b9ac3cb9c4be0
2017-01-13 20:33:28 +00:00
Yi Luo f10cba2b39 Apply the rect fwd tx changes to SSE2 optimization
- Apply changes on tx_size: 4x8, 8x4, 8x16, 16x8.
- Turn on corresponding unit tests on SSE2.
- Partially fix aomedia:113.

Change-Id: I29d15540ab8e9e3681e9caa54e5162bcbbd7af11
2016-12-16 16:54:30 +00:00
David Barker 838a53d623 Improve rectangular transform accuracy
By adjusting the internal scaling and rounding in the transforms,
we can adjust the maximum round-trip errors to:
* 8x16 and 16x8: 0 pixel values (ie, transforms are exact)
* 16x32: 1 pixel value
* 32x16: 2 pixel values

Change-Id: I0ba691a8d27042dcf1dd5ae81568d07a92d68781
2016-11-23 16:48:14 +00:00
Yi Luo 63bd6dc96b Fix rectangle transform computation overflow
- Add 16-bit saturation in fdct_round_shift().
- Add extreme value tests and round trip error tests.
- Fix inv 4x8 txfm calculation accuracy.
- Fix 4x8, 8x4, 8x16, 16x8, 16x32, 32x16 extreme value tests.
- BDRate: lowres: -0.034
          midres: -0.036
          hdres:  -0.013
BUG=webm:1340

Change-Id: I48365c1e50a03a7b1aa69b8856b732b483299fb5
2016-11-21 17:18:27 +00:00
Yaowu Xu febe9b06bb Fix msvc compiler warnings
BUG=aomedia:80

Change-Id: Ie4bccf053d2c24dcb64519650bcbcef4baffcdae
2016-11-09 19:38:21 +00:00
Jingning Han 9fe31390ca Support rectangular tx_size in the common lib
Change-Id: I4128ab932a967a3d657bb1f95f0fa2af20a06469
2016-11-02 11:48:31 -07:00
David Barker 33231d4801 Add sse2 forward and inverse 16x32 and 32x16 transforms
Change-Id: I1241257430f1e08ead1ce0f31db8272b50783102
2016-10-13 14:01:22 +01:00
David Barker 4d03d6fc6f Add sse2 forward / inverse 4x8 and 8x4 transforms
Change-Id: I89ed93fb20cf975c2b463cff58879521ceaa4163
2016-10-10 09:02:45 -07:00
Yi Luo e8e8cd8f1b Hybrid forward transforms 16x16 AVX2 optimization
- Unit tests are added for AVX2 SIMD.
- Encoder speed improvement:
  AV1 baseline and EXT_TX, three 1080p sequences at bitrate:
  800 Kbps, 2 Mbps, 6 Mbps, on i7-6700 CPU, average
  user level time reduction: 3.86%.

Change-Id: Ibbd7837ee3a831c6b1e4e471bf6c8d3fa3a19ff4
2016-10-06 15:33:15 -07:00
Geza Lore 1a800f6539 Add SSE2 versions of av1_fht8x16 and av1_fht16x8
Encoder speedup ~2% with ext-tx + rect-tx

Change-Id: Id56ddf102a887de31d181bde6d8ef8c4f03da945
2016-09-09 11:29:41 -07:00
Yaowu Xu 9c01aa1b0c Change to use aom copyright notice
This minimize code differences between AOM master and nextgenv2

Change-Id: If144865bdf3ef0818e7aac11018b9e786444c550
2016-09-02 08:22:07 -07:00
Yaowu Xu f883b42cab Port renaming changes from AOMedia
Cherry-Picked the following commits:
0defd8f Changed "WebM" to "AOMedia" & "webm" to "aomedia"
54e6676 Replace "VPx" by "AVx"
5082a36 Change "Vpx" to "Avx"
7df44f1 Replace "Vp9" w/ "Av1"
967f722 Remove kVp9CodecId
828f30c Change "Vp8" to "AOM"
030b5ff AUTHORS regenerated
2524cae Add ref-mv experimental flag
016762b Change copyright notice to AOMedia form
81e5526 Replace vp9 w/ av1
9b94565 Add missing files
fa8ca9f Change "vp9" to "av1"
ec838b7  Convert "vp8" to "aom"
80edfa0 Change "VP9" to "AV1"
d1a11fb Change "vp8" to "aom"
7b58251 Point to WebM test data
dd1a5c8 Replace "VP8" with "AOM"
ff00fc0 Change "VPX" to "AOM"
01dee0b Change "vp10" to "av1" in source code
cebe6f0 Convert "vpx" to "aom"
17b0567 rename vp10*.mk to av1_*.mk
fe5f8a8 rename files vp10_* to av1_*

Change-Id: I6fc3d18eb11fc171e46140c836ad5339cf6c9419
2016-08-31 18:19:03 -07:00
Yaowu Xu c27fc14b02 Port folder renaming changes from AOM
Manually cherry-picked commits:
ceef058 libvpx->libaom part2
3d26d91 libvpx -> libaom
cfea7dd vp10/ -> av1/
3a8eff7 Fix a build issue for a test
bf4202e Rename vpx to aom

Change-Id: I1b0eb5a40796e3aaf41c58984b4229a439a597dc
2016-08-31 17:26:24 -07:00