]> granicus.if.org Git - libvpx/log
libvpx
7 years agoResolve -Wshorten-64-to-32 in highbd variance.
James Zern [Wed, 5 Apr 2017 03:37:17 +0000 (20:37 -0700)]
Resolve -Wshorten-64-to-32 in highbd variance.

For 8-bit the subtrahend is small enough to fit into uint32_t.

This is the same that was done for:
c0241664a Resolve -Wshorten-64-to-32 in variance.

For 10/12-bit apply:
63a37d16f Prevent negative variance

Change-Id: Iab35e3f3f269035e17c711bd6cc01272c3137e1d

7 years agovp9: Remove legacy comments for avg_source_sad.
Jerome Jiang [Tue, 4 Apr 2017 23:28:27 +0000 (16:28 -0700)]
vp9: Remove legacy comments for avg_source_sad.

Change-Id: Ia6e8614535a097f17f37fc382cef8e22e03b70f6

7 years agovp9: Adjust condition of golden update with cyclic refresh.
Marco [Tue, 4 Apr 2017 16:53:13 +0000 (09:53 -0700)]
vp9: Adjust condition of golden update with cyclic refresh.

Base the low_content_frame metric on the motion vectors,
and adjust the logic for preventing golden update.

Small change in behavior: small positive gain (~0.2-1%) on clips
with high activity.

Change-Id: I0b861c8e9666cd82b45cde5ee57ee8a1e5ab453c

7 years agovp9: 1 pass CBR: cleanup to cyclic refresh.
Marco [Wed, 29 Mar 2017 23:57:53 +0000 (16:57 -0700)]
vp9: 1 pass CBR: cleanup to cyclic refresh.

Code cleanup: merged two functions that were doing postencode
update for cylic refresh, remove some unused code and fix comments.

No change in behavior.

Change-Id: I9be0d7e346d34dec29bf4e5bb380a7bf81c8480a

7 years agoMerge "Fix for out of range motion vector bug in sub-pel motion estimation"
Yunqing Wang [Mon, 3 Apr 2017 18:27:56 +0000 (18:27 +0000)]
Merge "Fix for out of range motion vector bug in sub-pel motion estimation"

7 years agoMerge "vp9: SVC: Fix issue with artifact for svc-denoising."
Marco Paniconi [Mon, 3 Apr 2017 16:23:25 +0000 (16:23 +0000)]
Merge "vp9: SVC: Fix issue with artifact for svc-denoising."

7 years agoFix for out of range motion vector bug in sub-pel motion estimation
Ranjit Kumar Tulabandu [Wed, 22 Mar 2017 14:08:59 +0000 (19:38 +0530)]
Fix for out of range motion vector bug in sub-pel motion estimation

BUG=webm:1397

(yunqingwang)
To verify that this patch wouldn't cause much performance change,
the Borg tests were run. Here was the result:
       avg_psnr   overall_psnr  ssim
hdres: -0.002     0.006         0.013
midres:   0         0             0
lowres:   0         0             0

Change-Id: Iae395ae7b741e0513cf5bab9dcace110b792a67d

7 years agoMerge "Enhance the row mt sync read to accept the sync_range greater than 1"
Yunqing Wang [Mon, 3 Apr 2017 15:59:50 +0000 (15:59 +0000)]
Merge "Enhance the row mt sync read to accept the sync_range greater than 1"

7 years agoEnhance the row mt sync read to accept the sync_range greater than 1
Yunqing Wang [Tue, 28 Mar 2017 18:27:31 +0000 (11:27 -0700)]
Enhance the row mt sync read to accept the sync_range greater than 1

The row mt sync read uses sync_range = 1, and wouldn't work if we want
to use a sync_range that is greater than 1. To make it work, this sync
read code is modified. Pass in col instead of col - 1 to make it
consistent with other row mt code in VP9, and then add 1 in "while"
codition.

Change-Id: I4a0e487190ac5d47b8216368da12d80fec779c1a

7 years agovp9: SVC: Fix issue with artifact for svc-denoising.
Marco [Fri, 31 Mar 2017 00:08:44 +0000 (17:08 -0700)]
vp9: SVC: Fix issue with artifact for svc-denoising.

Issue/bug happens for denoising with spatial layers, where
the golden (spatial) reference is used in pickmode, but
denoising is only done wrt to last (temporal).

Fix is to make sure set_ref_ptrs is set before build predictors
in denoiser.

Change-Id: I793cf441341edf7c4a88b8ab1e1b22b3cb0eb508

7 years agoMerge changes from topic 'rm-dec-frame-parallel'
James Zern [Thu, 30 Mar 2017 19:07:43 +0000 (19:07 +0000)]
Merge changes from topic 'rm-dec-frame-parallel'

* changes:
  vpxdec: silently ignore -frame-parallel
  vp9: make VPX_CODEC_USE_FRAME_THREADING a no-op

7 years agovpxdec: silently ignore -frame-parallel
James Zern [Thu, 30 Mar 2017 06:31:53 +0000 (23:31 -0700)]
vpxdec: silently ignore -frame-parallel

BUG=webm:1395

Change-Id: Ibf47cc931e51b71e49067c6d7b7a39ab57c11c96

7 years agovp9: make VPX_CODEC_USE_FRAME_THREADING a no-op
James Zern [Thu, 30 Mar 2017 06:30:11 +0000 (23:30 -0700)]
vp9: make VPX_CODEC_USE_FRAME_THREADING a no-op

this is unmaintained and due to be removed

BUG=webm:1395

Change-Id: Iaffa6aa057c820fd1a182b93ebb45d4286e1306e

7 years agortcd,unit tests: fix ppc64 build
James Zern [Thu, 30 Mar 2017 05:51:22 +0000 (22:51 -0700)]
rtcd,unit tests: fix ppc64 build

match ppc* in rtcd to ensure vsx is included

Change-Id: I331a5d35e7160eeb69ebd14b98ba03ec5be6c600

7 years agovp9: SVC: fix to allow output of denoised result.
Marco [Wed, 29 Mar 2017 21:01:57 +0000 (14:01 -0700)]
vp9: SVC: fix to allow output of denoised result.

Change-Id: Iaf55cfb5e9621d074eb33d6a32f184e4777968f8

7 years agovp9: 1 pass SVC: Modify condition for intra-mode search.
Marco [Wed, 29 Mar 2017 16:13:56 +0000 (09:13 -0700)]
vp9: 1 pass SVC: Modify condition for intra-mode search.

Temporary override to condition for disallowing intra-search in SVC,
since golden (spatial) reference is currently suppressed due to
artifact issue.

Change-Id: I28ed7fdddc9fcdbcc0a4175a247a3ecc94c11767

7 years agoMerge "rate_hist: add parameter validation"
James Zern [Wed, 29 Mar 2017 02:41:07 +0000 (02:41 +0000)]
Merge "rate_hist: add parameter validation"

7 years agoMerge changes from topic 'sync-highbd-intrapred'
James Zern [Wed, 29 Mar 2017 02:39:21 +0000 (02:39 +0000)]
Merge changes from topic 'sync-highbd-intrapred'

* changes:
  intrapred: sync highbd_d135_predictor w/d135_
  intrapred: specialize highbd 4x4 predictors
  intrapred: rename d63f to d63e
  remove CONFIG_MISC_FIXES

7 years agoMerge ".mailmap: add an additional entry for Yaowu Xu"
James Zern [Wed, 29 Mar 2017 01:56:57 +0000 (01:56 +0000)]
Merge ".mailmap: add an additional entry for Yaowu Xu"

7 years agoMerge "vpx_comp_avg_pred: add test"
Johann Koenig [Tue, 28 Mar 2017 21:50:00 +0000 (21:50 +0000)]
Merge "vpx_comp_avg_pred: add test"

7 years agovpx_comp_avg_pred: add test
Johann [Thu, 23 Mar 2017 20:04:28 +0000 (13:04 -0700)]
vpx_comp_avg_pred: add test

BUG=webm:1389

Change-Id: I23cd65f1939db026958ccb5d70b8c5cc9aa5bc51

7 years agovp9: Speed >= 8: avoid chrome check under some condition.
Marco [Fri, 24 Mar 2017 18:31:19 +0000 (11:31 -0700)]
vp9: Speed >= 8: avoid chrome check under some condition.

For non-rd variance partition, avoid the chrome check
unless y_sad is below some threshold.

Small decrease in avgPSNR (~0.3) on RTC set.
Small/negligible decrease on RTC_derf.

Change-Id: I7af44235af514058ccf9a4f10bb737da9d720866

7 years agovp9: 1 pass: Move source sad computation into encodeframe loop.
Marco [Thu, 23 Mar 2017 21:37:47 +0000 (14:37 -0700)]
vp9: 1 pass: Move source sad computation into encodeframe loop.

Refactor to split the 1 passs source sad computation into scene
detection (currently used for VBR and screen-content mode), and
superblock based source sad computation (used in non-rd CBR mode).

This allows the source sad computation for CBR mode to be
multi-threaded.

No change in compression.

Change-Id: I112f2918613ccbd37c1771d852606d3af18c1388

7 years agointrapred: sync highbd_d135_predictor w/d135_
James Zern [Tue, 21 Mar 2017 03:24:30 +0000 (20:24 -0700)]
intrapred: sync highbd_d135_predictor w/d135_

previously:
05437805f intrapred/d135: flatten border results before storing

BUG=webm:1316

Change-Id: I3b8bd89117ad7f2f4560b57f7c148da781e86f85

7 years agointrapred: specialize highbd 4x4 predictors
James Zern [Sat, 25 Mar 2017 02:24:39 +0000 (19:24 -0700)]
intrapred: specialize highbd 4x4 predictors

d207/d63/d45/d117/d135/d153

~9-45% better depending on the predictor on 32-bit ARM, similar range on
x86-64

this matches the non-highbitdepth implementation

BUG=webm:1316

Change-Id: Iddebdf7c58c6f31c47cae04da95c6e5318200e4c

7 years agointrapred: rename d63f to d63e
James Zern [Sat, 25 Mar 2017 02:22:41 +0000 (19:22 -0700)]
intrapred: rename d63f to d63e

this is consistent with he/ve/d45e

Change-Id: I75641ae5667430b0ecd370db86fff6e666cb577d

7 years agoremove CONFIG_MISC_FIXES
James Zern [Sat, 25 Mar 2017 01:56:15 +0000 (18:56 -0700)]
remove CONFIG_MISC_FIXES

this belonged to vp10 with the changes now migrated to av1.

Change-Id: Ie30ead3e7b71f465bc14136e1b6f156ea978c43f

7 years agovp9: Fix to condition on using source_sad for 1 pass real-time.
Marco [Thu, 23 Mar 2017 21:32:43 +0000 (14:32 -0700)]
vp9: Fix to condition on using source_sad for 1 pass real-time.

Make the source_sad feature work properly for cases of VBR or
screen_content with SVC.

Added unittest for SVC with screen-content on.

Change-Id: Iba5254fd8833fb11da521e00cc1317ec81d3f89b

7 years agorate_hist: add parameter validation
James Zern [Thu, 23 Mar 2017 21:47:07 +0000 (14:47 -0700)]
rate_hist: add parameter validation

tolerate a NULL hist being passed as a result of invalid parameters
passed to init_rate_histogram(). this fixes a divide by zero in
init_rate_histogram() with an invalid fps.

BUG=webm:1383

Change-Id: Id203e0f3b18d67a4a09aaf206abcce4708f966ec

7 years agoMerge "vp9 temporal filter: additional test"
Johann Koenig [Thu, 23 Mar 2017 18:38:35 +0000 (18:38 +0000)]
Merge "vp9 temporal filter: additional test"

7 years agoMerge changes Ie989e60c,Ifc110b12
Alex Converse [Thu, 23 Mar 2017 18:05:13 +0000 (18:05 +0000)]
Merge changes Ie989e60c,Ifc110b12

* changes:
  Backport "Optimize the use case of token_cost table" to VP9
  Drop vp9_get_token_extracost

7 years agoMerge "vp9: Non-rd partition: avoid unneeded call to chrome_check"
Marco Paniconi [Thu, 23 Mar 2017 14:17:48 +0000 (14:17 +0000)]
Merge "vp9: Non-rd partition: avoid unneeded call to chrome_check"

7 years agoMerge "Fix mips msa fwd xform mismatch"
Kaustubh Raste [Thu, 23 Mar 2017 07:44:16 +0000 (07:44 +0000)]
Merge "Fix mips msa fwd xform mismatch"

7 years agovp9: Non-rd partition: avoid unneeded call to chrome_check
Marco [Thu, 23 Mar 2017 05:36:19 +0000 (22:36 -0700)]
vp9: Non-rd partition: avoid unneeded call to chrome_check

Since y_sad is not computed yet (on the early exit due to source_sad),
no need to check for setting color_sensitiviy.

Only affects speed >=8. No change in behavior.

Change-Id: I3a6f2d20fed38d8b8ec51b75bcacf9a21f2db916

7 years agoMerge "vp9_rdopt: correct size to vpx_sum_squares_2d_i16"
James Zern [Thu, 23 Mar 2017 00:53:21 +0000 (00:53 +0000)]
Merge "vp9_rdopt: correct size to vpx_sum_squares_2d_i16"

7 years agoMerge "vp9: Adjust some speed settings for speed 8."
Marco Paniconi [Wed, 22 Mar 2017 22:56:17 +0000 (22:56 +0000)]
Merge "vp9: Adjust some speed settings for speed 8."

7 years agovp9: Adjust some speed settings for speed 8.
Marco [Wed, 22 Mar 2017 19:15:06 +0000 (12:15 -0700)]
vp9: Adjust some speed settings for speed 8.

Allow for simple_block_rd for VGA resoln, and reduce
adaptive_rd_thresh to 1.

On average no loss on RTC set, ~4% speedup on mac.

Change-Id: Ib549c4061c853776062b5e34040f839d470fbebc

7 years agoMerge "vp9: Enable adaptive_rd_threshold for row mt for realtime speed 8."
Jerome Jiang [Wed, 22 Mar 2017 22:02:24 +0000 (22:02 +0000)]
Merge "vp9: Enable adaptive_rd_threshold for row mt for realtime speed 8."

7 years agovp9 temporal filter: additional test
Johann [Wed, 22 Mar 2017 18:04:20 +0000 (11:04 -0700)]
vp9 temporal filter: additional test

Change tests to reflect use. Input sizes will be 8 or 16 (but not
necessarily square).

filter_weight is capped at 2 and filter_strength at 6

Speed test, disabled by default.

Change-Id: Idfde9d6c4b7d93aaf0e641b0f4862c15e2a2af7a

7 years agoMerge "vp9 temporal filter: add const to function prototype"
Johann Koenig [Wed, 22 Mar 2017 19:36:40 +0000 (19:36 +0000)]
Merge "vp9 temporal filter: add const to function prototype"

7 years agoMerge "idct_neon: prefix non-static functions w/'vpx_'"
James Zern [Wed, 22 Mar 2017 19:30:11 +0000 (19:30 +0000)]
Merge "idct_neon: prefix non-static functions w/'vpx_'"

7 years agovp9_rdopt: correct size to vpx_sum_squares_2d_i16
James Zern [Wed, 22 Mar 2017 06:29:12 +0000 (23:29 -0700)]
vp9_rdopt: correct size to vpx_sum_squares_2d_i16

the current implementations expect pixel size, not the block type

BUG=webm:1392

Change-Id: Ib91e9f30a1f56e13566b1fb76f089dae9bb50cdc

7 years agoidct_neon: prefix non-static functions w/'vpx_'
James Zern [Tue, 21 Mar 2017 05:46:53 +0000 (22:46 -0700)]
idct_neon: prefix non-static functions w/'vpx_'

Change-Id: I94fcdeae18468e6ef0cb7119b8142d982a048031

7 years agovp9 temporal filter: add const to function prototype
Johann [Wed, 22 Mar 2017 17:15:22 +0000 (10:15 -0700)]
vp9 temporal filter: add const to function prototype

The input frames are not modified.

Change-Id: Ideb810e3c5afeb4dbdc4c7d54024c43a8129ad39

7 years agoFix mips msa fwd xform mismatch
Kaustubh Raste [Wed, 22 Mar 2017 08:31:03 +0000 (14:01 +0530)]
Fix mips msa fwd xform mismatch

Change-Id: I32a6df11463144aa1a562256ee7d57a41fd678d6

7 years agovp9: Enable adaptive_rd_threshold for row mt for realtime speed 8.
Jerome Jiang [Tue, 14 Mar 2017 20:45:20 +0000 (13:45 -0700)]
vp9: Enable adaptive_rd_threshold for row mt for realtime speed 8.

Change it to row based array to avoid the slow down cause by sync.
row-mt on, speed 8, 2 threads: ~4% speedup for VGA on ARM benefited
from adaptive_rd_threshold.

Change-Id: I887e65a53af20a6c4f48d293daaee09dab3512cf

7 years agoMerge "vp9: Modify datarate tests to cover denoising with multi-threading."
Marco Paniconi [Tue, 21 Mar 2017 23:44:05 +0000 (23:44 +0000)]
Merge "vp9: Modify datarate tests to cover denoising with multi-threading."

7 years agoMerge "Fix the data race caused by vp9 denoiser."
Jerome Jiang [Tue, 21 Mar 2017 23:27:48 +0000 (23:27 +0000)]
Merge "Fix the data race caused by vp9 denoiser."

7 years agovp9: Modify datarate tests to cover denoising with multi-threading.
Marco [Tue, 21 Mar 2017 05:15:13 +0000 (22:15 -0700)]
vp9: Modify datarate tests to cover denoising with multi-threading.

Change-Id: I6ed48a630edf9923c25a05deaca50e0afec43918

7 years agoFix the data race caused by vp9 denoiser.
Jerome Jiang [Tue, 21 Mar 2017 22:33:42 +0000 (15:33 -0700)]
Fix the data race caused by vp9 denoiser.

BUG=webm:1391

Change-Id: I9669ae62fe9c695d4c6f9973094cb0f39bed51c7

7 years agoMerge "Make butterfly_self() signature consistent with butterfly()"
Yi Luo [Tue, 21 Mar 2017 22:32:20 +0000 (22:32 +0000)]
Merge "Make butterfly_self() signature consistent with butterfly()"

7 years agoCode refactoring in the partition search
Yunqing Wang [Tue, 21 Mar 2017 16:47:55 +0000 (09:47 -0700)]
Code refactoring in the partition search

Computed the partition search early termination score in a separate
function.

Change-Id: I1894b517ff179a38b1c05e054d373ac4b7f4cbb4

7 years agoMake butterfly_self() signature consistent with butterfly()
Yi Luo [Tue, 21 Mar 2017 00:18:10 +0000 (17:18 -0700)]
Make butterfly_self() signature consistent with butterfly()

- Refer to patch: 48fca113d inv_txfm_ssse3,butterfly: fix win32 abi
  compatibility.
- Change four butterfly() calls to butterfly_self(), to simplify the
  operations.

Change-Id: Ib2a8cfe6cddcaf0a59e6e6270d8380055ea42ef3

7 years ago.mailmap: add an additional entry for Yaowu Xu
James Zern [Tue, 21 Mar 2017 05:39:40 +0000 (22:39 -0700)]
.mailmap: add an additional entry for Yaowu Xu

Change-Id: I26b928848a7e72ff5ca25001ed6991c95f5992a5

7 years agoMerge "Add vpx_highbd_idct32x32_1024_add_neon()"
James Zern [Tue, 21 Mar 2017 03:27:35 +0000 (03:27 +0000)]
Merge "Add vpx_highbd_idct32x32_1024_add_neon()"

7 years agoMerge "Add vpx_highbd_idct32x32_34_add_neon()"
James Zern [Tue, 21 Mar 2017 03:02:50 +0000 (03:02 +0000)]
Merge "Add vpx_highbd_idct32x32_34_add_neon()"

7 years agoMerge "vp9: Nonrd variance partition: improve split to 16x16."
Marco Paniconi [Tue, 21 Mar 2017 00:17:35 +0000 (00:17 +0000)]
Merge "vp9: Nonrd variance partition: improve split to 16x16."

7 years agoMerge "Record the sum of tx block eobs in the partition block"
Yunqing Wang [Mon, 20 Mar 2017 23:20:12 +0000 (23:20 +0000)]
Merge "Record the sum of tx block eobs in the partition block"

7 years agovp9: Nonrd variance partition: improve split to 16x16.
Marco [Mon, 20 Mar 2017 16:16:23 +0000 (09:16 -0700)]
vp9: Nonrd variance partition: improve split to 16x16.

Add additional condition to split to 16x16, for resolutions <= 360p,
reduces dragging artifact near moving boundary.

Small/no change on RTC metrics.

Change-Id: I314694f2166435d918f74e7ab42f002b07f40dae

7 years agoMerge "vp9: Use sb content measure to bias against golden."
Marco Paniconi [Mon, 20 Mar 2017 21:35:11 +0000 (21:35 +0000)]
Merge "vp9: Use sb content measure to bias against golden."

7 years agovp9: Use sb content measure to bias against golden.
Marco [Thu, 16 Mar 2017 22:55:33 +0000 (15:55 -0700)]
vp9: Use sb content measure to bias against golden.

For each superblock, keep track of how far from current frame
was the last significant content change, and use that (along
with GF distance), to turnoff GF search in non-rd pickmode.

Only enabled for speed >= 8.

avgPNSR on RTC/RTC_derf down by ~0.9/1.2.
Speedup on mac: ~3-5%.
Speedup on arm: 3.6% for VGA and 4.4% for HD.

Change-Id: Ic3f3d6a2af650aca6ba0064d2b1db8d48c035ac7

7 years agoMerge "temporal filter test: update types"
Johann Koenig [Mon, 20 Mar 2017 19:05:54 +0000 (19:05 +0000)]
Merge "temporal filter test: update types"

7 years agoRecord the sum of tx block eobs in the partition block
Yunqing Wang [Thu, 16 Mar 2017 22:45:07 +0000 (15:45 -0700)]
Record the sum of tx block eobs in the partition block

The sum of tx bloxk eobs is needed in the machine learning based partition
early termination. The eobs are first accumulated during tx search, and
then the value associated with the best tx_size is copied to ctx for later
use.

After the sum of eobs are calculated correctly, re-enabled
ml_partition_search_early_termination speed feature.

Re-did the quality/speed test to check the impact of the fix.

1. Borg test BDRATE result:
4k set:     PSNR: +0.183%; SSIM: +0.100%;
hdres set:  PSNR: +0.168%; SSIM: +0.256%;
midres set: PSNR: +0.186%; SSIM: +0.326%;

2.Average speed gain result:
4k clips: 21%;
hd clips: 26%;
midres clips: 15%.

The result is in line with the original result.

Change-Id: I4209a95c89be03b4cbfb6a95b16885f89feddbda

7 years agoBackport "Optimize the use case of token_cost table" to VP9
Jingning Han [Fri, 17 Mar 2017 19:34:54 +0000 (12:34 -0700)]
Backport "Optimize the use case of token_cost table" to VP9

cherry picked from nextgenv2 90ea281f29df747282e56d3068a3ddbdde30cdd0

Change-Id: Ie989e60c6479ac3251cadaac9c7e795ccba52f4e

7 years agoDrop vp9_get_token_extracost
Alex Converse [Fri, 17 Mar 2017 23:24:45 +0000 (16:24 -0700)]
Drop vp9_get_token_extracost

vp9_get_token_cost does the same thing with one fewer lookup.

Change-Id: Ifc110b12403cb1a04a3f91357ab435c67b4815d6

7 years agoMerge "inv_txfm_sse2: clear conversion warning in hbd build"
James Zern [Fri, 17 Mar 2017 21:48:20 +0000 (21:48 +0000)]
Merge "inv_txfm_sse2: clear conversion warning in hbd build"

7 years agotemporal filter test: update types
Johann [Fri, 17 Mar 2017 20:19:45 +0000 (13:19 -0700)]
temporal filter test: update types

Use 'int' for w/h since it is that way everywhere else.

Pass Buffer pointers

Change-Id: I9eef6890af657baba171c6bcfcc85fc976173399

7 years agoMerge "test: add vp9_temporal_filter_apply test"
Johann Koenig [Fri, 17 Mar 2017 18:18:05 +0000 (18:18 +0000)]
Merge "test: add vp9_temporal_filter_apply test"

7 years agoMerge "vp9_optimize_b: Combine extrabits cost with token lookup"
Alex Converse [Fri, 17 Mar 2017 16:18:20 +0000 (16:18 +0000)]
Merge "vp9_optimize_b: Combine extrabits cost with token lookup"

7 years agoinv_txfm_sse2: clear conversion warning in hbd build
James Zern [Fri, 17 Mar 2017 08:16:38 +0000 (01:16 -0700)]
inv_txfm_sse2: clear conversion warning in hbd build

tran_high -> tran_low in return from dct_const_round_shift()

Change-Id: I2fe06c4b604823b1d1fe40a487017c3c2819a440

7 years agoAdd vpx_highbd_idct32x32_1024_add_neon()
Linfeng Zhang [Wed, 15 Mar 2017 18:31:35 +0000 (11:31 -0700)]
Add vpx_highbd_idct32x32_1024_add_neon()

BUG=webm:1301

Change-Id: Ib90af0c1712e56b301d0e981dbe9a641e15e36ca

7 years agoAdd vpx_highbd_idct32x32_34_add_neon()
Linfeng Zhang [Tue, 14 Mar 2017 21:07:25 +0000 (14:07 -0700)]
Add vpx_highbd_idct32x32_34_add_neon()

BUG=webm:1301

Change-Id: I74dd16c6c64e7bb71aa991cedccddf0663ef5e06

7 years agoMerge "Add vpx_highbd_idct32x32_135_add_neon()"
James Zern [Fri, 17 Mar 2017 07:26:52 +0000 (07:26 +0000)]
Merge "Add vpx_highbd_idct32x32_135_add_neon()"

7 years agoAdd vpx_highbd_idct32x32_135_add_neon()
Linfeng Zhang [Tue, 14 Mar 2017 17:16:35 +0000 (10:16 -0700)]
Add vpx_highbd_idct32x32_135_add_neon()

BUG=webm:1301

Change-Id: I58c2d65d385080711c3666d6d8f9d241dac7b21a

7 years agoMerge "Clean vpx_idct32x32_1024_add_neon()"
James Zern [Fri, 17 Mar 2017 05:24:57 +0000 (05:24 +0000)]
Merge "Clean vpx_idct32x32_1024_add_neon()"

7 years agovp9: Fix speed 8 condition for enabling copy_partition.
Marco [Fri, 17 Mar 2017 00:05:42 +0000 (17:05 -0700)]
vp9: Fix speed 8 condition for enabling copy_partition.

Change-Id: I2c090e6ba853a30fef1957b620853315f9471753

7 years agovp9_optimize_b: Combine extrabits cost with token lookup
Alex Converse [Thu, 16 Mar 2017 23:34:26 +0000 (16:34 -0700)]
vp9_optimize_b: Combine extrabits cost with token lookup

About 0.6% fewer cycles spent in vp9_optimize_b.

Change-Id: I2ae62a78374c594ed81d4e3100a5848e2f6f2c4e

7 years agoAdd a vector form of routine vp9_model_rd_from_var_lapndz
Gabriel Marin [Wed, 14 Dec 2016 20:07:34 +0000 (12:07 -0800)]
Add a vector form of routine vp9_model_rd_from_var_lapndz

Add routine vp9_model_rd_from_var_lapndz_vec and call it from model_rd_for_sb
to model the rate and distortion for MAX_MB_PLANE Laplacian sources in
parallel. The caller ensures that all sources have non-zero variance.

Measured a 18% to 25% reduction in retired instructions, and 17% to 24%
reduction in instruction execution cost with different compilers for the
Laplacian modeling.

No change in behavior.

TEST=Verified that encoded files match bit for bit, with and without this
change.
BUG=b/33678225

Change-Id: I6b76947f21c659a349adb896e13e99f6e3f951e6

7 years agoMerge "vp9: Fixes in non-rd pickmode for denoising with SVC."
Marco Paniconi [Thu, 16 Mar 2017 21:53:38 +0000 (21:53 +0000)]
Merge "vp9: Fixes in non-rd pickmode for denoising with SVC."

7 years agoMerge "Remove ppc-linux-gcc target"
Johann Koenig [Thu, 16 Mar 2017 21:53:17 +0000 (21:53 +0000)]
Merge "Remove ppc-linux-gcc target"

7 years agoMerge "Add Hadamard for Power8"
Johann Koenig [Thu, 16 Mar 2017 21:52:15 +0000 (21:52 +0000)]
Merge "Add Hadamard for Power8"

7 years agovp9: Fixes in non-rd pickmode for denoising with SVC.
Marco [Thu, 16 Mar 2017 19:47:44 +0000 (12:47 -0700)]
vp9: Fixes in non-rd pickmode for denoising with SVC.

Don't denoise spatial layer frames whose base layer is a key frame.

Disallow golden reference for SVC with denoising on frames
that will be denoised (highest layer), as this removes bad artifact.
Will re-enable when issue is resolved.

Change-Id: I87a6597812330500966458172acfce54af65f70f

7 years agovpx_codec.h: include vpx/*.h -> ./*.h
Marco [Tue, 14 Mar 2017 17:38:50 +0000 (10:38 -0700)]
vpx_codec.h: include vpx/*.h -> ./*.h

This matches the other includes and also fixes a compile issue in
chromium.

Change-Id: I45e00a1454f7ed948aa3b96b04cc5946b1d02985

7 years agoMerge "Refactor: Change cpi->resize_state to enum values."
Jerome Jiang [Thu, 16 Mar 2017 16:43:41 +0000 (16:43 +0000)]
Merge "Refactor: Change cpi->resize_state to enum values."

7 years agoMerge "vp8: Fix compiler warning in vp8 pickinter.c"
Marco Paniconi [Thu, 16 Mar 2017 05:13:38 +0000 (05:13 +0000)]
Merge "vp8: Fix compiler warning in vp8 pickinter.c"

7 years agoAdd Hadamard for Power8
Rafael de Lucena Valle [Thu, 20 Oct 2016 00:21:09 +0000 (22:21 -0200)]
Add Hadamard for Power8

Change-Id: I3b4b043c1402b4100653ace4869847e030861b18
Signed-off-by: Rafael de Lucena Valle <rafaeldelucena@gmail.com>
7 years agoMerge "vp9: Fix some issues with denoiser and SVC."
Marco Paniconi [Thu, 16 Mar 2017 02:42:55 +0000 (02:42 +0000)]
Merge "vp9: Fix some issues with denoiser and SVC."

7 years agovp9: Fix some issues with denoiser and SVC.
Marco [Wed, 15 Mar 2017 23:51:34 +0000 (16:51 -0700)]
vp9: Fix some issues with denoiser and SVC.

Fix the update of the denoiser buffer when the base
spatial layer is a key frame. And allow for better/lower
QP on high spatial layers when their base layer is key frame.

Change-Id: I96b2426f1eaa43b8b8d4c31a68b0c6d68c3024a2

7 years agoRefactor: Change cpi->resize_state to enum values.
Jerome Jiang [Mon, 13 Mar 2017 21:08:32 +0000 (14:08 -0700)]
Refactor: Change cpi->resize_state to enum values.

Change-Id: Iab1409b0fc1175bc5a14afc4749a08c536c98c41

7 years agovp9: Turn off ml_partition_search_early_termination.
Marco [Wed, 15 Mar 2017 20:44:26 +0000 (13:44 -0700)]
vp9: Turn off ml_partition_search_early_termination.

Fails on nightly ubsan, valgrind tests.
Enabled on commit:6701014

Change-Id: Ied3f5cb38e39cba54ac134f4514107cdfdfce159

7 years agovp8: Fix compiler warning in vp8 pickinter.c
Marco [Wed, 15 Mar 2017 18:44:07 +0000 (11:44 -0700)]
vp8: Fix compiler warning in vp8 pickinter.c

Change-Id: I0e5714538fe53d885a2201d808846901ae8fc288

7 years agoClean vpx_idct32x32_1024_add_neon()
Linfeng Zhang [Tue, 14 Mar 2017 22:14:34 +0000 (15:14 -0700)]
Clean vpx_idct32x32_1024_add_neon()

Change-Id: I05921e16d6a3e4e7e5b00a90624735050a186636

7 years agoMerge "Improve idct32x32_1024_add SSSE3 intrinsics performance"
Yi Luo [Wed, 15 Mar 2017 02:32:52 +0000 (02:32 +0000)]
Merge "Improve idct32x32_1024_add SSSE3 intrinsics performance"

7 years agoMerge "Fix overflow issue in 32x32 idct NEON intrinsics"
Linfeng Zhang [Wed, 15 Mar 2017 00:38:17 +0000 (00:38 +0000)]
Merge "Fix overflow issue in 32x32 idct NEON intrinsics"

7 years agoMerge "vp9: Using source sad for speedup for dynamic resizing."
Jerome Jiang [Wed, 15 Mar 2017 00:03:52 +0000 (00:03 +0000)]
Merge "vp9: Using source sad for speedup for dynamic resizing."

7 years agoFix overflow issue in 32x32 idct NEON intrinsics
Linfeng Zhang [Tue, 14 Mar 2017 16:31:52 +0000 (09:31 -0700)]
Fix overflow issue in 32x32 idct NEON intrinsics

Similar issue as Change bc1c18e.

The PartialIDctTest.ResultsMatch test on vpx_idct32x32_135_add_neon()
in high bit-depth mode exposes 16-bit overflow in final stage of pass
2, when changing the test number from 1,000 to 1,000,000.

Change to use saturating add/sub for vpx_idct32x32_34_add_neon(),
vpx_idct32x32_135_add_neon and vpx_idct32x32_1024_add_neon() in high
bit-depth mode.

Change-Id: Iaec0e9aeab41a3fdb4e170d7e9b3ad1fda922f6f

7 years agoMerge "vp9: Enable row multithreading for SVC in real-time mode."
Jerome Jiang [Tue, 14 Mar 2017 23:29:46 +0000 (23:29 +0000)]
Merge "vp9: Enable row multithreading for SVC in real-time mode."

7 years agovp9: Using source sad for speedup for dynamic resizing.
Jerome Jiang [Mon, 13 Mar 2017 22:27:02 +0000 (15:27 -0700)]
vp9: Using source sad for speedup for dynamic resizing.

Only for speed >= 7.

Change-Id: I3ac85fbb4023cf7e6f8333806b345b0174382a09

7 years agoImprove idct32x32_1024_add SSSE3 intrinsics performance
Yi Luo [Mon, 6 Mar 2017 23:11:49 +0000 (15:11 -0800)]
Improve idct32x32_1024_add SSSE3 intrinsics performance

- Function level speed improves ~12%.

Change-Id: I9b7dbddabf08c7d0f6b25264e6074d5ccbe39290

7 years agoMerge "vp9/encoder: fix segfault on win32 using vs < 2015"
James Zern [Tue, 14 Mar 2017 19:21:42 +0000 (19:21 +0000)]
Merge "vp9/encoder: fix segfault on win32 using vs < 2015"