- 17 Nov, 2017 2 commits
-
-
Hui Su authored
Change-Id: Ifa2cdc2d2230dfa11396ee3e547653180f96b795
-
Jingning Han authored
Allow the codec to time the average transform block coefficient processing for sw speed check. Change-Id: Ibdaf15ab5b7f1ea8264604cc00ef45e3ae3114c7
-
- 15 Nov, 2017 4 commits
-
-
Frederic Barbier authored
This experiment has been adopted, we can simplify the code by dropping the associated preprocessor conditionals. Change-Id: I6ac62c2825eabcba8f854cfa25c84638d9a73872
-
Sebastien Alaiwan authored
This experiment has been abandonned for AV1. Change-Id: I3501181d096873dec35ea58e4b55530fa76e683f
-
Debargha Mukherjee authored
Remove the previous experiment and now use the same name for a simpler experiment that only enables 4:1 transforms for 4:1 partitions when ext_partition_types is on, and that which was previously enabled with the USE_RECT_TX_EXT macro. Change-Id: Iccc35744bd292abf3c187da6f23b787692d50296
-
Yaowu Xu authored
This commit adds support of a separate qmatrix and iqmatrix for each of the U and V planes. Currently the separate matrices are intialized to the same ones, then the commit does not have any coding impact yet. Change-Id: I5c4045fe1879db262c6ec1567d8d7dfd9a98fbed
-
- 14 Nov, 2017 4 commits
-
-
Rupert Swarbrick authored
This is still a rather inefficient black+white encoder, since it carefully computes some chroma data, but just doesn't write it. However, at least the bitstream is now monochrome. Change-Id: Ie8a89bf329e7b41441032fb0d9e9011385bc12ff
-
Rupert Swarbrick authored
No change to the code, but these #if !CONFIG_NEW_MULTISYMBOL lines are all in the #else part of an #if CONFIG_NEW_MULTISYMBOL... Change-Id: Ibf11b1f0711113d9ee52927dcaf243d74e3f9d28
-
Rostislav Pehlivanov authored
Otherwise the previous value ended up being used, creating a desync. Change-Id: I42d466474ce1a2567045720b8dfd413625f21cfa
-
Yue Chen authored
Change-Id: I96e5ff72caee8935efb7535afa3a534175bc425c
-
- 13 Nov, 2017 2 commits
-
-
Sebastien Alaiwan authored
This experiment has been abandonned for AV1. Change-Id: I07be0876b21ee20a1eb2490bb98e4f84978ff001
-
Hui Su authored
Make it work with NO_FRAME_CONTEXT_SIGNALING. Change-Id: I27813305c68de7042678706c1c9b938b172c3666
-
- 11 Nov, 2017 1 commit
-
-
Frederic Barbier authored
This experiment has been adopted, we can simplify the code by dropping the associated preprocessor conditionals. Change-Id: I17bd46ebad7796d04fb4065fb36da0e1c4eeaf9b
-
- 10 Nov, 2017 5 commits
-
-
Hui Su authored
Change-Id: Ia47101de22091a60d7931890f00a4a3a527f5bd4
-
Rupert Swarbrick authored
This bit appears in the sequence header. At the moment, it does nothing, but it will mean that we don't encode (or read) chroma planes. This patch adds the flag to the sequence header, and also adds an encoder option (--monochrome) which enables it. At the moment, this doesn't do anything except cause the bit to be set correctly in the header. Change-Id: If5598412c1c75101553d7f8f9098f9ed1163514e
-
Yaowu Xu authored
This commit adds code to support separate regular quantization for U and V. They currently always use same quantization parameter, hence this commit does not change bitstream at all. Change-Id: Ifaf43e4fd0bcd01b1483f2dacf3ac498003d5db1
-
Yaowu Xu authored
When striped_loop_restoration is not enabled. Change-Id: If681adab344226d54947d3b35aa5d9aace9df991
-
Yunqing Wang authored
While large_scale_tile = 1, no backward CDF update happens during encoding. So, no need to update frame contexts at end of frame encoding. Change-Id: I2267b1e58d400768ba1ef95b339001b420e84c4b
-
- 09 Nov, 2017 5 commits
-
-
Yunqing Wang authored
In EXT_TILE experiment, disabled adapt_scan when large_scale_tile = 1. Change-Id: If3b20d5fe3a6674aefba3e37b2458137ca7918ff
-
Hui Su authored
Change-Id: If8a4f3d256e619c9efdb66b1d8b8da5b8fc980ab
-
Rostislav Pehlivanov authored
This experiment implements low-cost delta q signalling on a per-block basis for all non-inter frame types, which would allow for more efficient AQ which bases its decisions on temporal information. Based on an Intel proposal from March. Change-Id: I18e73d8b12f4caa0b165df12c58ab506271bec03
-
Yaowu Xu authored
BUG=aomedia:1014 Change-Id: I8846432861e9859a00f702407a82d4223c093fe2
-
Monty Montgomery authored
Generalize quantizer setup so that quantization and TX can use different coefficient shifts/scalings without inpacting RDO lambda generation. This patch is documentaiton + a minor refactor setting up later work; it causes no functional change. monty-daalaTX-fulltest-Daalabaseline-o1f@2017-11-07T00:01:20.779Z -> monty-daalaTX-fulltest-DaalaRDO-o1f@2017-11-07T00:02:31.347Z PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 N/A | 0.0000 | 0.0000 | N/A | N/A | N/A | N/A (note-- the numbers above were collected using --cpu-used=3, which appears to be newly broken.) monty-daalaTX-fulltest-Daalabaseline-o1f4@2017-11-07T05:59:16.553Z -> monty-daalaTX-fulltest-DaalaRDO-o1f4@2017-11-07T05:59:50.180Z PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 monty-daalaTX-fulltest-Daalabaseline-s1@2017-11-07T00:01:46.582Z -> monty-daalaTX-fulltest-DaalaRDO-s1@2017-11-07T00:02:56.282Z PSNR | PSNR Cb | PSNR Cr | PSNR HVS | SSIM | MS SSIM | CIEDE 2000 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 Change-Id: Ia5a3c052eacd17184ca1b0fe6d032cfb9afdb77f
-
- 08 Nov, 2017 3 commits
-
-
Arild Fuldseth (arilfuld) authored
Encoder: Use oxcf->width/heigth instead of cm->width/height in sequence header. aom_internal_error() if cm->width/height is larger than max values. Decoder: aom_internal_error() if cm->width/height is larger than max values. Change-Id: I8d8b415efe82d961dbe34377f4da79379cb111a8
-
Zoe Liu authored
Always assume ONE_SIDED_COMPOUND is true as it has been adopted officially. Further, this patch also fixes the cmake setup for the experiment of EXT_COMP_REFS, as when EXT_COMP_REFS is on, it shall always have ONE_SIDED_COMPOUND on (but that was not the case without this patch). We leave EXT_COMP_REFS for the time being, even though it is also adopted, since by keeping this flag, it may allow its turning off to tune the encoder speed. The experiment of EXT_COMP_REFS should be removed eventually at the closing of the bitstream. Change-Id: I0644318e522f5b48d5bba4e4391104a24d43cdc3
-
Yaowu Xu authored
This reverts commit ab8bb8b8. The reverted breaks many nightly run tests, reverting this temporarily to allow nightly tests to detect other failures. Once the issues are fixed, we can reenable the change in the reverted commit. BUG=aomedia:1012 BUG=aomedia:1013 BUG=aomedia:1014 Change-Id: I2503fe78e47c7a08bb6cfdfff2c295cec0b6497d
-
- 07 Nov, 2017 5 commits
-
-
Rupert Swarbrick authored
This seems a little cleaner than having the loop open coded in four places. Change-Id: I2ce7be2745ba3575f618d9e261ab767d10f551f7
-
Rupert Swarbrick authored
Teach read_sequence_header_obu and write_sequence_header_obu to just call read_sequence_header and write_sequence_header, respectively. Change-Id: Iff27b5cfbccab0ebaf2e28d72df3d6606964936f
-
Rupert Swarbrick authored
It was mixing uint32_t and size_t, which isn't correct on a 64-bit system and causes compilation warnings. Change-Id: I3677c02cb366d60175e762ec4249d2445ee729de
-
Rupert Swarbrick authored
Also, factor out some long constants to avoid line wrapping. BUG=aomedia:1009 Change-Id: I7850c27d22ef8b927c3554f1083bc7bdf2c7c6b3
-
Rupert Swarbrick authored
As of patch https://aomedia-review.googlesource.com/c/aom/+/28821 , loop-restoration units cannot cross tile borders. But the context around each processing unit was still allowed to cross tile borders. This is fine in the usual case - but, when loop filtering across tiles is switched off, we're supposed to be able to decode each tile completely independently (each tile column, if dependent-horztiles is on). Roughly, the change we need to make is: When loop filtering across tiles is switched off, we treat each tile as if it were a full frame, and extend the CDEF output for that tile to form a 3-pixel border around the tile. We only use deblocked above/below pixels for processing unit boundaries which lie inside a tile. In terms of the code, this is implemented in two parts. This only applies when the loop_filter_across_tiles_flag is false; otherwise, we keep the old behaviour. * For processing units at the top edge of a tile, fill the above context with copies of the topmost line of CDEF output *from the same tile*, rather than using deblocked pixels from the tile above. The below context of processing units at the bottom edge of a tile is treated analogously. * When setting up the boundary for a processing stripe at the left edge of a tile, fill the stripe's left boundary with copies of the leftmost column of CDEF output from the same tile. Again, processing stripes at the right edge of a tile are treated analogously. Similarly to the above/below boundaries, we store the overwritten pixels into a pair of left/right context buffers, and restore them to their original values once we've dealt with that processing stripe. Change-Id: I53a0932793c1c56dc037683c6a4353a3f5dc4539
-
- 06 Nov, 2017 4 commits
-
-
Yushin Cho authored
Remove the option of raw data or delta when coding the segment data, then only use delta coding. Raw data coding of segment data has been nowhere used but the option of "raw or delta codig of seg_data" has been coded to a bitstream. Change-Id: Iaf8f21692452d0c9a127b958812c6151d3c5db05
-
Sebastien Alaiwan authored
When needed, fallback regular interp filter at reconstruction stage. Such bitstreams are valid. However, as we don't expect aomenc to generate them, print a helper warning. Change-Id: I7e818cf607d7d6f71df4ca7878d8976fb88c3282
-
Rupert Swarbrick authored
When upscaling a frame, we extend frame borders to stop the upscale to save boundary lines convolving with uninitialised data off the edges, which was causing encode/decode mismatches. With this patch, we only do the extension when there's going to be an upscale (otherwise there's no need), which should give a small coding gain when not upscaling. More importantly, it forces us to extend in the decode path whether or not we are using loop restoration, which matches what the encoder does and fixes a mismatch. Change-Id: Ie5a0791b0cbedbf254f9080f3cbf668318673f2f
-
Dominic Symes authored
max_tile was provisionally adopted at the working group meeting 2017-Oct-10 This patch also enables support for 64x64 and 128x128 superblock size for max tile (rather than assuming 128). There is also one fix for max_tile in combination of loop restoration where the width/height was in the wrong units for max-tile specific code. Change-Id: Icb862a2738fea5fc6215819396e1afa4eb86e461
-
- 05 Nov, 2017 1 commit
-
-
Sebastien Alaiwan authored
This experiment has been abandonned for AV1. Change-Id: I18cf1354df928a0614a1e58b718cd96ee7999925
-
- 04 Nov, 2017 3 commits
-
-
Yue Chen authored
Development of this experiment will be deferred to AV2. Change-Id: I3c4615a21b59508500bed8aab0a5c54413b4f284
-
Jingning Han authored
The control of using reference frame motion vector is a separate factor from the existence of previous frame motion vectors. This commit decouples these two, such that the encoder can control the use of reference motion vector. When it is used, one can further identify if the previous frame exists or not, then to decide if need to force use_prev_frame_mvs to be zero. This solves the issue where the previous frame mvs is set to be 0 and it accidentally shuts off the access to all other existing referece frames mvs in the mfmv system. It brings back the coding performance gains to normal. Change-Id: I2531f73e55582a9bb5b3e0ff47e361a199ec8082
-
Debargha Mukherjee authored
Adds a new experiment to simplify the tx_mode symbol. The existing frame level tx_mode information is converted to a single bit to select between largest tx_size for a prediction unit or specified at the block level. The less useful modes: ALLOW_8X8, ALLOW_16X16, etc. are removed. Change-Id: Ib9358e17b0158a167eb4edef79f36ff113aa56e1
-
- 03 Nov, 2017 1 commit
-
-
Yunqing Wang authored
Added the function of allowing to disable the probability update while needed. This would be needed while encoding in multiple tiles, and enabling/disabling probability update can be set separately for every individual tile. Change-Id: Ic3c64e6cebac89c483d48b874761bd2e902d81e6
-