Jean-Marc Valin
e254241ce7
Introducing OD_DERING_SIZE_LOG2 constant (3)
...
Also cleans up the size of the deringing destination buffer.
No change in output.
Change-Id: I7fc50d862d3906ce809c1031bf0789acdf39cf34
2016-11-02 15:51:00 -07:00
Jean-Marc Valin
58fdec2cbf
Renaming deringing blockwise write-back functions to make code clearer
...
No change in output.
Change-Id: Ifa5df3adce9f24ef6dcd89a5f33a744bfb57194d
2016-11-02 15:51:00 -07:00
Jean-Marc Valin
3544d15130
Deringing refactoring: replace last_sbc with simpler dering_left flag
...
No change in output.
Change-Id: I1cc2e14b2bb6c343baa7f88348c875085e5863af
2016-11-02 15:51:00 -07:00
Jean-Marc Valin
39ee109333
Getting rid of the od_dering_in type
...
We no longer need the deringing code to be generic wrt the input depth.
No change in output.
Change-Id: I2db2beb82f1816e611cd2c0438dff217d363de33
2016-11-02 15:51:00 -07:00
Jean-Marc Valin
e04650347c
Refactoring deringed block list code
...
Using a struct named dlist rather than an array named bskip. Simplified some
code.
No change in output
Change-Id: Id40d40b19b5d8f2ebafe347590fa1bb8cb80e6e1
2016-11-02 15:51:00 -07:00
Jean-Marc Valin
01b7780154
Deringing line buffer no longer depends on holding OD_DERING_VERY_LARGE
...
The OD_DERING_VERY_LARGE values are now explicitly copied to the buffer instead
of being read from the line buffer when we're on the edge of the frame. This
will make it possible to make the line buffer 8-bit for non-high-bitdepth.
No change in output
Change-Id: I1a4134d67ac7f8c239f08d73941405c56f01050b
2016-11-02 15:51:00 -07:00
Jean-Marc Valin
d95322a35c
Now using a single line buffer
...
No change in output.
Change-Id: I4701a5517fb97889f970acfb0b44cee51c34fd95
2016-11-02 22:50:10 +00:00
Jean-Marc Valin
621e707259
Only copy data from deringed blocks to the line buffer
...
No change in output
Change-Id: I6ec4a8c635337562170153585e427afd6f9d9a0f
2016-11-02 22:49:54 +00:00
Jean-Marc Valin
50bb32ec87
Splitting out 8->16 block copy code into copy_sb8_16()
...
No change in output.
Change-Id: I4f0e37a879432e2647b3debe6a2c0c670a79dd6f
2016-11-02 22:49:39 +00:00
Jean-Marc Valin
39b0d2fb14
Eliminate the big superblock row buffer.
...
Now only buffering three lines across the entire frame and four lines
over the height of one superblock.
No change in output.
Change-Id: I6b99399974e197dc02f2e4ff2e60cdd7fdaa2e43
2016-11-02 22:48:47 +00:00
Jean-Marc Valin
b154a24283
Making deringing buffer only one row of superblocks at a time
...
This introduces a line buffer that hold the last three lines of each original
row so that the next row can be deringed with the original input of the upper
row.
No change in output
Change-Id: I8fad3bc48745e9ce3e440289f453477a0c5442c0
2016-11-02 22:48:19 +00:00
Jean-Marc Valin
ca1eb5dc58
Duplicating deringing input superblock copy to make upcoming changes easier
...
No change in output
Change-Id: Iaa06043dcc31308c83f667424e5a83c2db50ed24
2016-11-02 22:46:53 +00:00
Jean-Marc Valin
8e941780be
Using a uniform definition for "bsize" in deringing filter
...
No change in output
Change-Id: Ia3a1679aa75cb58f4bc6459791e061176eeafd52
2016-11-02 22:46:27 +00:00
Jean-Marc Valin
eab77ea936
Using the copied input for od_dir_find8()
...
No change in output
Change-Id: Iec1411c35bf175a462eade34e89a4c60eb2a1da4
2016-11-02 15:41:01 -07:00
Yaowu Xu
6285c6674d
Merge "Increase deringing horizontal padding to 4 pixels on each side" into nextgenv2
2016-11-02 22:37:39 +00:00
Jean-Marc Valin
471687a9ac
Increase deringing horizontal padding to 4 pixels on each side
...
This makes vectorization easier by having buffer lines be a multiple of 4.
No change in output
Change-Id: I7ec06e03a49554206af0a55aab03daccc411b50f
2016-11-02 22:37:35 +00:00
Yaowu Xu
4cb9a620db
Merge "De-sparsifying the deringing output buffer" into nextgenv2
2016-11-02 22:35:05 +00:00
Jean-Marc Valin
82c65fc837
De-sparsifying the deringing output buffer
...
No change in output
Change-Id: I940203975564aedca8734d6f74b013edb513f517
2016-11-02 22:35:00 +00:00
Yaowu Xu
44f3587459
Merge "No need to store the deringing filter direction variance in an array" into nextgenv2
2016-11-02 22:34:46 +00:00
Jingning Han
c104b8f269
Merge "Support rectangular tx_size in the common lib" into nextgenv2
2016-11-02 21:49:41 +00:00
Jingning Han
a834925778
Merge "Make highbd rectangular transform block available in the common lib" into nextgenv2
2016-11-02 21:49:07 +00:00
Jean-Marc Valin
643902d621
No need to store the deringing filter direction variance in an array
...
No change in output
Change-Id: Ifa5c5d4ed33ff11ea3c56ee5d559c7a40599b3dc
2016-11-02 13:15:42 -07:00
Sarah Parker
fcb2ca6eda
Merge "Fix ubsan left shift warnings in warped motion library" into nextgenv2
2016-11-02 19:45:45 +00:00
Jingning Han
9fe31390ca
Support rectangular tx_size in the common lib
...
Change-Id: I4128ab932a967a3d657bb1f95f0fa2af20a06469
2016-11-02 11:48:31 -07:00
Jingning Han
5238e6eaee
Make highbd rectangular transform block available in the common lib
...
Change-Id: Ief08b23b30b78d640f6d7c702145e5bcf1b37b57
2016-11-02 11:47:48 -07:00
Debargha Mukherjee
deef66db01
Merge "Adding 64x64 forward and inverse transforms" into nextgenv2
2016-11-02 18:40:55 +00:00
Yaowu Xu
1af3d51685
Merge changes I313bde67,I2ddc2d70,Ifb9094c3,I9051ed6e,I5681e332, ... into nextgenv2
...
* changes:
Avoid the "initial copy" in the deringing filter
Only copy the deringed blocks back into the buffer
Reducing copies in deringing filter
sb_all_skip_out() now computes a list of deringed blocks
compute bskip as we go
Revert "Fix dering filter when using 4:2:2 or 4:4:0 subsampling"
2016-11-02 18:02:56 +00:00
Debargha Mukherjee
67d134772c
Adding 64x64 forward and inverse transforms
...
Change-Id: I213f3111fc0656aecd1303a8b871ecded2b92bc2
2016-11-02 09:48:46 -07:00
Jingning Han
6a503e4110
Merge "Make rectangular transform block available in the common lib" into nextgenv2
2016-11-02 16:17:00 +00:00
Jingning Han
f8a29663be
Merge "Simplify tx_size enums" into nextgenv2
2016-11-02 16:16:50 +00:00
Jean-Marc Valin
bcf3580b1e
Avoid the "initial copy" in the deringing filter
...
No change in output
Change-Id: I313bde67e59835f88e3b2e6079b0df2d7ed1a903
2016-11-02 08:23:04 -07:00
Jean-Marc Valin
7618daa555
Only copy the deringed blocks back into the buffer
...
No change in output
Change-Id: I2ddc2d70c6534e7cfd315d66e838410677f91356
2016-11-02 08:22:58 -07:00
Jean-Marc Valin
cf23aefab5
Reducing copies in deringing filter
...
Only copy the modified pixels from the first filter back into the input of the
second filter.
Change-Id: Ifb9094c33c876a8c6caa0f68771fc7ef59c78b53
2016-11-02 08:22:51 -07:00
Jean-Marc Valin
3e44bccb50
sb_all_skip_out() now computes a list of deringed blocks
...
No change in output
Change-Id: I9051ed6e1fbca7d80412ba2b53f7aacbc3ef70eb
2016-11-02 08:22:45 -07:00
Jean-Marc Valin
71466d2288
compute bskip as we go
...
Change-Id: I5681e3329ad3677296161de59f5ff1236a14f086
2016-11-02 08:22:38 -07:00
Yaowu Xu
3e90f84a34
Revert "Fix dering filter when using 4:2:2 or 4:4:0 subsampling"
...
This reverts commit 401204a50b
.
Change-Id: Id27eadf679b0df2d2ccfab61155be29979b0b6ba
2016-11-02 08:22:02 -07:00
Jingning Han
ec419e0771
Make rectangular transform block available in the common lib
...
This prepares the integration of rectangular transform block size
with recursive transform block partition system.
Change-Id: Id96aa3790dace15619c665f438241938992d1730
2016-11-01 22:25:54 -07:00
Jingning Han
aad298ffcf
Simplify tx_size enums
...
Remove redundant experimental flag. This does not change the coding
statistics.
Change-Id: I35b3cb04025c5c2d2744312e5efc00d0473c990d
2016-11-01 21:12:55 -07:00
Yi Luo
fb77385fd0
Merge "Remove unused copies of transform related source code" into nextgenv2
2016-11-02 01:43:19 +00:00
Yi Luo
7f6bf9c70d
Merge "Hybrid inverse transforms 16x16 AVX2 optimization" into nextgenv2
2016-11-02 01:43:02 +00:00
Jingning Han
9679464e28
Merge "Change TXFM_CONTEXT from TX_SIZE to uint8_t" into nextgenv2
2016-11-02 01:18:19 +00:00
Jingning Han
746e2220b5
Merge "Rework transform block partition context model" into nextgenv2
2016-11-02 01:18:13 +00:00
Urvang Joshi
a5b09216b5
Merge "Revert of "Mark bogus palette color probabilities as zero"." into nextgenv2
2016-11-02 00:31:55 +00:00
Jingning Han
8b9478af1e
Change TXFM_CONTEXT from TX_SIZE to uint8_t
...
Count the transform block partition context in the unit of pixels.
Change-Id: Ibb66f053526ed347ad0274b78db7ac35cc086b0e
2016-11-01 15:44:26 -07:00
Urvang Joshi
eb54e0cde8
Revert of "Mark bogus palette color probabilities as zero".
...
Reverted commit: f8306bfdc
(with some changes).
Reason: This was triggering an assert in debug build because of zero
probability values. So, using an "UNUSED_PROB" macro to replace these to
retain clarity.
Assertion failure can be reproduced as follows:
$ make clean; extra_cflags='-O0 -g -fno-inline' ../../configure
--enable-debug --enable-experimental --enable-palette && make -j 16
$ ./aomenc -D --codec=av1 ~/videos/screen_content_set/gimp.y4m -o
/tmp/foo.webm --tune-content=screen --limit=50
Pass 1/2 frame 50/51 8976B 1436b/f 86169b/s 2902620 us
(17.23 fps)
Pass 2/2 frame 25/0 0B 2933053 us 8.52 fps [ETA unknown]
aomenc: ../../av1/encoder/cost.c:46: cost: Assertion `prob != 0' failed.
Aborted (core dumped)
Change-Id: I47a76b8f415060909bc8448fae3002857eb61d8e
2016-11-01 15:25:57 -07:00
Yi Luo
ea1167c33f
Remove unused copies of transform related source code
...
- Library size reduces: 165 kB, 292 kB (HBD).
Change-Id: I50cb630dde326bd2a28c0db4b7e2d53c2fd94a2a
2016-11-01 15:07:46 -07:00
Jingning Han
c8b8936fdc
Rework transform block partition context model
...
This commit allows the partition context model to account for the
maximum transform block size of the coding block.
Change-Id: I22b91e85fff70faa974afd362ce327d3f2eda81d
2016-11-01 15:00:04 -07:00
Yaowu Xu
980eb2e9fa
Merge "Change to use correct variable in for-loop" into nextgenv2
2016-11-01 21:07:11 +00:00
Yi Luo
7317200002
Hybrid inverse transforms 16x16 AVX2 optimization
...
- Add unit tests to verify the bit-exact result.
- User level time reduction (EXT_TX):
encoder: 3.63%
decoder: 2.36%
- Also add tx_type=V_DCT...H_FLIPADST SSE2 for 16x16 inv txfm.
Change-Id: Idc6d9e8254aa536e5f18a87fa0d37c6bd551c083
2016-11-01 13:38:20 -07:00
Yaowu Xu
ddcdd5b1e5
Merge "Fix a compiler warning with --enable-adapt-scan" into nextgenv2
2016-11-01 18:12:49 +00:00