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

293 Коммитов

Автор SHA1 Сообщение Дата
Jingning Han 0b44cdcab1 Fix clang-format warnings in aom_dsp/simd/v64_intrinsics_arm.h
Change-Id: I221bf4520d7030133e3b2fea883a995b3d6f6282
2016-10-10 15:18:49 -07:00
Steinar Midtskogen 3dbd55a6c4 Added high bit-depth support in CLPF.
Change-Id: Ic5eadb323227a820ad876c32d4dc296e05db6ece
2016-10-10 11:27:04 -07:00
Steinar Midtskogen e8224c7ad5 Reduce memory footprint for CLPF decoding.
Instead of having CLPF write to an entire new frame and
copy the result back into the original frame, make the
filter able to work in-place by keeping a buffer of size
frame_width*filter_block_size and delay the write-back
by one filter_block_size row.

This reduces the cycles spent in the filter to ~75%.

Change-Id: I78ca74380c45492daa8935d08d766851edb5fbc1
2016-10-10 11:26:33 -07:00
Steinar Midtskogen be668e92c3 Added generic SIMD support for CLPF.
Change-Id: Ie03f9a5b0a4c708a586532198d755a1e7509f149
2016-10-10 11:19:37 -07:00
Yaowu Xu 607048d606 Merge "Added generic SIMD library supporting x86 SSE2+ and ARM NEON." into nextgenv2 2016-10-10 18:17:50 +00: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 3a8217f21b Merge "Hybrid forward transforms 16x16 AVX2 optimization" into nextgenv2 2016-10-07 01:52:11 +00:00
Debargha Mukherjee 609453e7e4 Merge "Added sse2 inverse 8x16 and 16x8 transforms" into nextgenv2 2016-10-07 00:03:34 +00: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
Peter de Rivaz 1baecfeb03 Added sse2 inverse 8x16 and 16x8 transforms
Change-Id: I43628407b11e5c8e6af4df69f2acdc67ac827834
2016-10-06 11:23:14 -07:00
Steinar Midtskogen a5f8ea1109 Added generic SIMD library supporting x86 SSE2+ and ARM NEON.
Change-Id: I037f4c44f621a7e909b82ccb6a299d41bcbf8607
2016-10-06 16:37:08 +00:00
Yi Luo a674ba93fe Fix high bitdepth variance overflow on uint32_t
BUG=webm:1305

Change-Id: I4c56631359e298b99e618c07bcbae9f793c5e2ac
2016-10-03 16:37:00 -07:00
Alex Converse 33590f8c71 Rename rans_dec_lut to rans_lut
It's used in both encoding and decoding. Matches (historical)
implementation in aom/master.

Change-Id: Ib009b6b6023cfe69e99a0a92f3c70f4416fcdb47
2016-09-28 15:35:04 -07:00
Alex Converse 7fe2ae8e88 Port ANS from aom/master 25aaf40
Reconciles the following commits from aom/master to nextgenv2:
- 25aaf40bbc
- 87073de569

Change-Id: Ideda50a6ec75485cb4fa7437c69f4e58d6a2ca73
2016-09-28 12:07:00 -07:00
Nathan E. Egge e691a24cff Refactor bitreader and bitwriter wrapper.
Move code for reading and writing literals and reading trees to use
just the aom_read_bit() and aom_write_bit() function calls.

Change-Id: Id2bced5f0125a5558030a813c51c3d79e5701873
(cherry picked from aom/master commit bc1ac15846)
2016-09-28 12:07:00 -07:00
Alex Converse acef60bd2c Migrate bitreader to the interface from aom/master
Change-Id: I7232f9ae3d97e730f66e4b80f550192e3ef7230b
2016-09-26 12:19:11 -07:00
Alex Converse 1d1e0844e9 Merge "Migrate bitwriter to the interface in aom/master" into nextgenv2 2016-09-23 01:18:30 +00:00
Angie Chiang 6062a8bfee bitstream_debug: build related cleanup
Move experimental config from debug_util.c/h to aom_util.mk to avoid
empty object.

Change-Id: Id7978ed6a342262bddaa4df8b53115e750fa1c2c
2016-09-22 09:37:56 -07:00
Alex Converse 080a2cccba Migrate bitwriter to the interface in aom/master
Change-Id: I73d46229f0feea43cbe933e51da997833cce032b
2016-09-21 11:17:08 -07:00
Alex Converse 3e457ba154 Merge changes I38f40582,Ib7afcffa into nextgenv2
* changes:
  Move ANS to aom_dsp.
  Move and wrap the old vpx boolcoder.
2016-09-20 22:55:18 +00:00
clang-format bda8d61ed1 apply clang-format after 5cd2ab9
Change-Id: I186e90d99cd54e66d38159b7cb55a881226b1568
2016-09-19 15:56:08 -07:00
Alex Converse 1ac1ae73dc Move ANS to aom_dsp.
That's where it lives in aom/master.

Change-Id: I38f405827d9c2d0b06ef5f3bfd7cadc35d5991ef
2016-09-19 09:51:27 -07:00
Alex Converse eb00cb289b Move and wrap the old vpx boolcoder.
This should make room for compile time pluggable replacements.

Change-Id: Ib7afcffa93bf664b89a49da21a20138127443292
(cherry picked from commit 9dd0b89824)
2016-09-17 14:56:51 -07:00
Debargha Mukherjee 4c80804e66 Merge "Enable tile-adaptive restoration" into nextgenv2 2016-09-17 19:10:28 +00:00
Debargha Mukherjee 5cd2ab95c9 Enable tile-adaptive restoration
Includes a major refactoring/enhancement to support
tile-adaptive switchable restoration. The framework can be
readily extended to add more restoration schemes in the
future. Also includes various cleanups and fixes.

Specifically the framework allows restoration to be conducted
on tiles such that each tile can be either left unrestored, or
use bilateral or wiener filtering.

There is a modest improvemnt in coding efficiency (0.1 - 0.2%).

Further enhancements will be added subsequently to improve coding
efficiency and complexity.

Change-Id: I5ebedb04785ce1ef6f324abe209e925c2d6cbe8a
2016-09-17 09:46:28 -07:00
clang-format 67948d312d apply clang-format
Change-Id: If22018f8911d9d7ee99c2127bdfcc56e42b0e2d7
2016-09-15 16:41:21 -07:00
Yaowu Xu 66c41f9937 Merge "Clarify valid value ranges" into nextgenv2 2016-09-09 22:38:57 +00:00
Yaowu Xu 6feda0602a Clarify valid value ranges
This commit adds asserts to clarify value ranges in sum computations,
also corrects type conversion used in related calculations.

cherry-picked #738d5b19 from aom/master

Change-Id: Ib6d574ec23e5c28ccd994dac26f973eb3920430d
2016-09-09 11:58:53 -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 628d3c5839 variance_impl_avx2.c: align a table for better readability
Change-Id: I8cd99f9807dbfe6f70147615d2fd6775a7d98c16
2016-09-08 17:36:44 -07:00
Yaowu Xu 0dc4cbb059 sad_avx2.c: add hints for clang-foramt
Change-Id: I721c52e69395a99b3a0395dc229de1cbb32670e9
2016-09-07 00:29:13 +00:00
Yaowu Xu f87b9021f1 Fix a compiler warning of unused variable
Change-Id: I4a2faa32cc0847fe14dd8f40156163f4713055ca
2016-09-06 14:52:49 +00:00
Yaowu Xu 037845507d Avoid re-use same temp variables
In highbd_quantize_intrin_sse2.c.

Change-Id: Iaf6360e456f1fb2f8ff06461afbfecfc0103dda3
2016-09-06 14:52:19 +00:00
Yaowu Xu 34b0ee61b2 quantize.c: int->uint32_t for absolute values
Change-Id: I784f32e0e86d873655e46cf68c5c124a698af361
2016-09-06 14:51:47 +00:00
Yaowu Xu 1f9356a536 aom_dsp: AV1_IADST8x16_1D to AOM_IADST8x16_1D
Change-Id: Iba415ab2d4adb3350b4747a58f69db7d02bbab68
2016-09-06 14:51:32 +00:00
Yaowu Xu ecee7f29d0 Merge "Change to use AOM copyright notice" into nextgenv2 2016-09-02 22:13:24 +00:00
Yaowu Xu 2ab7ff05f1 Change to use AOM copyright notice
Change-Id: I2b2b70e756b7eb9611b7b33b7d5f19b3b30e0a50
2016-09-02 19:52:03 +00:00
Yaowu Xu 0764955002 Merge "Change to use aom copyright notice" into nextgenv2 2016-09-02 17:41:21 +00: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
Angie Chiang cb9a9ebd81 Add frame info in bitstream debug tool
Change-Id: Iead3edd8563d7900481eb199e8b003d2d3df075b
2016-09-01 16:24:49 -07:00
Urvang Joshi 340593e530 Add ALT_INTRA experiment.
When the experiment is ON, we use Paeth predictor instead of TM
predictor.

For derf set, this gives about 0.09% improvement overall, and 0.55%
improvement if all frames are forced to be intra-only.

Also, if the EXT_INTRA experiment is also on, the improvement overall
is 0.056%, and improvement if all frames are forced to be intra-only is
0.465%.

Change-Id: Id74e107ede70a8d2107fa14fcb3f44b23a437274
2016-09-01 12:03:20 -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