- 26 May, 2017 1 commit
-
-
David Barker authored
We would expect that these new functions would be slower than the old masked SAD/SSE functions, as they do additional work (blending two inputs and comparing to a third, rather than just comparing two inputs). This is true for the SAD functions, which are about 50% slower (depending on block size and bit depth). However, the sub-pixel SSE functions are comparable to the old speed for the accelerated special cases (xoffset or yoffset = 0 or 4), and are between 40-90% faster for the generic case. Change-Id: I1a296ed8fc9e3edc313a6add516ff76b17cd3e9f
-
- 25 May, 2017 1 commit
-
-
Nathan E. Egge authored
This patch forces DAALA_EC on by default and removes the dkbool coder. Change-Id: Icd2ff08efd7bf467adf554344111473cb357adf8
-
- 24 May, 2017 1 commit
-
-
Tom Finegan authored
Use CONFIG_AV1_DECODER and CONFIG_AV1_ENCODER instead. Change-Id: I33d83aa6d31067d0db7a972d36927dc49c420f81
-
- 23 May, 2017 2 commits
-
-
David Barker authored
Add SSE2 lowbd and SSSE3 highbd versions of the filters introduced in https://aomedia-review.googlesource.com/c/11962/ . These filters are equivalent in speed to the SSE2 implementations of the regular convolve filter. The average time to filter a 64x64 block is: lowbd C: 52us lowbd SSE2: 5.6us highbd C: 53us highbd SSSE3: 5.8us Also add a correctness test based on the warp filter tests. Change-Id: Ia0d81100e8a414bbfc2b5f664d751cf24765299e
-
David Barker authored
Patches https://aomedia-review.googlesource.com/c/11987/ and https://aomedia-review.googlesource.com/c/11988/ replaced the old masked motion search pipeline with a new one which uses different SAD/SSE functions. This resulted in a lot of dead code. This patch removes the now-dead code. Note that this includes vectorized SAD/SSE functions, which will need to be rewritten at some point for the new pipeline. It also includes the masked_compound_variance_* functions since these turned out not to be used by the new pipeline. To help with the later addition of vectorized functions, the masked_sad/variance_test.cc files are kept but are modified to work with the new functions. The tests are then disabled until we actually have the vectorized functions. Change-Id: I61b686abd14bba5280bed94e1be62eb74ea23d89
-
- 15 May, 2017 1 commit
-
-
Ralph Giles authored
Libvpx dropped armv6 support sometime after the aom fork. We don't intend to support this platform, which is likely too slow in any case. Remove the assembly and intrinsics optimized routines, their tests, cpu feature detection, and rtcd specialization for this instruction set extension. Change-Id: If44ec28e5ddafc6af179c5d1982ac7e81fe54d5e
-
- 08 May, 2017 1 commit
-
-
Yi Luo authored
- Function level improvement: functions sse2 avx2 percentage idct16x16_256 365 226 38% idct16x16_38 n/a 136 n/a idct16x16_10 171 110 35% idct16x16_1 34 26 23% - Integrated in AV1 for default scan order. Change-Id: Ieb1a8e730bea9c371ebc0e5f4a748640d8f5e921
-
- 05 May, 2017 1 commit
-
-
Yaowu Xu authored
Move the definition of several ssse3 only functions into a separate header file. BUG=aomedia:500 Change-Id: Idbaedfe23d439b6092d46f0a2aa127efebe4d59b
-
- 26 Apr, 2017 1 commit
-
-
Yi Luo authored
- Partial inverse DCT unit tests have been enhanced. - IDCT x86_64 assembly code has been removed. Change-Id: Ic3bed2c0e70abdfd642a4f74fa969cc672d4795f
-
- 12 Apr, 2017 1 commit
-
-
Sebastien Alaiwan authored
Rename '--enable-aom-highbitdepth' to '--enable-highbitdepth' Change-Id: I1de13c3508c30c552532993419d8ace326142ab6
-
- 04 Apr, 2017 1 commit
-
-
Yunqing Wang authored
BUG=aomedia:395 Change-Id: I381f16e66e2540c9bf24727abf8915a3850dcc92
-
- 30 Mar, 2017 1 commit
-
-
Yi Luo authored
On i7-6700: - Function level speed improvement: 23%-29% - User level speed improvement: decoder: ~%2-%4. encoder: <1%. Change-Id: I02937a72304c3b356ca41e580352790df391f0a2
-
- 27 Mar, 2017 1 commit
-
-
Debargha Mukherjee authored
Adds a variable length binary code library for coding various symbols for typical use in headers. The main codes implemented are: 1. Coding a symbol from an n-ary alphabet using a quasi-uniform code. 2. A bilevel code for coding symbols from an n-ary alphabet based on a reference value for the symbol also taken from the same alphabet. The code has two steps. If the symbol is close to the reference a shorter code is used, while if it is farther away a longer code is used. 3. A finite (terminated) subexponential code that codes a symbol from an n-ary alphabet using subexp parameter k. 4. A finite (terminated) subexponential code that codes a symbol from an n-ary alphabet using subexp parameter k, based on a given reference also taken from the same alphabet. This code essentially reorders the values before using the same code as 3. Also adds corresponding encoder side functions to count the number of bits used. These codes will be subsequently used for more efficient encoding of loop-restoration parameters and global motion parameters. Change-Id: I28c82b611925c1ab17f544c48c4b1287930764b7
-
- 03 Mar, 2017 1 commit
-
-
Tom Finegan authored
Same sources as CONFIG_AV1 section. Combined them, and fixed a comment. Change-Id: I5273849143c0c92a506deeb9241a761e5ee125d3
-
- 01 Feb, 2017 1 commit
-
-
Alex Converse authored
This was part of the old ans zero token handling. It has been replaced by the new ec_multisymbol zero token handling. Change-Id: I9c1fcb42ac0d214178cf4fbf8755ad68dcbbc11f
-
- 13 Dec, 2016 1 commit
-
-
Steinar Midtskogen authored
Change-Id: If2bb7ab2b16ba44e2d6e43eeb8713aa6c05d9d7c
-
- 09 Dec, 2016 1 commit
-
-
Yi Luo authored
- For all blocks with width >= 16. - Add test_count to make the unit tests harder to pass. - Speed testing on 1080p, 100 frames, 5 Mbps, CPU, i7-6700 User level time reduction: baseline: 3.68% baseline + ext-partition: 36.12% Change-Id: I78c5d9ca216f0fd91f1a360dca2190b11fd54a08
-
- 23 Nov, 2016 1 commit
-
-
Steinar Midtskogen authored
Change-Id: I3f0af5cf71d17f4d331d846d92728396399f187b
-
- 16 Nov, 2016 1 commit
-
-
David Barker authored
Change-Id: I809eb52e8a632189c49b8ea0a2b5de760cc2a34c
-
- 10 Nov, 2016 1 commit
-
-
Yi Luo authored
- User level improves 1.33% on i7-6700 Change-Id: I279fc7ec99f4c3500017ed079709227f96e9702e
-
- 07 Nov, 2016 1 commit
-
-
Yushin Cho authored
PVQ replaces the scalar quantizer and coefficient coding with a new design originally developed in Daala. It currently depends on the Daala entropy coder although it could be adapted to work with another entropy coder if needed: ./configure --enable-experimental --enable-daala_ec --enable-pvq The version of PVQ in this commit is adapted from the following revision of Daala: https://github.com/xiph/daala/commit/fb51c1ade6a31b668a0157d89de8f0a4493162a8 More information about PVQ: - https://people.xiph.org/~jm/daala/pvq_demo/ - https://jmvalin.ca/papers/spie_pvq.pdf The following files are copied as-is from Daala with minimal adaptations, therefore we disable clang-format on those files to make it easier to synchronize the AV1 and Daala codebases in the future: av1/common/generic_code.c av1/common/generic_code.h av1/common/laplace_tables.c av1/common/partition.c av1/common/partition.h av1/common/pvq.c av1/common/pvq.h av1/common/state.c av1/common/state.h av1/common/zigzag.h av1/common/zigzag16.c av1/common/zigzag32.c av1/common/zigzag4.c av1/common/zigzag64.c av1/common/zigzag8.c av1/decoder/decint.h av1/decoder/generic_decoder.c av1/decoder/laplace_decoder.c av1/decoder/pvq_decoder.c av1/decoder/pvq_decoder.h av1/encoder/daala_compat_enc.c av1/encoder/encint.h av1/encoder/generic_encoder.c av1/encoder/laplace_encoder.c av1/encoder/pvq_encoder.c av1/encoder/pvq_encoder.h Known issues: - Lossless mode is not supported, '--lossless=1' will give the same result as '--end-usage=q --cq-level=1'. - High bit depth is not supported by PVQ. Change-Id: I1ae0d6517b87f4c1ccea944b2e12dc906979f25e
-
- 04 Nov, 2016 1 commit
-
-
Yushin Cho authored
PVQ replaces the scalar quantizer and coefficient coding with a new design originally developed in Daala. It currently depends on the Daala entropy coder although it could be adapted to work with another entropy coder if needed: ./configure --enable-experimental --enable-daala_ec --enable-pvq The version of PVQ in this commit is adapted from the following revision of Daala: https://github.com/xiph/daala/commit/fb51c1ade6a31b668a0157d89de8f0a4493162a8 More information about PVQ: - https://people.xiph.org/~jm/daala/pvq_demo/ - https://jmvalin.ca/papers/spie_pvq.pdf The following files are copied as-is from Daala with minimal adaptations, therefore we disable clang-format on those files to make it easier to synchronize the AV1 and Daala codebases in the future: av1/common/generic_code.c av1/common/generic_code.h av1/common/laplace_tables.c av1/common/partition.c av1/common/partition.h av1/common/pvq.c av1/common/pvq.h av1/common/state.c av1/common/state.h av1/common/zigzag.h av1/common/zigzag16.c av1/common/zigzag32.c av1/common/zigzag4.c av1/common/zigzag64.c av1/common/zigzag8.c av1/decoder/decint.h av1/decoder/generic_decoder.c av1/decoder/laplace_decoder.c av1/decoder/pvq_decoder.c av1/decoder/pvq_decoder.h av1/encoder/daala_compat_enc.c av1/encoder/encint.h av1/encoder/generic_encoder.c av1/encoder/laplace_encoder.c av1/encoder/pvq_encoder.c av1/encoder/pvq_encoder.h Known issues: - Lossless mode is not supported, '--lossless=1' will give the same result as '--end-usage=q --cq-level=1'. - High bit depth is not supported by PVQ. Change-Id: I1ae0d6517b87f4c1ccea944b2e12dc906979f25e
-
- 25 Oct, 2016 1 commit
-
-
Yi Luo authored
- Change FDCT32x32_2D_AVX2 output parameter to tran_low_t. - Add unit tests for CONFIG_AOM_HIGHBITDEPTH=1. - Update TODO notes. BUG=webm:1323 Change-Id: If4766c919a24231fce886de74658b6dd7a011246
-
- 21 Oct, 2016 2 commits
-
-
Yi Luo authored
Change-Id: Ida036defe5688894a63007a31aa2dd0b3f0b5d59
-
Steinar Midtskogen authored
Change-Id: I1da08afaa945ca1aaf4bf9f50cf649a7feef2e60
-
- 20 Oct, 2016 1 commit
-
-
Steinar Midtskogen authored
Change-Id: I1da08afaa945ca1aaf4bf9f50cf649a7feef2e60
-
- 19 Oct, 2016 1 commit
-
-
Steinar Midtskogen authored
Change-Id: I7d6394e48e9b6093e5b523387ed250f371ee7fb9
-
- 18 Oct, 2016 1 commit
-
-
Steinar Midtskogen authored
Change-Id: I7d6394e48e9b6093e5b523387ed250f371ee7fb9
-
- 14 Oct, 2016 2 commits
-
-
Nathan E. Egge authored
When building with --enable-daala_ec, calls to aom_write() and aom_read() use the daala entropy coder to write and read bits. When the probability is exactly 0.5 (128), then raw bits are used. ntt-short-1: MEDIUM (%) HIGH (%) PSNR -0.027556 -0.020114 PSNRHVS -0.027401 -0.020169 SSIM -0.027587 -0.020151 FASTSSIM -0.027592 -0.020102 subset1: RATE (%) DSNR (dB) PSNR 0.03296 -0.00210 PSNRHVS 0.03537 -0.00281 SSIM 0.03299 -0.00161 FASTSSIM 0.03458 -0.00111 Change-Id: I48ad8eb40fc895d62d6e241ea8abc02820d573f7
-
Nathan E. Egge authored
Change-Id: I2849a50163268d58cc5d80aacfec1fd02299ca43
-
- 13 Oct, 2016 2 commits
-
-
Yue Chen authored
To get ready for pulling AV1 to nextgenv2 Replace the experimental flag by MOTION_VAR. Rename major variables. Change-Id: If6cf4f37b9319c46d8f90df551cc7295d66ca205
-
David Barker authored
Change-Id: I1241257430f1e08ead1ce0f31db8272b50783102
-
- 12 Oct, 2016 2 commits
-
-
Yaowu Xu authored
Manually cherry-picked the following commits: 4b5e462d Upgrade vpx_lpf_{vertical,horizontal}_4 mmx to sse2 3ea537c0 lpf_8_test: remove unneeded function wrapper 110d3778 remove loopfilter 'count' param TODOs 9b44d9d0 split vpx_highbd_lpf_horizontal_16 in two 1b519fb6 split vpx_lpf_horizontal_16 in two e7a23d70 vpx_highbd_lpf_horizontal_4: remove unused count param 51718573 vpx_highbd_lpf_horizontal_8: remove unused count param 3c1019e4 vpx_highbd_lpf_vertical_4: remove unused count param 72a9f06a vpx_highbd_lpf_vertical_8: remove unused count param b1e97c6a vpx_lpf_horizontal_4: remove unused count param ab25e46pgrade vpx_lpf_{vertical,horizontal}_4 mmx to sse2 bd5a5bb5 vpx_lpf_horizontal_8: remove unused count param 109a47b3 vpx_lpf_vertical_4: remove unused count param 37225744 vpx_lpf_vertical_8: remove unused count param 47dee375 lpf_8_test: add missing dspr2 tests 4fec4a8e lpf_8_test: add missing vpx_lpf_horizontal_4 tests c3f2c8ad lpf_8_test: add missing vpx_lpf_vertical_4 tests 45a7b5eb lpf_8_test: simplify function wrapper generation Change-Id: I0e9212497bbf30de37b19cd2d6ea63b505abe06d
-
Yaowu Xu authored
1. vp8->aom 2. removed no-effect statements and spaces Change-Id: I367d05ff9bf1b9f3c71c517c45d8049d9d4236ec
-
- 11 Oct, 2016 1 commit
-
-
Steinar Midtskogen authored
Change-Id: I7f691a0ae27f06ef3d727764829a60a8ffc509eb
-
- 10 Oct, 2016 1 commit
-
- 06 Oct, 2016 1 commit
-
-
Yi Luo authored
- 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
-
- 28 Sep, 2016 1 commit
-
-
Alex Converse authored
Reconciles the following commits from aom/master to nextgenv2: - 25aaf40b - 87073de5 Change-Id: Ideda50a6ec75485cb4fa7437c69f4e58d6a2ca73
-
- 27 Sep, 2016 1 commit
-
-
Steinar Midtskogen authored
Change-Id: I7f691a0ae27f06ef3d727764829a60a8ffc509eb
-
- 19 Sep, 2016 1 commit
-
-
Alex Converse authored
That's where it lives in aom/master. Change-Id: I38f405827d9c2d0b06ef5f3bfd7cadc35d5991ef
-