- 22 Nov, 2016 1 commit
-
-
Jingning Han authored
The processing units support the rectangular transform block size. Update the assertion conditions accordingly. Change-Id: Iebd46dbbb04feaf161fb02f203fa2cde50b2b700
-
- 18 Nov, 2016 1 commit
-
-
Debargha Mukherjee authored
Adds 64x64 default scan orders Adds 64x64 coefficient entropy models (just copy the 32x32 ones) Entropy context updates for 64x64 transform Various misc. changes to support 64x64 transforms Change-Id: I2c0bc4ba540886dd196e87a78b205407ad3e866b
-
- 16 Nov, 2016 2 commits
-
-
Debargha Mukherjee authored
Adds a feature to recode if global motion is used for a reference but has very few blocks in the frame actually using it. lowres improves to -0.512% on average. Change-Id: I61a36770e1b7103b9a27706909443c3f14ee4e42
-
Thomas Davies authored
BUG=aomedia:79 Merge of nextgenv2 caused av1_optimize_b not to take account of different inverse quantization when quant matrices are on. Change-Id: I1b8da2e110ce201183be777663222e3d73c9f17b
-
- 11 Nov, 2016 1 commit
-
-
Yaowu Xu authored
Change-Id: Ie57676814833824b1f3612b60ed9b0485c7ffd52
-
- 10 Nov, 2016 3 commits
-
-
Jingning Han authored
This commit supports the recursive transform block partition to start with both square and rectangular transform block sizes. Change-Id: Idaf29d50cb1f4876b43e5ba82c2609708c6b1926
-
Yushin Cho authored
Since non PVQ path in av1_encode_block_intra() was refactored in nextgenv2 so that both inter and intra block txfm_quant, i.e. av1_encode_block() and av1_encode_block_intra(), are done similar way, such as both call av1_xform_quant(). This is also nice for PVQ, since it can reuse pvq enc helper call in av1_xform_quant() for intra block mode. Change-Id: I45aaf5b899552bf947d777cdb2d92e665d4f217e
-
Yaowu Xu authored
For these files: av1/common/common_data.h av1/encoder/encodemb.c av1/encoder/quantize.c av1/encoder/rdopt.c Change-Id: I379e861d55c2875d0366df24f986b29796a70087
-
- 09 Nov, 2016 3 commits
-
-
Debargha Mukherjee authored
Also includes some refactoring and cleanups. Change-Id: I2c2528c434a1e9e9b898251fa69489d884463929
-
Jingning Han authored
Change-Id: I58232696f29e2570aa5b5e4b020b4dca59be1f5c
-
Jingning Han authored
Remove redundant #if statements there. Change-Id: If6e6000c76899b0c3072e741a22bc3efa7d33739
-
- 08 Nov, 2016 4 commits
-
-
Yushin Cho authored
Since PVQ's max block size equals to the max transform size, daala's definition of OD_BSIZE_MAX was changed from 5 down to 4 to use AV1's max trasform size 32x32. However, dering also uses OD_BSIZE_MAX and assumes its value is 5, which caused dering not working. Change-Id: I9d82bb24adc7d57552a8e0a8a7e798e77d96fd4b
-
Thomas Davies authored
Change-Id: I6cdb7e80072359fc2c485424e2130e62a796cf25
-
Yushin Cho authored
Since PVQ's max block size equals to the max transform size, daala's definition of OD_BSIZE_MAX was changed from 5 down to 4 to use AV1's max trasform size 32x32. However, dering also uses OD_BSIZE_MAX and assumes its value is 5, which caused dering not working. Change-Id: I9d82bb24adc7d57552a8e0a8a7e798e77d96fd4b
-
Yaowu Xu authored
The initialization of transform parameters was missing, that led to a crash in encoder. Change-Id: I9e35830d5f24e771c845f0d8881671d6b7228c5e
-
- 07 Nov, 2016 3 commits
-
-
Yaowu Xu authored
Change-Id: I17d05bbf75a201fd010fc17e2d9bd0db8ef36d41
-
Yaowu Xu authored
This commit resolves some compiling issues due to merge. Change-Id: I0eef8aa36c404e185e0b0004948a49307c360d3e
-
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 2 commits
-
-
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
-
Jingning Han authored
This commit replaces the offset based block index calculation with incremental based one. It does not change the coding statistics. Change-Id: I3789294eb45416bd0823e773ec30f05ed41ba0dc
-
- 02 Nov, 2016 1 commit
-
-
Jingning Han authored
This commit makes the encoding process of the recursive transform block partition support both rectangular and square transform block sizes as the starting point. If the coding block size is rectangular, it would allow the transform block size to start from the largest rectangular transform size, and recursive parse to the selected coding sizes. Change-Id: I576628b9166565bada6a918f0a1e67849dfef4cd
-
- 31 Oct, 2016 2 commits
-
-
Jingning Han authored
Factor common codes that show up in multiple places. Change-Id: I0a72213a151f74bdad926d59f86f0a28d00968fc
-
Jingning Han authored
Change-Id: I20040cdb5d9fdbf6c50082e5e17b4cfbd1926b13
-
- 25 Oct, 2016 1 commit
-
-
Jingning Han authored
Change-Id: I56110d1fc94b335668e6b991442e9083bbaea8ee
-
- 24 Oct, 2016 3 commits
-
-
Jingning Han authored
Use direct table access to fetch the block size and transform size in pixels. Change-Id: Ia0093d5aed912be24996a06b0567bb2d873ec068
-
Jingning Han authored
Simplify the input arguments. Make direct use of the block size in the unit of pixels. Change-Id: Ifec9d90b4b4fa9605f93b4f93b8242f76f898b5f
-
David Barker authored
Previously, we assumed that av1_init_plane_quantizers is always called with segment_id == xd->mi[0]->mbmi.segment_id (and use the latter to derive the value of 'qindex' to use in the quantizer). But this is no longer true when supertx is enabled. This patch instead remembers the value of 'qindex' derived from the latest call to av1_init_plane_quantizers and uses that directly. Change-Id: Ifa1c5bf74cad29942ff79b88ca92c231bc07f336
-
- 21 Oct, 2016 1 commit
-
-
Angie Chiang authored
This CL will facilitate adapt_scan experiment. In adapt_scan experiment, dynamic scan order will be stored in AV1_COMMON Change-Id: I4763ea931b5e1af54d4f173971befeb01a4db335
-
- 19 Oct, 2016 2 commits
-
-
Yaowu Xu authored
Change-Id: I1a462675c06c4b2a5f8b4b347f23fec67feccdd0
-
Urvang Joshi authored
- Change struct name to all caps SCAN_ORDER to be locally consistent. - Rename struct pointers to 'scan_order' instead of hard to read short names 'so' and 'sc'. Cherry-picked from aomedia/master: 30abc082 Change-Id: Ib9f0eefe28fa97d23d642b77d7dc8e5f8613177d
-
- 02 Oct, 2016 1 commit
-
-
Debargha Mukherjee authored
Refactor to streamline the number of profiles needed, in preparation for the next steps. NO change in performance. Change-Id: I753b89299897857f3c250c316b4cdc4fedcb90e8
-
- 30 Sep, 2016 1 commit
-
-
Yushin Cho authored
Removed av1_xform_quant_dc(). Change-Id: I2be2e95276001a209c107e15f5b57038eca911d9
-
- 28 Sep, 2016 1 commit
-
-
Debargha Mukherjee authored
Also adds hooks to choose different profiles for UV and intra. Results lowres: -0.15% midres: -0.24% Change-Id: I4af8bc3e9b82b6f8a061dce9f52c89afa6239ae1
-
- 23 Sep, 2016 1 commit
-
-
Guillaume Martres authored
This is a port of https://chromium.googlesource.com/webm/libvpx/+/92922be83c0b4b98d50f24cc3a1e7cc0a1b5741a from nextgenv2 Change-Id: Ie62170f7305a1588a2d170e36297618a549f1787
-
- 21 Sep, 2016 2 commits
-
-
Angie Chiang authored
This CL doesn't change coding behavior. It is to facilitate the following implementation of adaptive scan order Change-Id: I229963cb5185812a2da43f5c8a6506b296452a6a
-
Angie Chiang authored
Those functions include optimize_b, av1_encode_block_intra, av1_xform_quant and av1_xform_quant_fp This CL doesn't change any coding behavior. It is to facilitate the following implementation of adaptive scan order experiment. Change-Id: I0836e558b94e196a02c830a856be305afe20472b
-
- 17 Sep, 2016 1 commit
-
-
Change-Id: I863fc85c7dc1b4f4e5740ac086fe1a852c62d26e
-
- 15 Sep, 2016 1 commit
-
-
Change-Id: If22018f8911d9d7ee99c2127bdfcc56e42b0e2d7
-
- 06 Sep, 2016 1 commit
-
-
Yue Chen authored
Bitstream syntax: For a rectangular inter block, 'rect_tx' flag is sent to indicate if the biggest rect tx is used. If no, continue to decode regular recursive tx partition. Change-Id: I127e35cc619b65acb5e9a0717f399cdcdb73fbf0
-
- 05 Sep, 2016 1 commit
-
-
Debargha Mukherjee authored
Uses an array to map block sizes, y tx sizes, and subsampling factors to various transform sizes for UV. Results improve by 0.1-0.2% Change-Id: Icb58fd96bc7c01a72cbf1332fe2be4d55a0feedc
-