- 06 Jun, 2013 - 1 commit
-
-
John Koleszar authored
This version of the loop filter supports non-4:2:0 subsampling and a fourth plane, as well as changing the filtering order to be more friendly to hardware implementations. The filters are applied first to all vertical edges within the 64x64 SB, followed by the top horizontal edge and any internal horizontal edges. Since filtering is applied on each 4x4 edge serially, a dependency is created from filtering one block edge to the next. It would be possible to remove this depencnecy by building all filtering decisions from the unfiltered reconstruction data. Change-Id: I08f3e9683eb7bded8a76651cbc50fc0dfdd05fa7
-
- 30 May, 2013 - 1 commit
-
-
Paul Wilkins authored
This patch removes the implicit segmentation experiment from the code base as the benefits were still unproven as of the bitstream deadline. Change-Id: I273b99d8d621d1853eac4182f97982cb5957247e
-
- 29 May, 2013 - 1 commit
-
-
Deb Mukherjee authored
This patch changes the coefficient tree to move the EOB to below the ZERO node in order to save number of bool decodes. The advantages of moving EOB one step down as opposed to two steps down in the other parallel patch are: 1. The coef modeling based on the One-node becomes independent of the tree structure above it, and 2. Fewer conext/counter increases are needed. The drawback is that the potential savings in bool decodes will be less, but assuming that 0s are much more predominant than 1's the potential savings is still likely to be substantial. Results on derf300: -0.237% Change-Id: Ie784be13dc98291306b338e8228703a4c2ea2242
-
- 25 May, 2013 - 1 commit
-
-
Paul Wilkins authored
Change-Id: I1a979bf74c286b157c31bab6bdcba0494acb4918
-
- 23 May, 2013 - 2 commits
-
-
Paul Wilkins authored
Removal from under configure flag. A bit renaming Change-Id: I2213229dfe852001dfec16b149f47c52ce88f3aa
-
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
-
-
Paul Wilkins authored
Merge this experiment so that it is under a speed feature flag not a configuration flag. Change-Id: I536f7f125a4ff5149bb3a64f791e835c324535fd
-
- 21 May, 2013 - 1 commit
-
-
Deb Mukherjee authored
Merges the experiment. Change-Id: I4eb19af6de6df6aa3a96a2e82f231d47ed9b3ae9
-
- 17 May, 2013 - 1 commit
-
-
John Koleszar authored
This is a mostly-working implementation of an extra channel in the bitstream. Configure with --enable-alpha to test. Notable TODOs: - Add extra channel to all mismatch tests, PSNR, SSIM, etc - Configurable subsampling - Variable number of planes (currently always uses all 4) - Loop filtering - Per-plane lossless quantizer - ARNR support This implementation just uses the same contents as the Y channel for the A channel, due to lack of content and general pain in playing back 4 channel content. A later patch will use the actual alpha channel passed in from outside the codec. Change-Id: Ibf81f023b1c570bd84b3064e9b4b8ae52e087592
-
- 10 May, 2013 - 1 commit
-
-
Yunqing Wang authored
In current code, motion vectors got from single prediction mode are used in compound prediction mode directly. These motion vectors may not give accurate prediction since they are searched independently. In this patch, we took Pascal's suggestion, and did joint motion search in compound prediction mode to find better motion vectors in this situation. Test results: Overall PSNR: 0.570%(derf), 0.918%(stdhd); SSIM: 0.572%(derf), 1.009%(stdhd); The encoder is a little slower. This can be improved since some c code is used in motion search. Change-Id: Ib30c9240f6c56c9b070867b4ca89412a76d9f3c6
-
- 07 May, 2013 - 6 commits
-
-
Paul Wilkins authored
Delete code under the CONFIG_CODE_ZEROGROUP flag. Change-Id: I5fe6c7b42a5da9b73118e33594301da4129f320a
-
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
Macro ab4x4 contains experiments for recursive partition down to 4x4 block size. Change-Id: Ic727842fa98a4df9fd51e0025a545dc76a5c76c1
-
Jingning Han authored
Pull sb8x8 out of experimental list. verified via borg run tests. Fixed unit test failures. Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
-
- 06 May, 2013 - 1 commit
-
-
John Koleszar authored
Adds a new experiment CONFIG_NON420 that allows other chroma subsamplings to be passed to the codec. This commit allows the data to be passed from a y4m input file through vpxenc to the codec, where they're currently rejected. Later commits will finish support for this inside the codec. Change-Id: Ib3aac604d8cad9e24cef395fa1067f16ba7e8e43
-
- 03 May, 2013 - 1 commit
-
-
James Zern authored
(while still abusing the gcc targets) Change-Id: I40f33f619ed1ee760caf23f5598587b30cf8a9ed
-
- 24 Apr, 2013 - 1 commit
-
-
Jingning Han authored
Move rectangular superblock coding out of experimental list. Change-Id: I96c37547d122330d666a67b4bf577ae54547857f
-
- 23 Apr, 2013 - 2 commits
-
-
Ronald S. Bultje authored
Change-Id: I274a1d2e461e6ffdb106bac4ad6951692ace314e
-
Deb Mukherjee authored
Change-Id: Ibe0628905925fc81bbb192651276f417c2aa7552
-
- 22 Apr, 2013 - 2 commits
-
-
Deb Mukherjee authored
This patch does not seem to give any benefits. Change-Id: I9d2b4091d6af3dfc0875f24db86c01e2de57f8db
-
Deb Mukherjee authored
Adds an experiment that codes an end-of-orientation symbol for every eligible zero encountered in scan order. This cleans out various other sub-experiments that were part of the origiinal patch, which will be later included if found useful. Results are slightly positive on all sets (0.1 - 0.2% range). Change-Id: I57765c605fefc7fb9d1b57f1b356843602abefaf
-
- 19 Apr, 2013 - 1 commit
-
-
Paul Wilkins authored
This experiment has failed to give much benefit but does add complexity so deprecated. Change-Id: Ic7b929ba706390b9907ef0b4f965bd401ca799a4
-
- 17 Apr, 2013 - 1 commit
-
-
Yaowu Xu authored
that are related to using reconstructed pixel for selecting reference motion vectors. Change-Id: I048dfae39ca7385e344b57d46347ecc6e753e1bb
-
- 15 Apr, 2013 - 1 commit
-
-
Adrian Grange authored
This is work-in-progress, it implements multiple ARF encoding behind an experimental flag. It adds the ability to insert multiple ARF frames into a single ARF group. This patch implements the reordering of the coded frames, and implements a fixed-length coding pattern. It applies a fixed quantizer strategy based on where the frame is in the coding sequence. Further work to modify the rate control strategy is ongoing and will be submitted via a set of future patches. In this first step, each ARF group is recursively bisected and an ARF frame added at that position in the sequence. The recursion continues until ARF frames are within MIN_GF_INTERVAL frames. The code sits behind the "multiple-arf" experimental flag ("CONFIG_MULTIPLE_ARF"). The experimental flag "oneshotq" ("CONFIG_ONESHOTQ") also needs to be enabled for this patch to work correctly. Change-Id: Ie473b05ebb43ac473c0cfb659b2b8042823085e2
-
- 10 Apr, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Merge sb32x32 and sb64x64 functions; allow for rectangular sizes. Code gives identical encoder results before and after. There are a few macros for rectangular block sizes under the sbsegment experiment; this experiment is not yet functional and should not yet be used. Change-Id: I71f93b5d2a1596e99a6f01f29c3f0a456694d728
-
- 04 Apr, 2013 - 1 commit
-
-
Yaowu Xu authored
so it is configurable to faciliate testings Change-Id: I247b62736c3a08ec2934793959d1ae605a05efa3
-
- 27 Mar, 2013 - 1 commit
-
-
Ronald S. Bultje authored
This gains about 0.2% on derf, 0.1% on hd and 0.4% on stdhd. I can put this under an experimental flag if wanted, just trying to get my patch queue in shape. Change-Id: Ibe1a30fe0e0b07bec4802e0f3ff0ba22e505f576
-
- 26 Mar, 2013 - 3 commits
-
-
Deb Mukherjee authored
Adds an experiment to use a weighted prediction of two INTER predictors, where the weight is one of (1/4, 3/4), (3/8, 5/8), (1/2, 1/2), (5/8, 3/8) or (3/4, 1/4), and is chosen implicitly based on consistency of the predictors to the already reconstructed pixels to the top and left of the current macroblock or superblock. Currently the weighting is not applied to SPLITMV modes, which default to the usual (1/2, 1/2) weighting. However the code is in place controlled by a macro. The same weighting is used for Y and UV components, where the weight is derived from analyzing the Y component only. Results (over compound inter-intra experiment) derf: +0.18% yt: +0.34% hd: +0.49% stdhd: +0.23% The experiment suggests bigger benefit for explicitly signaled weights. Change-Id: I5438539ff4485c5752874cd1eb078ff14bf5235a
-
John Koleszar authored
Adds a per-frame, strength adjustable, in loop deringing filter. Uses the existing vp9_post_proc_down_and_across 5 tap thresholded blur code, with a brute force search for the threshold. Results almost strictly positive on the YT HD set, either having no effect or helping PSNR in the range of 1-3% (overall average 0.8%). Results more mixed for the CIF set, (-0.5 min, 1.4 max, 0.1 avg). This has an almost strictly negative impact to SSIM, so examining a different filter or a more balanced search heuristic is in order. Other test set results pending. Change-Id: I5ca6ee8fe292dfa3f2eab7f65332423fa1710b58
-
Deb Mukherjee authored
Replaces the default tables for single coefficient magnitudes with those obtained from an appropriate distribution. The EOB node is left unchanged. The model is represeted as a 256-size codebook where the index corresponds to the probability of the Zero or the One node. Two variations are implemented corresponding to whether the Zero node or the One-node is used as the peg. The main advantage is that the default prob tables will become considerably smaller and manageable. Besides there is substantially less risk of over-fitting for a training set. Various distributions are tried and the one that gives the best results is the family of Generalized Gaussian distributions with shape parameter 0.75. The results are within about 0.2% of fully trained tables for the Zero peg variant, and within 0.1% of the One peg variant. The forward updates are optionally (controlled by a macro) model-based, i.e. restricted to only convey probabilities from the codebook. Backwar...
-
- 16 Mar, 2013 - 1 commit
-
-
Dmitry Kovalev authored
New decoder control paramter VP8_SET_DECRYPT_KEY to set the decryption key. Change-Id: I6fc1f44d41f74f3b3f702778af1a6f8f5cc9439f
-
- 13 Mar, 2013 - 1 commit
-
-
Yaowu Xu authored
and turn the experiment off by default. Change-Id: If9e684aa6cc49eacd39f36645a110a447e38d2de
-
- 07 Mar, 2013 - 1 commit
-
-
Deb Mukherjee authored
This patch revamps the entropy coding of coefficients to code first a non-zero count per coded block and correspondingly remove the EOB token from the token set. STATUS: Main encode/decode code achieving encode/decode sync - done. Forward and backward probability updates to the nzcs - done. Rd costing updates for nzcs - done. Note: The dynamic progrmaming apporach used in trellis quantization is not exactly compatible with nzcs. A suboptimal approach has been used instead where branch costs are updated to account for changes in the nzcs. TODO: Training the default probs/counts for nzcs Change-Id: I951bc1e22f47885077a7453a09b0493daa77883d
-
- 26 Feb, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Change-Id: I35e64998b25694a3bb4a62164bba3c03c1db4bc7
-
- 25 Feb, 2013 - 1 commit
-
-
Jingning Han authored
Rebased. Remove the old matrix multiplication transform computation. The 16x16 ADST/DCT can be switched on/off and evaluated by setting ACTIVE_HT16 300/0 in vp9/common/vp9_blockd.h. Change-Id: Icab2dbd18538987e1dc4e88c45abfc4cfc6e133f
-
- 20 Feb, 2013 - 1 commit
-
-
Yaowu Xu authored
Change-Id: I7b7b8d4fda3a23699e0c920d727f8c15d37d43aa
-
- 19 Feb, 2013 - 1 commit
-
-
Jingning Han authored
rebased. This patch includes 16x16 butterfly inverse ADST/DCT hybrid transform. It uses the variant ADST of kernel sin((2k+1)*(2n+1)/4N), which allows a butterfly implementation. The coding gains as compared to DCT 16x16 are about 0.1% for both derf and std-hd. It is noteworthy that for std-hd sets many sequences gains about 0.5%, some 0.2%. There are also few points that provides -1% to -3% performance. Hence the average goes to about 0.1%. Change-Id: Ie80ac84cf403390f6e5d282caa58723739e5ec17
-
- 13 Feb, 2013 - 1 commit
-
-
Paul Wilkins authored
Removal of the NEWCOEFCONTEXT experiment to reduce code clutter and make it easier to experiment with some other changes to the coefficient coding context. Change-Id: Icd17b421384c354df6117cc714747647c5eb7e98
-