12269 Commits

Author SHA1 Message Date
hui su
2c68b07d7d Turn on tx_skip for inter modes
Fixed the mismatch issue in lossless case

Change-Id: Ia2fd98865b4687e664fdc75f62b402e8289a1968
2015-01-13 11:28:08 -08:00
Deb Mukherjee
cb165354e7 Some fixes in interintra expt
Removes some redundant information when supertx and interintra
both are used.

Change-Id: I40b0fddbc1ba54607c6e8068bde128c21c14d997
2015-01-13 00:52:25 -08:00
Zoe Liu
919692d6c5 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
2015-01-12 12:11:37 -08:00
Deb Mukherjee
b43beffc3c Merge "Adds an inter-intra combination mode" into nextgen 2015-01-12 09:22:21 -08:00
Deb Mukherjee
2dba1221b4 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
2015-01-12 00:28:01 -08:00
Zoe Liu
b342c8405b Merge "Fixed a bug in the CONFIG_EXT_TX experiment for the forward 16x16 transform size when CONFIG_VP9_HIGHBITDEPTH is enabled." into nextgen 2015-01-09 13:32:53 -08:00
Deb Mukherjee
f61bcfbafa Merge "Segment id fix in tx-skip/supertx experiment" into nextgen 2015-01-09 10:37:59 -08:00
punksu
9100fe3944 Merge "Fix conflict b/w tx_skip and copy_mode in lossless mode" into nextgen 2015-01-08 17:06:41 -08:00
Zoe Liu
d7d5c75c69 Fixed a bug in the CONFIG_EXT_TX experiment for the forward 16x16
transform size when CONFIG_VP9_HIGHBITDEPTH is enabled.

Change-Id: I475f64eac2c31094a47bc0d557968940cad01c86
2015-01-08 09:03:53 -08:00
Deb Mukherjee
28258c5fe2 Segment id fix in tx-skip/supertx experiment
Change-Id: Ice9e833ad7f60e943acc011260dc3121ad3b136f
2015-01-08 02:05:11 -08:00
Deb Mukherjee
9a19ef0add Turn off tx-skip for intermodes temporarily
Will be re-enabled when a mismatch issue is resolved.

Change-Id: I303d80effa69eeb0ebf1921bbb4eaeeb34497e4b
2015-01-06 18:14:00 -08:00
punksu
42dfd9a728 Fix conflict b/w tx_skip and copy_mode in lossless mode
Change-Id: Idb12344adda99dddde8d2cd010ffffe6425aca62
2015-01-06 20:51:46 +08:00
Yue Chen
695c4bc321 Fix mismatch in SUPERTX experiment
Disable SUPERTX mode when lossless mode is enabled because the largest
lossless transform size is 4X4.

Change-Id: I4167959a282728d62354119ced99ca29febabfd1
2014-12-28 02:27:16 -08:00
punksu
b0ef621f84 Merge "Allow large tx_size in lossless coding with transform skipping" into nextgen 2014-12-27 20:52:36 -08:00
Deb Mukherjee
2b959d4ee8 Fix frame-parallel modes
This fix is already incorporated in master.

Change-Id: I7b0c048ebef4d92f041cc8727bc276843f17d50d
2014-12-27 01:55:27 -08:00
Deb Mukherjee
9aa76fdb69 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
2014-12-24 17:52:55 -08:00
punksu
8a41d18bd0 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
2014-12-22 22:56:52 +08:00
Debargha Mukherjee
2f7de8c887 Bug fix in rdopt
Change-Id: Ieab80902755456e97583636f13d1417269b332b5
2014-12-18 02:43:27 -08:00
Deb Mukherjee
7ec9792f96 Adds forward prob updates for supertx expt
Also refactors the supertx prob models, and includes other
cleanups.

Change-Id: I74de6c01d872ae09bf6d43a31f53d43283b6b226
2014-12-15 21:55:58 -08:00
hui su
5de9280ae9 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
2014-12-15 10:46:41 -08:00
Deb Mukherjee
625c0961ff 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
2014-12-11 16:06:23 -08:00
Deb Mukherjee
1fdc274900 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
2014-11-21 07:21:38 -08:00
Deb Mukherjee
c82de3bede Extending ext_tx expt to include dst variants
Extends the ext-tx experiment to include regular and flipped
DST variants. A total of 9 transforms are thus possible for
each inter block with transform size <= 16x16.

In this patch currently only the four ADST_ADST variants
(flipped or non-flipped in both dimensions) are enabled
for inter blocks.

The gain with the ext-tx experiment grows to +1.12 on derflr.
Further experiments are underway.

Change-Id: Ia2ed19a334face6135b064748f727fdc9db278ec
2014-11-20 14:25:40 -08:00
hui su
d97fd3eef6 Non transform coding experiment
Non-transform option is enabled in both intra and inter modes.
In lossless case, the average coding gain on screen content
clips is 11.3% in my test.

Change-Id: I2e8de515fb39e74c61bb86ce0f682d5f79e15188
2014-11-19 21:20:21 -08:00
Deb Mukherjee
e2a8e90874 Misc cleanups on ext_tx expt.
Change-Id: I599d9fb00a2accdf24def65df52bef56d014a0b6
2014-11-16 00:03:18 -08:00
Deb Mukherjee
52e4dfe1b1 Merge "Adds missing EXT_TX checks" into nextgen 2014-11-13 20:13:40 -08:00
Deb Mukherjee
f62d19752d Adds missing EXT_TX checks
Change-Id: Ia0ca39c9041f17da0b7f522e55868498f31de848
2014-11-13 15:59:50 -08:00
Spencer Egart
83e50d6412 Refactoring in nonrd_ methods in vp9_encodeframe
Refactored some of the more repetitive code in the nonrd methods in
vp9_encodeframe.c.

Change-Id: Ib71dcd14f74fb6e5fd123b3ffea8f253aaa04b1a
2014-11-13 13:00:15 -08:00
hui su
cf7dc66e34 Fix lossless mismatch in EXT_TX
In lossless mode, transform should not be altered.

Change-Id: I216d1700963b4d1c35e059cd7ff7b0cefaf46133
2014-11-13 05:07:37 -08:00
Spencer Egart
1c562aebd8 Migrate EXT_TX from playground to nextgen.
Change-Id: I1cb0584104323fb3781e66bb65d44ebbe853c9c8
2014-11-11 07:55:49 -08:00
Spencer Egart
e55808d9a7 Migrated FILTERINTRA from playground to nextgen
derf +0.385
derflr +0.411
with --enable-tx64x64, derflr +0.433

Added fix for integration with TX64X64

Change-Id: Ie24825de06021d007ba215ac7f6de40638c57e12
2014-11-10 10:13:32 -08:00
Deb Mukherjee
613ea21ae7 Tx64x64 bug fixes
Change-Id: Iac595a3ae8f1466d8485c3627219b4b623efc8ad
2014-11-05 20:19:43 -08:00
Deb Mukherjee
a137e3c3ba Fixes in 64x64 transform
Extends quantizer range and some other fixes.

Change-Id: Ia9adf7848e772783365d6501efd07585bff80c15
stdhd: +0.166%, turns positive a little
derf: -0.036% (very few blocks use the 64x64 mode)
2014-11-03 17:00:43 -08:00
Deb Mukherjee
8bdf4cebb9 Merge "Adding a 64x64 transform mode" into nextgen 2014-10-30 00:51:35 -07:00
Deb Mukherjee
0c7a94f49b Adding a 64x64 transform mode
Preliminary 64x64 transform implementation.
Includes all code changes.
All mismatches resolved.

Coding results for derf and stdhd are within noise. stdhd is slightly
higher, derf is slightly lower.

To be further refined.

Change-Id: I091c183f62b156d23ed6f648202eb96c82e69b4b
2014-10-30 00:45:57 -07:00
Jingning Han
0e64aa5073 Merge "Refactor rate distortion cost structure in non-RD coding mode" 2014-10-22 08:41:36 -07:00
Yaowu Xu
87665f16f4 Merge "Change speed features for good quality(cpu-used=5)" 2014-10-22 08:40:15 -07:00
Jingning Han
be212d4db3 Refactor rate distortion cost structure in non-RD coding mode
This commit refactors the rate distortion structure used in the
non-RD coding mode and saves a few RDCOST calculations.

Change-Id: I62c3416c300d2c5372f21b96d93a6b633a34ab3a
2014-10-21 17:17:11 -07:00
Yaowu Xu
c30f7e6cc5 Change speed features for good quality(cpu-used=5)
The existing speed features produce horrible encoding results, almost
30% worse than cpu-used=4, this commit adjust the speed features to
produce relatively resonable results to be within 3%-5% of cpu-used=4.

Change-Id: I0ca6ebafb33024d4a0cbcf04c78a4a00b8dd1ecf
2014-10-21 11:59:12 -07:00
Jingning Han
1ed1dde06d Remove unused copy_partitioning
Change-Id: I75a2a3772ed17e73180eb4f263cc838cae4927b0
2014-10-21 09:47:58 -07:00
Deb Mukherjee
6ba70ed086 Merge "Adding test vectors for profile 2 and 3" 2014-10-21 09:44:46 -07:00
Jingning Han
f2c21cfa1e Merge "Remove deprecated constrain_copy_partitioning function" 2014-10-21 09:44:11 -07:00
Jingning Han
55ec7ebca7 Merge "Remove unused sb_has_motion function in vp9_encodeframe.c" 2014-10-21 09:43:55 -07:00
Jingning Han
072d844aff Merge "Remove deprecated use_lastframe_partitioning feature" 2014-10-21 09:43:45 -07:00
Jingning Han
61ff08ef61 Merge "Hybrid partition search for rtc coding mode" 2014-10-21 09:43:35 -07:00
Paul Wilkins
4163da33c2 Merge "Extend --auto-alt-ref so it can enable multi-alt ref." 2014-10-21 07:02:24 -07:00
Paul Wilkins
889c53a507 Merge "Resolve compiler warning." 2014-10-21 07:02:13 -07:00
Deb Mukherjee
bec307acda Adding test vectors for profile 2 and 3
Also adds mising test vectors for profile 1.

Change-Id: I5269af8b9e6b708ce50a0d9c69b6cae4bb2870dc
2014-10-21 00:35:07 -07:00
Jingning Han
abb2fbb10e Remove deprecated constrain_copy_partitioning function
Its functionality has been replaced with choose_partitioning and
threshold based control on split mode check.

Change-Id: Ic9bb321df06b524f5c38ea5874dc6f6a8f93c5e3
2014-10-20 17:08:21 -07:00
Jingning Han
ef53898c48 Remove unused sb_has_motion function in vp9_encodeframe.c
Change-Id: I035fb6aa5c10741b065e27befb097d8087e3c62f
2014-10-20 17:08:11 -07:00