- 07 Apr, 2017 1 commit
-
-
Debargha Mukherjee authored
Minor refactoring to force only Wiener or Sgrproj to be used for luma. Change-Id: I81d6f5dbf0fbc07252b9c57b43a035b90c5699af
-
- 14 Mar, 2017 1 commit
-
-
Debargha Mukherjee authored
For testing contribution from Wiener only. Change-Id: I54fb5051dd03543d5166391a9b3b60b8d80c8228
-
- 10 Mar, 2017 2 commits
-
-
David Barker authored
Change-Id: Ibe5d4933f599456cb496f636de244694bc786a4c
-
Debargha Mukherjee authored
Adds an option controlled by a macro to replace one of the guided filters in the self-guided tool with a simple bandpass filtered version generated with a 3x3 kernel. By default the macro USE_HIGHPASS_IN_SGRPROJ is 0 (turned off), that defaults us to the dual self-guided filter. When the macro is turned on, the larger radius guided filter is replaced by a simpler filter that is much faster. Results (if USE_HIGHPASS_IN_SGRPROJ is on vs. off): lowres: performance drop by +0.14% (BDRATE) midres: performance drop by +0.27% (BDRATE) Further experiments on this variation of guided filters is pending. Change-Id: I7bbcfcad7ee266cd49a8dc6d96795a454feb1a94
-
- 09 Mar, 2017 3 commits
-
-
David Barker authored
Performance is very similar to the lowbd path (only 4-5% slower) Change-Id: Ifdb272c3f6c0e6f41e7046cc49497c72b5a796d9
-
Debargha Mukherjee authored
Removes domain transform recursive filters and non-approximate guided filter code. Change-Id: Ib7ae7a6b6526a0908b3dc1787ab3561442da4e2d
-
Debargha Mukherjee authored
The restoration tilesize can be now chosen as either 256, 128 or 64 at the frame header. Change-Id: I852fc42afedc053484d657bdca522de73aaacd67
-
- 08 Mar, 2017 1 commit
-
-
David Barker authored
By rearranging the code in restoration.c, we can allow the encoder to use the SSE4.1 version of the self-guided filter while picking the loop-restoration filter. This also helps us prepare for adding a highbitdepth SSE4.1 version of the self-guided filter. No effect on encoder output, but gives an end-to-end speedup of 1-2%. Change-Id: Id17ba4a0963ddce9f70a7cae666e212e138d5f2c
-
- 06 Mar, 2017 2 commits
-
-
David Barker authored
Add an SSE4.1 lowbd version of the self-guided filter for loop-restoration, and apply some optimizations to the C version. Approximate times per 128x128 / 256x256 tile on the machine this was developed on: Previous C: 620us / 2800us Optimized C: 500us / 2200us ( 24% / 27% faster) SSE4.1: 147us / 600us (320% / 370% faster) Change-Id: I23ff5a5482a191aeb06f9d1f767a9f036bb357fe
-
Debargha Mukherjee authored
Removes redundant deblocking filtering operations and buffer copies, during search for the restoration filters. Also, makes the order of cdef and loop-restoration consistent. BUG=AOMEDIA:373 Change-Id: I571e331f9dfadfd2c1494f279e50510ec212ea29
-
- 14 Feb, 2017 1 commit
-
-
Debargha Mukherjee authored
Allows DomainTxfm filters to be turned off for experimentation. Also expands the parameter set for the Self guided filters. Change-Id: I68fdb8e079a2464d80b3a4a990005c49baaaf0b8
-
- 13 Feb, 2017 1 commit
-
-
Tom Finegan authored
Change-Id: I1bf9002c159563d0e5238b26d1515ef305d416dc
-
- 19 Jan, 2017 1 commit
-
-
David Barker authored
* Change Wiener filter storage to match the format expected by the convolve functions Change-Id: I4d1fb08a13cfc31e69e12c1cb4b2e510c6d8ae30
-
- 18 Jan, 2017 1 commit
-
-
David Barker authored
Change-Id: I0d9850e082b8da3b182a3bbaf6569c45317c9659
-
- 09 Jan, 2017 2 commits
-
-
Debargha Mukherjee authored
Slight improvement in midres and hdres sets of 0.02% and 0.0.9% respectively. This is also a better design anyways. Change-Id: I15b60b8836070a2132641e5b1d8e9f68df426c08
-
Debargha Mukherjee authored
Change-Id: I56e741551f74624a84250d7565520db9c5127d1b
-
- 07 Jan, 2017 2 commits
-
-
David Barker authored
* Change the behaviour of search_wiener at borders to match the behaviour of the Wiener filter itself * Reorder the calculation in compute_stats, saving ~5% of encode time at low bitrates (tested on bus_cif.y4m at 200kbps) Change-Id: I5f649d77fd66584451aaf37697ce9c9af69524e4
-
Debargha Mukherjee authored
Change-Id: Icfc4645ff97d4fd6849f149f4c5296a53c204cf4
-
- 06 Jan, 2017 1 commit
-
-
Debargha Mukherjee authored
Enables Wiener based loop restoration only for the UV frames. The selfguided and domaintranform filters do not work very well for UV components, hence they are disabled. For each UV frame a single set of wiener parameters are sent. They are applied tile-wise, but all tiles use the same parameters. BDRATE (Global PSNR) results: ----------------------------- lowres: -1.266% (up from -0.666%, good improvement) midres: -1.815% (up from -1.792%, tiny improvement) Tiling on UV components will be explored subsequently. Change-Id: Ib5be93121c4e88e05edf3c36c46488df3cfcd1e2
-
- 04 Jan, 2017 1 commit
-
-
David Barker authored
* Remove some unused variables * Reduce need for casts by typing intermediate buffers appropriately * Avoid copying data which is never modified; use the original data instead. * Reduce number of intermediate buffers required, saving allocations of 576KiB in the decoder and ~1MiB in the encoder No effect on performance Change-Id: I55243904dd8e818fb6d43fa431903736475d23ff
-
- 16 Dec, 2016 2 commits
-
-
Debargha Mukherjee authored
Change-Id: I4c4300f3f565d8aecf65669b77aaa874bb73a3a0
-
Debargha Mukherjee authored
Also includes some minor renaming of macros. Change-Id: I9493cc97c6ec9c8dae8020a05a02d6f322db9a02
-
- 15 Dec, 2016 2 commits
-
-
Debargha Mukherjee authored
Includes: Some cleanups/refactoring Better buffer management. Some preps for future chrominance restoration. Change-Id: Ia264b8989b5f4a53c0764ed3e8258ddc212723fc
-
Yaowu Xu authored
This commit moves a number of large buffers from stack to heap to fix crashes due to stack overflow. Change-Id: I9d1592e4f6dbfa18a475d0fc5674f6d3632f39ed
-
- 14 Dec, 2016 1 commit
-
-
David Barker authored
This is intended to simplify hardware and multithreaded implementations. Change-Id: I6aa95b67c03b794a0f3d5cf2f65c576d05f2ca7d
-
- 12 Dec, 2016 1 commit
-
-
Debargha Mukherjee authored
The main objective is to reduce computational complexity. The domain transform filter has an effect of edge preserving smoothing at a lower computational cost than the bilateral filter, and can be readily paralelized. A little drop in coding efficiency about 0.06% for lowres, 0.16% for midres. Change-Id: Id949406b7e5afe9b64588d130065c63a76e4f3f9
-
- 06 Dec, 2016 1 commit
-
-
Debargha Mukherjee authored
This filter is meant to replace the bilateral filter, but is currently added in addition to the bilateral filter for testing. Change-Id: Ia529701e69833d47c11b3367d5bf804eb8498079
-
- 29 Nov, 2016 1 commit
-
-
Yaowu Xu authored
Change-Id: I82580120a154ecd7c41f4cd9bc0f8c669fca7774
-
- 10 Nov, 2016 1 commit
-
-
Debargha Mukherjee authored
BDRATE: lowres: -1.01% (up from -0.7%) midres: -1.90% (up from -1.5%) hdres: -2.11% (up from ~1.7%) Change-Id: I1fe04ec9ef90ccc4cc990e09cd45eea82c752e0c
-
- 19 Oct, 2016 1 commit
-
-
Urvang Joshi authored
From code only part of nextgenv2 (and not aomedia) Change-Id: I21f7478a59d525dff23747efe5238ded16b743d2
-
- 21 Sep, 2016 1 commit
-
-
Debargha Mukherjee authored
Streamilines the functions and data structures to make it easy to add new restore options. Change-Id: Ib00638a5749e6c38c2455f3e3142b1025e6e0624
-
- 17 Sep, 2016 1 commit
-
-
Debargha Mukherjee authored
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
-
- 01 Sep, 2016 2 commits
-
-
Yaowu Xu authored
Cherry-Picked the following commits: 0defd8f2 Changed "WebM" to "AOMedia" & "webm" to "aomedia" 54e66767 Replace "VPx" by "AVx" 5082a369 Change "Vpx" to "Avx" 7df44f17 Replace "Vp9" w/ "Av1" 967f722f Remove kVp9CodecId 828f30ce Change "Vp8" to "AOM" 030b5ffc AUTHORS regenerated 2524caee Add ref-mv experimental flag 016762be Change copyright notice to AOMedia form 81e55269 Replace vp9 w/ av1 9b94565b Add missing files fa8ca9f2 Change "vp9" to "av1" ec838b76 Convert "vp8" to "aom" 80edfa01 Change "VP9" to "AV1" d1a11fb9 Change "vp8" to "aom" 7b582513 Point to WebM test data dd1a5c8d Replace "VP8" with "AOM" ff00fc0f Change "VPX" to "AOM" 01dee0bb Change "vp10" to "av1" in source code cebe6f0c Convert "vpx" to "aom" 17b05679 rename vp10*.mk to av1_*.mk fe5f8a8a rename files vp10_* to av1_* Change-Id: I6fc3d18eb11fc171e46140c836ad5339cf6c9419
-
- 29 Aug, 2016 1 commit
-
-
Aamir Anis authored
Frame can be split into rectangular tiles for application of separate bilateral or Wiener filters per tile. Some variable names changed for better readability. Change-Id: I13ebc4d0b0baf368e524db5ce276f03ed76af9c8
-
- 25 Aug, 2016 1 commit
-
-
Sarah Parker authored
Change-Id: Ie1416569e73e66518cdb2765d79a2fb3dd570489
-
- 12 Aug, 2016 1 commit
-
-
Change-Id: I58a42ced5b8a4338524434ff3356850b89aa705a
-
- 12 Jul, 2016 1 commit
-
-
Aamir Anis authored
Fixed best error reported by loop filter selection, this value is used during loop restoration to pick best mode. Baseline remains unchanged, change in BDRate for loop restoration experiment: -0.628 -> -0.625 for lowres, -1.262 -> -1.283 for highres. Change-Id: I69ef1608bc232b250ac46f59e31fdbed1a999dcd
-
- 07 Jul, 2016 1 commit
-
-
Debargha Mukherjee authored
Change-Id: I8dbc1002f5d6bf8f2409db8c6be4346f1df0590c
-
- 14 Jun, 2016 1 commit
-
-
Geza Lore authored
The speed feature sf->lpf_picl == LPF_PICK_MINIMAL_LPF is used to disable loop filtering. This did not work with the loop-restoration experiment, but now it is respected. Note that this speed feature is only used in real-time cpu-used >= 8 settings. Change-Id: I193723c9ac5f802ec31d8c8b4d37650796e065fd
-