]> granicus.if.org Git - libvpx/log
libvpx
10 years agoMerge "Add high bit depth support for tx-skip expt" into nextgen
hui su [Fri, 17 Apr 2015 18:37:39 +0000 (11:37 -0700)]
Merge "Add high bit depth support for tx-skip expt" into nextgen

10 years agoMerge "Simplify bilateral filter search for speed" into nextgen
Debargha Mukherjee [Fri, 17 Apr 2015 01:58:03 +0000 (18:58 -0700)]
Merge "Simplify bilateral filter search for speed" into nextgen

10 years agoSimplify bilateral filter search for speed
Debargha Mukherjee [Wed, 15 Apr 2015 16:43:36 +0000 (09:43 -0700)]
Simplify bilateral filter search for speed

Adds an internal buffer in the encoder to store the deblocked
result to help speed up the search for the best bilateral filter.

Very small change in performance but a lot faster:
derflr: +0.518%

Change-Id: I5d37e016088e559c16317789cfb1c2f49334b2b9

10 years agoFix palette expt asan failure
hui su [Thu, 16 Apr 2015 18:18:58 +0000 (11:18 -0700)]
Fix palette expt asan failure

Account for 422 video format.

Change-Id: Ic5af661720fc5fa7142210d907dd25e1e79ff653

10 years agoAdd high bit depth support for tx-skip expt
hui su [Fri, 10 Apr 2015 18:25:09 +0000 (11:25 -0700)]
Add high bit depth support for tx-skip expt

+0.3% on 10-bit
+0.3% on 12-bit

With other high bit compatible experiments on 12-bit
+12.44% (+0.17) over 8-bit baseline

Change-Id: I40b4c382fa54ba4640d08d9d01950ea8c1200bc9

10 years agoFix a bug in tx_skip expt
hui su [Tue, 14 Apr 2015 18:25:55 +0000 (11:25 -0700)]
Fix a bug in tx_skip expt

tx_skip is not enabled for sub8x8 blocks.

Change-Id: I3797238735f85fb2bd07b50ca2845611b198bff6

10 years agoMerge "refactoring in tx_skip experiment" into nextgen
hui su [Tue, 14 Apr 2015 15:12:08 +0000 (08:12 -0700)]
Merge "refactoring in tx_skip experiment" into nextgen

10 years agorefactoring in tx_skip experiment
hui su [Thu, 9 Apr 2015 16:30:18 +0000 (09:30 -0700)]
refactoring in tx_skip experiment

simplify code logic

Change-Id: Ifafc712f3f85abafadb429a04e295cf8cbb185d2

10 years agoMerge "High bit-depth support for wedge partition expt" into nextgen
Debargha Mukherjee [Mon, 13 Apr 2015 17:09:51 +0000 (10:09 -0700)]
Merge "High bit-depth support for wedge partition expt" into nextgen

10 years agoHigh bit-depth support for wedge partition expt
Debargha Mukherjee [Sat, 11 Apr 2015 00:45:02 +0000 (17:45 -0700)]
High bit-depth support for wedge partition expt

Change-Id: Idbd27e66d4f4a7953f888137d5752856215a6760

10 years agoFix a mismatch bug
hui su [Fri, 10 Apr 2015 23:06:38 +0000 (16:06 -0700)]
Fix a mismatch bug

In the tx_skip experiment, dpcm is not used for 64x64 blocks.

Change-Id: Iafbed3b5e411954b80e898f10def3757f2cf44c1

10 years agoMerge "An experiment introducing a bilateral loop filter" into nextgen
Debargha Mukherjee [Fri, 10 Apr 2015 23:46:16 +0000 (16:46 -0700)]
Merge "An experiment introducing a bilateral loop filter" into nextgen

10 years agoAn experiment introducing a bilateral loop filter
Debargha Mukherjee [Tue, 31 Mar 2015 23:49:38 +0000 (16:49 -0700)]
An experiment introducing a bilateral loop filter

Adds a framework to incorporate a parameterized loop
postfilter in the coding loop after the application of the
standard deblocking loop filter.

The first version uses a straight bilateral filter
where the parameters conveyed are just spatial and
intensity gaussian variances.

Results on derflr:
+0.523% (only with this experiment)
+6.714% (with all expts other than intrabc)

Change-Id: I20d47285b4d25b8c6386ff8af2a75ff88ac2b69b

10 years agotx-skip experiment: improve entropy coding of coeff tokens
hui su [Mon, 30 Mar 2015 23:36:15 +0000 (16:36 -0700)]
tx-skip experiment: improve entropy coding of coeff tokens

This patch allows the prediction residues of tx-skipped blocks
to use probs that are different from regular transfrom
coefficients for token entropy coding. Prediction residues are
assumed as in band 6.

The initial value of probs is obtained with stats from limited
tests. The statistic model for constrained token nodes has not
been optimized. The probs for token extra bits have not been
optimized. These can be future work.

Certain coding improvment is observed:
derflr with all experiments:                +6.26%  (+0.10%)
screen_content with palette:               +22.48%  (+1.28%)

Change-Id: I1c0d78178ee9f3655febb6f30cdaef8ee9f8e3cc

10 years agoPreparation for end to end test turn on
Debargha Mukherjee [Fri, 3 Apr 2015 23:44:40 +0000 (16:44 -0700)]
Preparation for end to end test turn on

Change-Id: Ibc53bf50c8164b413749aaa8baa08e2f6e928e1b

10 years agoAdd an intra block copy mode (NEWDV).
Alex Converse [Mon, 1 Dec 2014 22:30:22 +0000 (14:30 -0800)]
Add an intra block copy mode (NEWDV).

Change-Id: I82b261c54ac9db33706bb057613dcbe66fc71387

10 years agoClean the COMPOUND_MODES mv initialization for sub8x8
Zoe Liu [Thu, 2 Apr 2015 22:12:58 +0000 (15:12 -0700)]
Clean the COMPOUND_MODES mv initialization for sub8x8

Change-Id: I04f4ad41c002c761d55093432d6c437c25e5bddd

10 years agoAdd a new PREDICTION mode using NEARMV as ref mv
Zoe Liu [Tue, 17 Mar 2015 23:48:48 +0000 (16:48 -0700)]
Add a new PREDICTION mode using NEARMV as ref mv

This experiment, referred as NEWMVREF, also merged with NEWMVREF_SUB8X8
and the latter one has been removed. Runborgs results show that:

(1) Turning on this experiment only, compared against the base:
derflf: Average PSNR 0.40%; Overall PSNR 0.40%; SSIM 0.35%
(2) Turning on all the experiments including this feature, compared against
that without this feature, on the highbitdepth case using 12-bit:
derflf: Average PSNR 0.33%; Overall PSNR 0.32%; SSIM 0.30%.

Now for highbitdepth using 12-bit, compared against base:
derflf: Average PSNR 11.12%; Overall PSNR 11.07%; SSIM 20.27%.

Change-Id: Ie61dbfd5a19b8652920d2c602201a25a018a87a6

10 years agopalette experiment: remove run-length coding
hui su [Fri, 27 Mar 2015 21:49:58 +0000 (14:49 -0700)]
palette experiment:  remove run-length coding

Change-Id: I1e52475d0179cf019841d09a53b3b7fc53c79336

10 years agoMerge "Palette experiment: encode color indices based on context" into nextgen
hui su [Fri, 27 Mar 2015 01:34:43 +0000 (18:34 -0700)]
Merge "Palette experiment: encode color indices based on context" into nextgen

10 years agoMerge "Palette experiment: adaptly update probs" into nextgen
hui su [Fri, 27 Mar 2015 01:34:28 +0000 (18:34 -0700)]
Merge "Palette experiment: adaptly update probs" into nextgen

10 years agoPalette experiment: encode color indices based on context
hui su [Thu, 19 Mar 2015 22:55:29 +0000 (15:55 -0700)]
Palette experiment: encode color indices based on context

The basic idea is to use a pixel’s neighboring colors as
context to predict its own color. Up to 4 neighbors are
considered here: left, left-above, above, right-above.
To reduce the number of contexts,  the combination of any
4 (or less) colors are mapped to a reduced number of
patterns. For example, 1111, 2222, 3333, … , can be mapped
to the same pattern: AAAA. SImilarly, 1122, 1133, 2233, …,
can be mapped to the pattern AABB. In this way, the total
number of color contexts is reduced to 16.

This almost doubles the gain of palette coding on screen
content videos.

on screen_content
--enable-palette                                  +14.2%
--enable-palette --enable-tx-skip                 +21.2%

on derflr
--enable-palette                                  +0.12%
with all other experiments                        +6.16%

Change-Id: I560306dae216f2ac11a9214968c2ad2319fa1718

10 years agoMerge "Add palette coding mode for inter frames" into nextgen
Debargha Mukherjee [Thu, 26 Mar 2015 18:59:36 +0000 (11:59 -0700)]
Merge "Add palette coding mode for inter frames" into nextgen

10 years agoPalette experiment: adaptly update probs
hui su [Sat, 7 Mar 2015 02:08:50 +0000 (18:08 -0800)]
Palette experiment: adaptly update probs

Also make changes to transmit palette-enabled flag using
neighbor blocks as context.

on screen_content
--enable-palette                            +7.35%

on derflr
with all other experiments                  +6.05%

Change-Id: Id6c2f726d21913d54a3f86ecfea474a4044c27f6

10 years agoCleaned the code in handle_inter_mode
Zoe Liu [Mon, 23 Mar 2015 22:33:25 +0000 (15:33 -0700)]
Cleaned the code in handle_inter_mode

borgs show consistent results as before this patch

Change-Id: I3d21623cb03ea169a031328e9dde9c26ba1bd016

10 years agoAdd palette coding mode for inter frames
hui su [Wed, 25 Feb 2015 18:00:40 +0000 (10:00 -0800)]
Add palette coding mode for inter frames

on screen_content
--enable-palette                                    +6.74%

on derflr
with all other experiments                          +6.02%
(--enable-supertx --enable-copy-mode
 --enable-ext-tx --enable-filterintra
 --enable-tx64x64 --enable-tx-skip
 --enable-interintra --enable-wedge-partition
 --enable-compound-modes --enable-new-quant
 --enable-palette)

Change-Id: Ib85049b4c3fcf52bf95efbc9d6aecf53d53ca1a3

10 years agoMerge "Make interintra experiment work with highbitdepth" into nextgen
Deb Mukherjee [Mon, 23 Mar 2015 05:48:56 +0000 (22:48 -0700)]
Merge "Make interintra experiment work with highbitdepth" into nextgen

10 years agoMake interintra experiment work with highbitdepth
Deb Mukherjee [Wed, 18 Mar 2015 04:32:21 +0000 (21:32 -0700)]
Make interintra experiment work with highbitdepth

Also includes some adjustments to the algorithm.
All stats look good.

Change-Id: I824ef8ecf25b34f3feb358623d14fe375c3e4eb7

10 years agoSome build fixes with highbitdepth and new quant
Deb Mukherjee [Fri, 20 Mar 2015 03:32:07 +0000 (20:32 -0700)]
Some build fixes with highbitdepth and new quant

Highbitdepth performance about the same as 8-bit.

Change-Id: If737962d8588dd190083edae4383b731f9d22873

10 years agoNon-uniform quantization experiment
Deb Mukherjee [Wed, 4 Mar 2015 22:04:11 +0000 (14:04 -0800)]
Non-uniform quantization experiment

This framework allows lower quantization bins to be shrunk down or
expanded to match closer the source distribution (assuming a generalized
gaussian-like central peaky model for the coefficients) in an
entropy-constrained sense. Specifically, the width of the bins 0-4 are
modified as a factor of the nominal quantization step size and from 5
onwards all bins become the same as the nominal quantization step size.
Further, different bin width profiles as well as reconstruction values
can be used based on the coefficient band as well as the quantization step
size divided into 5 ranges.

A small gain currently on derflr of about 0.16% is observed with the
same paraemters for all q values.
Optimizing the parameters based on qstep value is left as a TODO for now.

Results on derflr with all expts on is +6.08% (up from 5.88%).

Experiments are in progress to tune the parameters for different
coefficient bands and quantization step ranges.

Change-Id: I88429d8cb0777021bfbb689ef69b764eafb3a1de

10 years agointerintra: wedge: Get the correct wedge params.
Alex Converse [Tue, 17 Mar 2015 17:49:22 +0000 (10:49 -0700)]
interintra: wedge: Get the correct wedge params.

Fixes an asan issue.

Change-Id: I671ffc382c77c2b38673e0b148f54e7bce2ce9c2

10 years agopalette: Fix an illegal read
Alex Converse [Mon, 16 Mar 2015 23:47:38 +0000 (16:47 -0700)]
palette: Fix an illegal read

Change-Id: I71649f0a85d98b96efd08c8a9e3ee7372fd7d327

10 years agoMerge "Misc changes to support high-bitdepth with supertx" into nextgen
Deb Mukherjee [Fri, 13 Mar 2015 00:42:20 +0000 (17:42 -0700)]
Merge "Misc changes to support high-bitdepth with supertx" into nextgen

10 years agoMisc changes to support high-bitdepth with supertx
Deb Mukherjee [Tue, 10 Mar 2015 19:46:52 +0000 (12:46 -0700)]
Misc changes to support high-bitdepth with supertx

Change-Id: I0331646d1c55deb6e4631e64bd6b092fb892a43e

10 years agoFixed a bug & a build warning for newmvref-sub8x8
Zoe Liu [Thu, 12 Mar 2015 16:43:23 +0000 (09:43 -0700)]
Fixed a bug & a build warning for newmvref-sub8x8

Change-Id: I799fc3fb4c1201da14c97bf66e06dec655f6a620

10 years agoAdd palette coding mode for UV
hui su [Sun, 22 Feb 2015 02:41:01 +0000 (18:41 -0800)]
Add palette coding mode for UV

For 444 videos, a single palette of 3-d colors is
generated for YUV. For 420 videos, there may be two
palettes, one for Y, and the other for UV.

Also fixed a bug when palette and tx-skip are both on.

on derflr
--enable-palette                    +0.00%
with all experiments                +5.87% (was +5.93%)

on screen_content
--enable-palette                    +6.00%
--enable-palette --enable-tx_skip   +15.3%

on screen_content 444 version
--enable-palette                    +6.76%
--enable-palette --enable-tx_skip   +19.5%

Change-Id: I7287090aecc90eebcd4335d132a8c2c3895dfdd4

10 years agoMerge "Global motion work continued" into nextgen
Debargha Mukherjee [Tue, 10 Mar 2015 18:27:04 +0000 (11:27 -0700)]
Merge "Global motion work continued" into nextgen

10 years agoGlobal motion work continued
Spencer Egart [Fri, 20 Feb 2015 19:16:23 +0000 (11:16 -0800)]
Global motion work continued

Interface change for the global Mv functions.

Change-Id: Ie4722faa638ac557f99743f7b33ff46c3d29e9a1

10 years agoMerge "Make filterintra experiment work with highbitdepth" into nextgen
Deb Mukherjee [Tue, 10 Mar 2015 17:42:58 +0000 (10:42 -0700)]
Merge "Make filterintra experiment work with highbitdepth" into nextgen

10 years agoMake filterintra experiment work with highbitdepth
Deb Mukherjee [Mon, 9 Mar 2015 18:41:59 +0000 (11:41 -0700)]
Make filterintra experiment work with highbitdepth

All stats look fine.
derflr: +0.912 with respect to 10-bit internal baseline
               (Was +0.747% w.r.t. 8 bit)
        +5.545 with respect to 8-bit baseline

Change-Id: I3c14fd17718a640ea2f6bd39534e0b5cbe04fb66

10 years agoFix tx_skip debug build.
Alex Converse [Mon, 9 Mar 2015 19:07:13 +0000 (12:07 -0700)]
Fix tx_skip debug build.

Change-Id: I20a3e4e34f10485aa5e6723cd33b0311bdbf1320

10 years agoAdd encoder control for setting color space
Yaowu Xu [Tue, 13 Jan 2015 18:07:20 +0000 (10:07 -0800)]
Add encoder control for setting color space

This commit adds encoder side control for vp9 to set color space info
in the output compressed bitstream.

It also amends the "vp9_encoder_params_get_to_decoder" test to verify
the correct color space information is passed from the encoder end to
decoder end.

Change-Id: Ibf5fba2edcb2a8dc37557f6fae5c7816efa52650
(cherry picked from commit e94b415c3479129944a69fafbeacf550fb9237b7)

10 years agoEnable decoder to pass through color space info
Yaowu Xu [Fri, 9 Jan 2015 21:04:48 +0000 (13:04 -0800)]
Enable decoder to pass through color space info

This commit added a field to vpx_image_t for indicating color space,
the field is also added to YUV_BUFFER_CONFIG. This allows the color
space information pass through the decoder from input stream to the
output buffer.

The commit also updates compare_img() function with added verification
of matching color space to ensure the color space information to be
correctly passed from encode to decoder in compressed vp9 streams.

Change-Id: I412776ec83defd8a09d76759aeb057b8fa690371
(cherry picked from commit 6b223fcb588c865ae6f5abfd3d9de3ba2ae0540f)

10 years agoAdded plumbing for setting color space
Yaowu Xu [Fri, 9 Jan 2015 18:52:33 +0000 (10:52 -0800)]
Added plumbing for setting color space

Change-Id: If64052cc6e404abc8a64a889f42930d14fad21d3
(cherry picked from commit ce52b0f8d347224cd526dc1ba55597a2aa79c341)

10 years agovp9_highbd_tm_predictor_16x16: fix win64
James Zern [Wed, 11 Feb 2015 03:30:58 +0000 (19:30 -0800)]
vp9_highbd_tm_predictor_16x16: fix win64

by saving xmm8; cglobal's xmm reg arg is 0-based

Change-Id: Ic8426ec9ac59ab4478716aa812452a6406794dcb
(cherry picked from commit 923cc0bf51a24d05c6aa68f80e09d485a54431f6)

10 years agoCorrect the miscalculation in uv dimensions
Yaowu Xu [Fri, 6 Feb 2015 20:19:32 +0000 (12:19 -0800)]
Correct the miscalculation in uv dimensions

The calculation of required extension used in HBD case was wrong due
to rounding for UV when y dimension is odd. This commit replace the
computation with correct version.

This fixes a crash caused by writting beyond buffer boundary.

Change-Id: Ic7c9afeb7388cd1341ec4974a611dacfb74ac6b6
(cherry picked from commit 4bca73b609bfe9a5cb86fc25b69c6128d9041504)

10 years agoPrevent VP8 encoding crash
Yaowu Xu [Sat, 7 Feb 2015 00:32:20 +0000 (16:32 -0800)]
Prevent VP8 encoding crash

This commit changes the value of highbitdepth flag to avoid conflict
with vp8 refresh_last_frame flag.

Change-Id: Idcff2cf44f0a200bd935b326f785c0cf32d7228a
(cherry picked from commit dd27307cac5ac7f346888d219877041563eea0a2)

10 years agoMerge "Fixed the build for newmvref-sub8x8" into nextgen
Zoe Liu [Fri, 6 Mar 2015 16:54:11 +0000 (08:54 -0800)]
Merge "Fixed the build for newmvref-sub8x8" into nextgen

10 years agoFixed the build for newmvref-sub8x8
Zoe Liu [Fri, 6 Mar 2015 08:01:30 +0000 (00:01 -0800)]
Fixed the build for newmvref-sub8x8

Change-Id: Ie042001e69d80b1fc52368f29617ad2e51a5e250

10 years agoMerge "Cleaned code further for newmvref-sub8x8 and compound-modes" into nextgen
Zoe Liu [Thu, 5 Mar 2015 23:41:28 +0000 (15:41 -0800)]
Merge "Cleaned code further for newmvref-sub8x8 and compound-modes" into nextgen

10 years agoCleaned code further for newmvref-sub8x8 and compound-modes
Zoe Liu [Thu, 5 Mar 2015 22:32:50 +0000 (14:32 -0800)]
Cleaned code further for newmvref-sub8x8 and compound-modes

Change-Id: I9f869c37566aaf81910d1d6ab1b2ac0d2a2f0a23

10 years agoMerge "Changed mv ref to nearestmv always for sub8x8" into nextgen
Zoe Liu [Thu, 5 Mar 2015 19:57:21 +0000 (11:57 -0800)]
Merge "Changed mv ref to nearestmv always for sub8x8" into nextgen

10 years agoChanged mv ref to nearestmv always for sub8x8
Zoe Liu [Mon, 9 Feb 2015 23:54:56 +0000 (15:54 -0800)]
Changed mv ref to nearestmv always for sub8x8

For all sub8x8 partition, the mv ref has changed to its own nearest_mv
instead of the nearest_mv of the super 8x8 block:

--enable-newmvref-sub8x8: ~0.1% gain for derflr

Besides the above new experiment, code has been cleaned largely for the
sub8x8 motion search, such that the mv ref can be fairly easily changed to
use other options, e.g., the next step's global motion effort.

Change-Id: I8e3f4aaa8553ba8c445369692e079db5ce282593

10 years agoCorrected comment in mode_2_counter for compound
Zoe Liu [Mon, 2 Mar 2015 17:49:11 +0000 (09:49 -0800)]
Corrected comment in mode_2_counter for compound

Change-Id: I5459550e62cff79182fa0ac5a24edb56cb64d608

10 years agoFixed the build for denoiser in new compound mode
Zoe Liu [Wed, 4 Mar 2015 17:29:05 +0000 (09:29 -0800)]
Fixed the build for denoiser in new compound mode

Change-Id: Ifb824ce87db9c00c8c87f52d9b8718669fb39d05

10 years agoSome fixes to quantization and compiler warnings
Deb Mukherjee [Mon, 2 Mar 2015 22:40:13 +0000 (14:40 -0800)]
Some fixes to quantization and compiler warnings

The bugs affected only the tx64x64 experiment. This patch fixes
them.

Also fixes some compiler warnings

Change-Id: I4cf1e24a4f1fa59831bf29750cf6daa8373e8e8f

10 years agoAdds translation model to global motion estimation
Deb Mukherjee [Wed, 25 Feb 2015 17:57:33 +0000 (09:57 -0800)]
Adds translation model to global motion estimation

Change-Id: Ie1791ab7cfdd3f7a1b03404627246c923f1bd51f

10 years agoPalette-based coding experiment
hui su [Wed, 21 Jan 2015 00:17:18 +0000 (16:17 -0800)]
Palette-based coding experiment

Added palette coding option for Y channel only, key frame only.
Palette colors are obtained with k-means clustering algorithm.
Run-length coding is used to compress the color indices.

On screen_content:
--enable-palette                            + 5.75%
--enable-palette --enable-tx_skip           +15.04% (was 13.3%)

On derflr:
--enable-palette                            - 0.03%
with all the other expriments               + 5.95% (was 5.98%)

Change-Id: I6d1cf45c889be764d14083170fdf14a424bd31b5

10 years agoRemoved redundant src_mi in mv ref candidates
Zoe Liu [Thu, 19 Feb 2015 17:44:05 +0000 (09:44 -0800)]
Removed redundant src_mi in mv ref candidates

Change-Id: I4eb144e7c9d2c8568388ae58001cc7b7498967e4

10 years agoGlobal Motion block-based
Spencer Egart [Thu, 12 Feb 2015 00:00:15 +0000 (16:00 -0800)]
Global Motion block-based

Uses block-based motion fields with ransac to find transformation between
frames.

Change-Id: I6293fbb690cdad854a1140fb6af76b326abfe964

10 years agoGlobal motion experiment
Spencer Egart [Wed, 4 Feb 2015 19:43:39 +0000 (11:43 -0800)]
Global motion experiment

Added a function to compute a motion field for a pair of buffers, for use in
finding an affine transform or homography.

Change-Id: Id5169cc811a61037e877dfd57fccaca89d93936f

10 years agoMerge "Adds code for corner detection and ransac" into nextgen
Deb Mukherjee [Tue, 10 Feb 2015 16:18:03 +0000 (08:18 -0800)]
Merge "Adds code for corner detection and ransac" into nextgen

10 years agoAdds code for corner detection and ransac
Deb Mukherjee [Sat, 7 Feb 2015 01:44:49 +0000 (17:44 -0800)]
Adds code for corner detection and ransac

This code is to start experiments with global motion models.

The corner detection can be either fast_9 or Harris.
Corner matching is currently based on normalized correlation.
Three flavors of ransac are used to estimate either a
homography (8-param), or an affine model (6-param) or a
rotation-zoom only affine model (4-param).

The highest level API for the library is in vp9_global_motion.h,
where there are two functions - one for computing a single model
and another for computing multiple models up to a maximum number
provided or until a desired inlier probability is achieved.

Change-Id: I3f9788ec2dc0635cbc65f5c66c6ea8853cfcf2dd

10 years agoCleaned up the COMPOUND_MODES code in sub8x8
Zoe Liu [Mon, 9 Feb 2015 19:58:54 +0000 (11:58 -0800)]
Cleaned up the COMPOUND_MODES code in sub8x8

Change-Id: I571ff39799c3257b5c6db82660364ce412c7f6e2

10 years agoEnable tx_skip for inter blocks
hui su [Fri, 30 Jan 2015 19:28:12 +0000 (11:28 -0800)]
Enable tx_skip for inter blocks

Enable tx_skip for inter blocks whose q-index is smaller than 64.

tx_skip experiment alone:
derflr: +0.233% (was +0.038%)

all experiments:
derflr: +5.98% (was +5.94%)

Change-Id: I35245a476ff7039fec8468a92a6aa63feaf74831

10 years agoFix a bug in filterintra experiment
hui su [Thu, 29 Jan 2015 23:51:34 +0000 (15:51 -0800)]
Fix a bug in filterintra experiment

All expts together: +5.946% (up about 0.3%)

Change-Id: If686e5e97209b4cc4a8115f920e1f4f35ded5a1d

10 years agoFix a bug in COPY_MODE + EXT_TX experiment
Yue Chen [Tue, 27 Jan 2015 19:51:02 +0000 (11:51 -0800)]
Fix a bug in COPY_MODE + EXT_TX experiment

Remove the duplicated step counting the overhead for ext_tx, because
it has been counted in super_block_yrd().

Change-Id: I50bc01d8166572bc0847305565cf33c14ee516e6

10 years agoRemoval of legacy zbin_extra / zbin_oq_value.
Jingning Han [Mon, 22 Dec 2014 17:35:29 +0000 (09:35 -0800)]
Removal of legacy zbin_extra / zbin_oq_value.

Change-Id: I07f77a63aa98087626e45c4e87aa5dcafc0b0b07
(cherry picked from commit d0f237702745c4bfc0297d24f9465f960fb988ed)

10 years agoAdds inter-intra combination with wedge partitions
Deb Mukherjee [Wed, 21 Jan 2015 00:32:13 +0000 (16:32 -0800)]
Adds inter-intra combination with wedge partitions

Also fixes some build issues with certain experimental combinations.

Results on derflr with all experiments on: +5.516%

Change-Id: I9b492f3d3556bd1f057005571dc9bee63167dd95

10 years agoSome build fixes
Deb Mukherjee [Wed, 21 Jan 2015 21:37:24 +0000 (13:37 -0800)]
Some build fixes

Related zbin boost removal.

Change-Id: I0f34d31038c29d5cb78bc5d110159df01e41e328

10 years agoRemove mode dependent zbin boost.
Paul Wilkins [Wed, 17 Dec 2014 15:35:23 +0000 (15:35 +0000)]
Remove mode dependent zbin boost.

Initial patch to remove get_zbin_mode_boost() and
cpi->zbin_mode_boost.

For now sets a dummy value of 0 for zbin extra pending
a further clean up patch.

Change-Id: I64a1e1eca2d39baa8ffb0871b515a0be05c9a6af
(cherry picked from commit 60e9b731cf8945403dbcf149a0f6dc745e5cabe1)

10 years agoCreated COMPOUND_MODES experiment.
Spencer Egart [Fri, 14 Nov 2014 19:55:58 +0000 (11:55 -0800)]
Created COMPOUND_MODES experiment.

COMPOUND_MODES experiment encodes separate MV modes for each frame in a compound
reference prediction.  Added modes NEAREST_NEARESTMV, ZERO_ZEROMV,
NEW_NEWMV, NEAREST_NEARMV, NEAR_NEARESTMV, NEW_NEARESTMV, NEAR_NEWMV,
NEW_NEARMV, and NEAREST_NEWMV.

Also enhances the wedge-partition expt to work better with compound
modes.

Results:
derflr +0.227
All experiments on: derflr +5.218

Change-Id: I719e8a34826bf1f1fe3988dac5733a845a89ef2b

10 years agoAdds wedge-partitions for compound prediction
Deb Mukherjee [Tue, 13 Jan 2015 02:09:10 +0000 (18:09 -0800)]
Adds wedge-partitions for compound prediction

Results with this experiment only: +0.642% on derflr.
With other experiments: +4.733%

Change-Id: Ieb2022f8e49ac38a7e7129e261a6bf69ae9666b9

10 years agoMerge "dpcm intra prediction for tx_skip" into nextgen
punksu [Thu, 15 Jan 2015 19:53:06 +0000 (11:53 -0800)]
Merge "dpcm intra prediction for tx_skip" into nextgen

10 years agodpcm intra prediction for tx_skip
punksu [Wed, 17 Dec 2014 05:51:27 +0000 (13:51 +0800)]
dpcm intra prediction for tx_skip

Implements vertical, horizontal, and tm dpcm intra prediction for
blocks in tx_skip mode. Typical coding gain on screen content video
is 2%~5%.

Change-Id: Idd5bd84ac59daa586ec0cd724680cef695981651

10 years agoFixed a bug in the experiment EXT_TX.
Zoe Liu [Wed, 14 Jan 2015 22:27:51 +0000 (14:27 -0800)]
Fixed a bug in the experiment EXT_TX.

Change-Id: I1adf0e916f9414e6dfe1d07cefc0693bc63b7e97

10 years agoMerge "Turn on tx_skip for inter modes" into nextgen
hui su [Wed, 14 Jan 2015 16:57:41 +0000 (08:57 -0800)]
Merge "Turn on tx_skip for inter modes" into nextgen

10 years agoMerge "Some fixes in interintra expt" into nextgen
Deb Mukherjee [Tue, 13 Jan 2015 20:34:24 +0000 (12:34 -0800)]
Merge "Some fixes in interintra expt" into nextgen

10 years agoTurn on tx_skip for inter modes
hui su [Tue, 13 Jan 2015 19:24:07 +0000 (11:24 -0800)]
Turn on tx_skip for inter modes

Fixed the mismatch issue in lossless case

Change-Id: Ia2fd98865b4687e664fdc75f62b402e8289a1968

10 years agoSome fixes in interintra expt
Deb Mukherjee [Tue, 13 Jan 2015 08:52:25 +0000 (00:52 -0800)]
Some fixes in interintra expt

Removes some redundant information when supertx and interintra
both are used.

Change-Id: I40b0fddbc1ba54607c6e8068bde128c21c14d997

10 years agoCleaned up the code a little for the CONFIG_EXT_TX experiment on the
Zoe Liu [Mon, 12 Jan 2015 20:11:37 +0000 (12:11 -0800)]
Cleaned up the code a little for the CONFIG_EXT_TX experiment on the
16x16 and 8x8 transform sizes, both for the regular case and the high
bit depth (CONFIG_VP9_HIGHBITDEPTH) case.

Change-Id: I34a9d3c73c3687f967105194ce4def48c3ec435c

10 years agoMerge "Adds an inter-intra combination mode" into nextgen
Deb Mukherjee [Mon, 12 Jan 2015 17:22:21 +0000 (09:22 -0800)]
Merge "Adds an inter-intra combination mode" into nextgen

10 years agoAdds an inter-intra combination mode
Deb Mukherjee [Thu, 8 Jan 2015 08:24:37 +0000 (00:24 -0800)]
Adds an inter-intra combination mode

A smooth weighting scheme is used to put more weight
on the intra predictor samples near the left/top boundaries
and decaying it to favor the inter predictor samples more as
we move away from these boundaries in the direction of
prediction.

Results:
derflr: +0.609% with only this experiment
derflr: +3.901% with all experiments

Change-Id: Ic9dbe599ad6162fb05900059cbd6fc88b203a09c

10 years agoMerge "Fixed a bug in the CONFIG_EXT_TX experiment for the forward 16x16 transform...
Zoe Liu [Fri, 9 Jan 2015 21:32:53 +0000 (13:32 -0800)]
Merge "Fixed a bug in the CONFIG_EXT_TX experiment for the forward 16x16 transform size when CONFIG_VP9_HIGHBITDEPTH is enabled." into nextgen

10 years agoMerge "Segment id fix in tx-skip/supertx experiment" into nextgen
Deb Mukherjee [Fri, 9 Jan 2015 18:37:59 +0000 (10:37 -0800)]
Merge "Segment id fix in tx-skip/supertx experiment" into nextgen

10 years agoMerge "Fix conflict b/w tx_skip and copy_mode in lossless mode" into nextgen
punksu [Fri, 9 Jan 2015 01:06:41 +0000 (17:06 -0800)]
Merge "Fix conflict b/w tx_skip and copy_mode in lossless mode" into nextgen

10 years agoFixed a bug in the CONFIG_EXT_TX experiment for the forward 16x16
Zoe Liu [Thu, 8 Jan 2015 17:03:53 +0000 (09:03 -0800)]
Fixed a bug in the CONFIG_EXT_TX experiment for the forward 16x16
transform size when CONFIG_VP9_HIGHBITDEPTH is enabled.

Change-Id: I475f64eac2c31094a47bc0d557968940cad01c86

10 years agoSegment id fix in tx-skip/supertx experiment
Deb Mukherjee [Mon, 29 Dec 2014 09:17:32 +0000 (01:17 -0800)]
Segment id fix in tx-skip/supertx experiment

Change-Id: Ice9e833ad7f60e943acc011260dc3121ad3b136f

10 years agoTurn off tx-skip for intermodes temporarily
Deb Mukherjee [Wed, 7 Jan 2015 02:12:56 +0000 (18:12 -0800)]
Turn off tx-skip for intermodes temporarily

Will be re-enabled when a mismatch issue is resolved.

Change-Id: I303d80effa69eeb0ebf1921bbb4eaeeb34497e4b

10 years agoFix conflict b/w tx_skip and copy_mode in lossless mode
punksu [Fri, 2 Jan 2015 12:36:06 +0000 (20:36 +0800)]
Fix conflict b/w tx_skip and copy_mode in lossless mode

Change-Id: Idb12344adda99dddde8d2cd010ffffe6425aca62

10 years agoFix mismatch in SUPERTX experiment
Yue Chen [Sun, 28 Dec 2014 04:26:26 +0000 (20:26 -0800)]
Fix mismatch in SUPERTX experiment

Disable SUPERTX mode when lossless mode is enabled because the largest
lossless transform size is 4X4.

Change-Id: I4167959a282728d62354119ced99ca29febabfd1

10 years agoMerge "Allow large tx_size in lossless coding with transform skipping" into nextgen
punksu [Sun, 28 Dec 2014 04:52:36 +0000 (20:52 -0800)]
Merge "Allow large tx_size in lossless coding with transform skipping" into nextgen

10 years agoFix frame-parallel modes
Deb Mukherjee [Sat, 27 Dec 2014 09:55:27 +0000 (01:55 -0800)]
Fix frame-parallel modes

This fix is already incorporated in master.

Change-Id: I7b0c048ebef4d92f041cc8727bc276843f17d50d

10 years agoAdds a copy mode experiment
Deb Mukherjee [Tue, 16 Dec 2014 00:39:52 +0000 (16:39 -0800)]
Adds a copy mode experiment

Experiment to copy motion and mode from block neighbors.

Results:
--------
--enable-experimental --enable-copy-mode:
derflr: +0.727%

With other expts:
--enable-experimental --enable-copy-mode --enable-supertx
--enable-ext-tx --enable-filterintra --enable-tx-skip --enable-tx64x64
derflr: +3.43%

Change-Id: Iae74b9a855a1a690bf76131b42d247bbc54dec17

10 years agoAllow large tx_size in lossless coding with transform skipping
punksu [Sat, 20 Dec 2014 06:49:44 +0000 (14:49 +0800)]
Allow large tx_size in lossless coding with transform skipping

In lossless coding, tx_size can be larger than 4x4 when transform
skipping is activated. Compared to regular vp9 lossless coding,
performance improvement for derf is about 5%; gain is larger
for screen content videos.

Change-Id: Ib20ece7e117f29fb91543612757302a2400110b4

10 years agoBug fix in rdopt
Debargha Mukherjee [Thu, 18 Dec 2014 10:43:27 +0000 (02:43 -0800)]
Bug fix in rdopt

Change-Id: Ieab80902755456e97583636f13d1417269b332b5

10 years agoAdds forward prob updates for supertx expt
Deb Mukherjee [Fri, 12 Dec 2014 22:07:02 +0000 (14:07 -0800)]
Adds forward prob updates for supertx expt

Also refactors the supertx prob models, and includes other
cleanups.

Change-Id: I74de6c01d872ae09bf6d43a31f53d43283b6b226

10 years agotx_skip mode for lossy coding
hui su [Sun, 23 Nov 2014 19:35:54 +0000 (11:35 -0800)]
tx_skip mode for lossy coding

This patch improves the non-transform coding mode. At this
point, the coding gain on screen content videos is about
12% for lossless, an 15% for lossy case.

1. Encode tx_skip flags with context. Y tx_skip flag context is
whether the prediction mode is inter or intra. UV flag context
is Y flag.

2. Transform skipping is less helpful when the Q-index is high.
So it is enabled only when the Q-index is smaller than a
threshold. Currently the threshold is set as 255 for intra blocks,
and 0 for inter blocks.

3. The shift of the prediction residue, when copying them to the
coeff buffer, is set as 3 when the Q-index is larger than a
threshold (currently set as 0), and 2 otherwise.

Change-Id: I372973c7518cf385f6e542b22d0f803016e693b0

10 years agoAdds supertx experiment adopted from playground
Deb Mukherjee [Wed, 3 Dec 2014 00:57:49 +0000 (16:57 -0800)]
Adds supertx experiment adopted from playground

Reimplements the supertx experiment from the playground branch.
Makes it work with other experiments.

Results:
With --enable-superttx
derflr: +0.958

With --enable-supertx --enable-ext-tx
derflr: +2.25%

With --enable-supertx --enable-ext-tx --enable-filterintra
derflr: +2.73%

Change-Id: I5012418ef2556bf2758146d90c4e2fb8a14610c7

10 years agoExtends ext_tx expt to include all hybrid variants
Deb Mukherjee [Sat, 15 Nov 2014 01:11:45 +0000 (17:11 -0800)]
Extends ext_tx expt to include all hybrid variants

Extends the ext-tx experiment to include all 9 DST/DCT
variants.

Results with ext_tx experiment:
derflr: +1.338 derflr (improved from 1.12)

Change-Id: I24b5564f96bce6ccaa13d88ca6cb9d0c57000597