- 05 Jun, 2013 2 commits
-
-
Deb Mukherjee authored
NO bitstream change Change-Id: I79f6146dac5fdd157051b6f8dc611c0b7b5e5f7f
-
Deb Mukherjee authored
Adds backward adaptation and differential forward updates of switchable interpolation filter probabilities. Also adds some cosmetic cleanups and minor fixes on mv_ref probabilities. derfraw300: +0.353% (with most coming from switchable interp changes) Change-Id: Ie2718be73528c945fd0d80cfd63ca2d9cb3032de
-
- 31 May, 2013 4 commits
-
-
Sami Pietila authored
Change-Id: Ibaa47be878c1cd84d88d7518418d2d8d38224e70
-
Ronald S. Bultje authored
These are now merged in a new define called VP9_INTRA_MODES. Change-Id: I0890f895756a7395d84c92f98f43e43f4cf9050d
-
Ronald S. Bultje authored
Change-Id: Ieb4669ae564bec9f3051485ecdf186cb4e00decb
-
Ronald S. Bultje authored
We leave it in rdopt.c as a local define for now - this can be removed later. In all other places, we remove it, thereby slightly decreasing the size of some arrays in the bitstream. Change-Id: Ic2a9beb97a4eda0b086f62c039d994b192f99ca5
-
- 30 May, 2013 2 commits
-
-
Ronald S. Bultje authored
It remains as a local define in rdopt.c so we can distinguish between split and non-split modes in the RD loop, but disappears outside that scope in the codec. Change-Id: I98c18fe5ab7e4fbd1d6620ec5695e2ea20513ce9
-
Ronald S. Bultje authored
Also merge all counters. This removes a few unused probability updates from the bitstream. Change-Id: I20f58853e9dac84d8c0d9703ae012c55917516eb
-
- 29 May, 2013 1 commit
-
-
Ronald S. Bultje authored
Change-Id: Ic40d56fb162f4e201547dfae33e62ccd9e865889
-
- 27 May, 2013 1 commit
-
-
Yaowu Xu authored
1. remove prediction mode conversion 2. unified bmode, same for key and non-key frame 3. set I4X4_PRED count for pdf to 0, as I4X4_PRED is no longer coded ever. It is determined by ref_frame and block partition Change-Id: If5b282957c24339b241acdb9f2afef85658fe47d
-
- 26 May, 2013 1 commit
-
-
Ronald S. Bultje authored
Also do per-partition motion vector referencing in <sb8x8 partitions, and adjust mvref finding for sub8x8 partitions. Change-Id: Id3ed1ed4d2a8910d11d327db6cc63b8eb79f941f
-
- 23 May, 2013 1 commit
-
-
Jingning Han authored
Move 4x4/4x8/8x4 partition coding out of experimental list. This commit fixed the unit test failure issues. It also resolved the merge conflicts between 4x4 block level partition and iterative motion search for comp_inter_inter. Change-Id: I898671f0631f5ddc4f5cc68d4c62ead7de9c5a58
-
- 22 May, 2013 1 commit
-
-
Jingning Han authored
This commit allows the rate-distortion optimization of intra coding capable of supporting 8x4 and 4x8 partition settings. It enables the entropy coding of intra modes in key frame using a unified contextual probability model conditioned on its above/left prediction modes. Coding performance: derf 0.464% Change-Id: Ieed055084e11fcb64d5d5faeb0e706d30268ba18
-
- 19 May, 2013 1 commit
-
-
Jingning Han authored
The recursive partition type search is enabled down to 4x4, 4x8 and 8x4, followed by the corresponding rate-distortion optimization for the per-partition encoding mode decisions. The bit-stream writing/reading synchronized in supporting the rectangular partition of 8x8 block. This provides above 1% coding performance gains on derf. To do next: 1. re-design the rate-distortion loop for inter prediction below 8x8. 2. re-design the rate-distortion loop for intra prediction below 4x4. 3. make the loop-filter aware of rectangular partition of 8x8 block. 4. clean the unused probability models. 5. update default probability values. Change-Id: Idd41a315b16879db08f045a322241f46f1d53f20
-
- 17 May, 2013 2 commits
-
-
Paul Wilkins authored
Replace vp9_kf_default_bmode_counts structure with direct default probabilities. The probability structure is smaller and it removes the need to specify in the bitstream how to convert the counts to probabilities. Note that I have concerns still about the size and value of the large intra mode context. This may cause problems for HW but it also means we rely heavily on reverse update as forwards update of a structure this size is problematic. I intend to review this more generally in the next few days to see if we can come up with a competitive solution that does not rely on such a large context. Change-Id: I0a36071079d5d26a57ab0e9fbf91af4199aa7984
-
Paul Wilkins authored
Change-Id: I6c70a8a8a4633399842ac74792003ae5f7859ffa
-
- 14 May, 2013 1 commit
-
-
Jingning Han authored
This commit allows the rate-distortion optimization recursion at encoder to go down to 4x4 block size. It deprecates the use of I4X4_PRED and SPLITMV syntax elements from bit-stream writing/reading. Will remove the unused probability models in the next patch. The partition type search and bit-stream are now capable of supporting the rectangular partition of 8x8 block, i.e., 8x4 and 4x8. Need to revise the rate-distortion parts to get these two partition tested in the rd loop. Change-Id: I0dfe3b90a1507ad6138db10cc58e6e237a06a9d6
-
- 07 May, 2013 4 commits
-
-
Paul Wilkins authored
Delete code under the CONFIG_COMP_INTERINTRA_PRED flag. Change-Id: I3d1079cf46305c08f7e11d738596ea112e7b547f
-
Paul Wilkins authored
Clean out code under CONFIG_ENABLE_6TAP flag. Change-Id: Ic45b624081181027d6ba24d55dd644c3197f9830
-
Paul Wilkins authored
Clean out code relating to newbintramode. Change-Id: Ie91f4f156cdf60ce0da8ca407c1c9cb00c7d0705
-
Jingning Han authored
Pull sb8x8 out of experimental list. verified via borg run tests. Fixed unit test failures. Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
-
- 03 May, 2013 1 commit
-
-
Adrian Grange authored
The number of reference buffers is extended to 8 and a reference sign-bias added for the LAST_FRAME. Whilst the number of reference buffers used by an individual frame remains unchanged at 3, these may now be selected from 8 possible buffers. Change-Id: I2d247b9c1c2b3a339d6c9fac125e81ba373f75a7
-
- 30 Apr, 2013 1 commit
-
-
Ronald S. Bultje authored
Work-in-progress, not yet ready for review. TODO items: - bitstream writing (encoder) and reading (decoder) - decoder reconstruction Change-Id: I5afb7284e7e0480847b47cd0097cb469433c9081
-
- 26 Apr, 2013 1 commit
-
-
Ronald S. Bultje authored
Change-Id: I087e08e7909a406b71715b8525c104208daa6889
-
- 25 Apr, 2013 1 commit
-
-
Ronald S. Bultje authored
Change-Id: I3030d7adac73109aeaa1ecc0f78ac968c092d9aa
-
- 24 Apr, 2013 2 commits
-
-
Jingning Han authored
Move rectangular superblock coding out of experimental list. Change-Id: I96c37547d122330d666a67b4bf577ae54547857f
-
Jingning Han authored
This commit enables selecting probability models for recursive block partition information syntax, depending on its above/left partition information, as well as the current block size. These conditional probability models are reasonably stationary and consistent across frames, hence the backward adaptive approach is used to maintain and update the contextual models. It achieves coding performance gains (on top of enabling rectangular block sizes): derf: 0.242% yt: 0.391% hd: 0.376% stdhd: 0.645% Change-Id: Ie513d9673337f0d27abd65fb566b711d0844ec2e
-
- 23 Apr, 2013 2 commits
-
-
Dmitry Kovalev authored
Change-Id: Ia7266b8d3aa3d5cff2db0c3b2f014def045759af
-
Dmitry Kovalev authored
Change-Id: I62dde981f5201c5fbc22001609ee4b5fd0a9bdf5
-
- 19 Apr, 2013 2 commits
-
-
Scott LaVarnway authored
For 1080 material, this buffer is currently 2,270,928 bytes. This patch swaps ptrs instead of copying and uses the last show_frame flag instead of setting the entire buffer to zero. For the test clip used, the decoder improved by up to 1%. Change-Id: I686825712ad56043e09ada9808dc489f875a6ce0
-
Paul Wilkins authored
This experiment has failed to give much benefit but does add complexity so deprecated. Change-Id: Ic7b929ba706390b9907ef0b4f965bd401ca799a4
-
- 17 Apr, 2013 3 commits
-
-
Dmitry Kovalev authored
Also using ALLOWED_REFS_PER_FRAME instead of 3. Change-Id: I810dd8521d8138edb9dbd78edede49b62f706554
-
Yaowu Xu authored
Change-Id: Idb0d11e3ae9afabe667a9f327bf4d3aa84f63649
-
Jingning Han authored
Enable recursive partition information coding from SB64X64 down to MB16X16. The bit-stream syntax is now supporting rectangular block sizes. It starts from SB64X64 and recursively describes the partition type of the current block. If the partition type is PARTITION_NONE, the block is coded as a single unit; if it is PARTITION_HORZ or PARTITION_VERT, the block is segmented into two independently coded rectangular units, with no further partition needed; otherwise, the block is segmented into 4 square blocks. i.e., PARTITION_SPLIT case, each can be potentially further partitioned. Forward adaptive probability modeling is used for the partition information coding, conditioned on the current block size. Change-Id: I499365fb547839d555498e3bcc0387d8a3587d87
-
- 12 Apr, 2013 2 commits
-
-
Yaowu Xu authored
To match the order of directional intra prediction modes for larger blocks, also renamed the i4x4 prediction modes to mirror the larger variants. Change-Id: I77cea4d0add6c7758460bf9c7a2fe59aca601f0b
-
Yaowu Xu authored
So it is consistent with I8x8_PRED. Change-Id: Iefa65124b2419690d83e526c611129c0ede29d11
-
- 11 Apr, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: If69c3d795f87af5cc7bfdfe70ef733c41b4d55c8
-
- 26 Mar, 2013 1 commit
-
-
Yaowu Xu authored
Change-Id: I4fa46f10e82aca36c563f7ea829e5a3177a0c740
-
- 10 Mar, 2013 1 commit
-
-
John Koleszar authored
The previous implementation visited each node in the tree multiple times because it used each symbol's encoding to revisit the branches taken and increment its count. Instead, we can traverse the tree depth first and calculate the probabilities and branch counts as we walk back up. The complexity goes from somewhere between O(nlogn) and O(n^2) (depending on how balanced the tree is) to O(n). Only tested one clip (256kbps, CIF), saw 13% decoding perf improvement. Note that this optimization should port trivially to VP8 as well. In VP8, the decoder doesn't use this function, but it does routinely show up on the profile for realtime encoding. Change-Id: I4f2848e4f41dc9a7694f73f3e75034bce08d1b12
-
- 21 Feb, 2013 1 commit
-
-
Deb Mukherjee authored
Refactors the switchable filter search in the rd loop to improve encode speed. Uses a piecewise approximation to a closed form expression to estimate rd cost for a Laplacian source with a given variance and quantization step-size. About 40% encode time reduction is achieved. Results (on a feb 12 baseline) show a slight drop: derf: -0.019% yt: +0.010% std-hd: -0.162% hd: -0.050% Change-Id: Ie861badf5bba1e3b1052e29a0ef1b7e256edbcd0
-