- 07 Oct, 2017 1 commit
-
-
Urvang Joshi authored
Earlier, the superres scale was in the form of: N/16, where N ranged from 8 to 16. We change this to the form: 8/D, where D ranges from 8 to 16. This helps on the decoder side, by making it possible to work on 8x8 blocks at a time. Change-Id: I6c72d4b3e8d1c830e61d4bb8d7f6337a100c3064
-
- 06 Oct, 2017 1 commit
-
-
RogerZhou authored
Change-Id: I3f30c35bcd1bc623ad0c34c4b954ff71b2fcfd00
-
- 05 Oct, 2017 4 commits
-
-
Hui Su authored
Hard code av1_ext_tx_ind[] and av1_ext_tx_inv[]. Change-Id: Ife650d41be3f85d048f5585659ad57e03f54b39b
-
Thomas Davies authored
Change-Id: I0b6f56d2bf0482cfbf45525828d6daa6aea187e5
-
Sebastien Alaiwan authored
Change-Id: Id8cc58ca56ebeea6b7f499a5fac4fb96e01d797b
-
Urvang Joshi authored
Change-Id: If6e84f390c6f92e8e013056c657758ba9e407a71
-
- 04 Oct, 2017 2 commits
-
-
Rupert Swarbrick authored
Before this patch, if CONFIG_DUAL_FILTER was true then an MB_MODE_INFO stored its filter choices as an array of four numbers, each of which was between 0 and 10. It also seems that elements 2 and 3 of the array were always the same as elements 0 and 1 when used. This patch defines a new type(def) called InterpFilters together with constructor and extractor functions. When CONFIG_DUAL_FILTER is zero, InterpFilters is a synonym for InterpFilter and the constructor and extractor functions should compile away to nothing. When it is nonzero, InterpFilters is a uint32_t which stores the x filter in the high part and the y filter in the low part (this looks strange, but matches the old numbering). Making this change allows us to get rid of lots of special case code that was dependent on CONFIG_DUAL_FILTER. The uniform extract/make/broadcast interface also actually shortens code in general. Change-Id: I6b24a61bac3e4b220d8d46d0b27cfe865dcfba81
-
Cheng Chen authored
When experiment LOOPFILTER_LEVEL is on, there're four base filter levels for each frame. This patch enables one to use one delta or four deltas to update corresponding filter levels for each superblock in EXT_DELTA_Q. 1 bit per frame is sent through bitstream to select one or four deltas. Now, we hard code to use one delta. Change-Id: I9c61a035064fa81878b0575ad21664e2b22a6a45
-
- 03 Oct, 2017 4 commits
-
-
Hui Su authored
The _ind and _inv mapping tables are not necessary. The CDF tables are updated with new values converted from the old tables. Performance impact is small and neutral. Change-Id: I65845ab3c80f88794abd9ab9e61494af56099c7c
-
David Barker authored
Patch https://aomedia-review.googlesource.com/c/21783 changed things so that error-resilient frames use the default global motion parameters as a reference, rather than taking the reference from the previous frame. This was implemented by clearing out cm->prev_frame->global_motion when we have an error-resilient frame. Unfortunately, this causes an issue: if we have an error resilient frame which isn't stored into any reference slots, followed by a non-error-resilient frame, then both frames refer to the same prev_frame. The second frame then delta-codes against cm->prev_frame->global_motion, but this was reset to the default values by the intervening error-resilient frame! In order to allow the above case to work as intended, expand the default warp parameter set to a full WarpedMotionParams struct, and use that as the reference for error-resilient frames. This also allows us to remove set_default_warp_params, as we can now just copy directly from default_warp_params. Change-Id: I9645615db2700c1d3810e6e42f4f1da626fcd5e3
-
David Barker authored
These two flags serve essentially the same purpose, so we can simplify down to just having one flag. Since the frame_id_numbers_present_flag is older and listed in the reference-buffer design doc, this is the one we'll keep. Note that, previously, frame_id_numbers_present_flag was only sent when CONFIG_OBU was enabled - otherwise it was always set to 1. On the other hand, use_reference_buffer was always signalled so that allowed us to disable frame ids even without CONFIG_OBU. In order to keep the ability to disable frame IDs without CONFIG_OBU, we send a "real" sequence header (ie, with the same data as in CONFIG_OBU) in-line within the uncompressed header. This is sent every keyframe and every intra-only frame, just as the use_reference_buffer flag was before this patch. BUG=aomedia:853 Change-Id: I4bb6c7a222aeddfb6d3737a39d10782d32ee2eee
-
Cheng Chen authored
Before LOOPFILTER_LEVEL, there's one filter level, now we have four filter levels for y plane vertical, y plane horizontal, u plane and v plane. This patch enables experiment LOOPFILTER_LEVEL to support per superblock loop filter level update. Change-Id: Ib11a1564471eb3076c26e73e5cdf7b5a3045ef97
-
- 02 Oct, 2017 2 commits
-
-
Sebastien Alaiwan authored
This experiment has been adopted, we can simplify the code by dropping the associated preprocessor conditionals. Change-Id: Ic077963f72e8cc2ae9872b58c8a0241988384110
-
Pavel Frolov authored
BUG=aomedia:851 Change-Id: Ib188f4b640a58c47147cda977a589e527f765a54
-
- 30 Sep, 2017 1 commit
-
-
Rupert Swarbrick authored
This hides behind --enable-ext_partition_types_ab. When that flag is set, the mixed partitions change from +-+-+---+ +-+-+---+ | | | | | | | |---+ | to | | | | | | | | | | | +-+-+---+ +-+-+---+ (that's PARTITION_VERT_A; other partitions change similarly). Since 128x32 and 32x128 block support hasn't yet been merged, this patch also temporarily disables these partitions for 128x128 blocks. Change-Id: Ic479c0fc129f590b8ad56d72dc98ba79ae1bd1cf
-
- 29 Sep, 2017 4 commits
-
-
Jingning Han authored
Move functions related to frame index in natural order setup into a root experiment. Change-Id: Iebc71514b951dbb658cf0e1c3d42bb2b180d830f
-
Rupert Swarbrick authored
Change-Id: Ieb28f40d85e4db4af33648c32c406dd2931ceb89
-
Thomas Davies authored
Change-Id: I52f204000f5fdaf1c6fff63949d72e858ceea462
-
Debargha Mukherjee authored
Allows saving bits when reference buffer is not to be used in cases where error resilience is unimportant. Change-Id: I2ef002a7cce96a158e1e58c2b00f0a6846049fff
-
- 28 Sep, 2017 3 commits
-
-
Rupert Swarbrick authored
With ext-partition and tx64x64 enabled, the encoder could choose TX_64X64 to encode the transform for a subsampled plane of a BLOCK_128X128 block. This broke an assumption in the nested loop in write_tokens_b and also caused bug 827 (with a rather cryptic failure). This patch changes get_vartx_max_txsize to ensure that the encoder and decoder don't think they can use TX_64X64 in this situation. It also adds a couple of assertions to the loop mentioned above so that if something comes unstuck it'll be much more obvious what went wrong. BUG=aomedia:827 Change-Id: Ie093f2f20f6242949d68e950c8f95b100867ee17
-
Thomas Daede authored
Although they are called "sync codes", nothing is synchronized using them. Change-Id: I2dbd67daf9f4822438323212bb96cac489c38c5d
-
Thomas Davies authored
CDFs are used for coding and costs, so there is no need to base the CDF on the obsolete tree and remap filter indices. No change to common test conditions BDR. Change-Id: I441dd21b127bc07ba33eef8ddcfd147eef21d0d4
-
- 27 Sep, 2017 2 commits
-
-
Dominic Symes authored
This patch is designed to complete the CONFIG_MAX_TILE experiment. It adds the following features: - Explicit tiles of same width can be signalled with command line --tile_width - Explicit tiles of same hieght can be signalled with command line --tile_height - max_tile now works with the depenedent horizontal tiles experiment - additional checking added to ensure maximum number of rows/columns <= 64 - one fix to the tile group code for when the number of tiles is not a power of two Change-Id: I749a68fdb3dcdd8d1ced2b3558f3817e4b832c06
-
Cheng Chen authored
Set filter step = 2, such that 3 bit can represent [-14, +14] filter level difference. Tune threshold for reusing filter level between previous and current superblock. Change-Id: I6f26377591f3e93f7c068e4aa4279ae9bc2c9522
-
- 26 Sep, 2017 4 commits
-
-
Yushin Cho authored
PVQ has been broken again since the experiment flag for palette is removed in commit c6300aa1. As a fix, if PVQ is enabled then disable both of --tune-content=screen and automatic detection of screen and use of palette coding tool. Change-Id: Iea6bb042b4402163805c44dabfb3f4c05dfd4e23
-
Thomas Davies authored
rem_bits-1 not rem_bits should be transmitted so that 2 cannot be coded in two ways. BUG=aomedia:811 Change-Id: Iaa0203214bbe6fc6775e05fe4b6e976d568f54b3
-
Cheng Chen authored
Signal one bit to indicate whether current superblock reuses filter level of previous superblock. Try filtering and compute sse using previous filter level and search the best possible filter level. If their diff is less than predefined threshold, current superblock reuses previous level. Otherwise, signal the best filter level. Change-Id: Ibf125860883b774ef2464b62bb8b799b48258c64
-
Debargha Mukherjee authored
The compressed header is now used only when the refresh type is set as forward, i.e. in error resilience and frame parallel modes. As long as backward updates are used the header is disabled thereby saving bits. Change-Id: Iee9f66ffbd30ef3552ea41b75e4b51537cd9ff97
-
- 23 Sep, 2017 3 commits
-
-
Debargha Mukherjee authored
Change-Id: I3d6a440b13473b0d1e8b18c6629c7e8e3fb446ae
-
Debargha Mukherjee authored
This patch moves the sb_size to the keyframe header from all frame headers as discussed in the AOM Codec WG meeting. Change-Id: Ia0190e57b36b98e51ab61ad4ff14f24f9c294877
-
Cheng Chen authored
For the first superblock, signal a filter level (6 bit). For other superblocks, signal the delta (3 bit) and sign (1 bit). To guarantee the delta can be represented by 3 bits, the search range of current superblock filter level is capped as curr_lvl = prev_lvl +- ((1 << 3) - 1) Change-Id: Ibbe2941aa96ec1220ed2adb7edf3d29cb032f0ec
-
- 22 Sep, 2017 2 commits
-
-
Hui Su authored
It's not being used anymore, replaced by the CDF model. The counters are moved under the entropy-stats experiment, so that they can be used to tune the default CDF values. Change-Id: I50cb170c4c8699cf7317fd77853b3fedf2342d3e
-
Hui Su authored
Use common structure for inter and intra tx type information when possible. Change-Id: I1fd3bc86033871ffbcc2b496a31dca00b7d64b31
-
- 20 Sep, 2017 3 commits
-
-
Cheng Chen authored
Search and pick filter level for each superblock after the entire frame has been encoded. And then apply loop filtering using selected filter levels. Now it can't work with LOOPFILTER_LEVEL. Y, U, V planes share the same filter level. Per superblock, filter levels are signaled via bitstream. Future work: move selecting filter level into each superblock rather than wait for the whole frame encoded. Change-Id: I46cb994ec4866abb0456146f7c3cae8813c1d52e
-
Soo-Chul Han authored
Change-Id: I78bb38e3d61d74442278bd5ed1c4f695b7c8e24a
-
Dominic Symes authored
This adds the tool CONFIG_MAX_TILE Uniform tiles are implemented using power of two number of rows or columns. Maximum number of rows or columns is 64 Explicit tiles will follow in a later commit once the command line API is updated for this Change-Id: Ia8d22e7f4aa779448211496c644937afdf037228
-
- 19 Sep, 2017 1 commit
-
-
RogerZhou authored
Change-Id: Ic3c93a5d2e427ce1ed578389196a265245063821
-
- 18 Sep, 2017 1 commit
-
-
Thomas Davies authored
Change-Id: Ic29bac4cd00a009e4a5a607ecc5596fa53bb1c1f
-
- 16 Sep, 2017 1 commit
-
-
Hui Su authored
Improves keyframe coding by 0.1% on the screen_content testset. Change-Id: I5793a67eaae21010ef200038af99ebb9029fc770
-
- 15 Sep, 2017 1 commit
-
-
Yi Luo authored
Change-Id: I9b92caa9d65a3b062762c270c89018c8e08eba0f
-