]> granicus.if.org Git - libvpx/log
libvpx
8 years agoMerge "[vpx highbd lpf NEON 4/6] vertical 8"
Linfeng Zhang [Wed, 12 Oct 2016 19:31:06 +0000 (19:31 +0000)]
Merge "[vpx highbd lpf NEON 4/6] vertical 8"

8 years ago[vpx highbd lpf NEON 4/6] vertical 8
Linfeng Zhang [Wed, 5 Oct 2016 18:08:58 +0000 (11:08 -0700)]
[vpx highbd lpf NEON 4/6] vertical 8

BUG=webm:1300

Change-Id: If06b12bc081bab60059b100414dd7018f83ac62d

8 years agoMerge "Optimize vp8 loopfilter msa functions"
Kaustubh Raste [Wed, 12 Oct 2016 05:44:10 +0000 (05:44 +0000)]
Merge "Optimize vp8 loopfilter msa functions"

8 years agoMerge "[vpx highbd lpf NEON 3/6] horizontal 8"
James Zern [Wed, 12 Oct 2016 05:35:48 +0000 (05:35 +0000)]
Merge "[vpx highbd lpf NEON 3/6] horizontal 8"

8 years ago[vpx highbd lpf NEON 3/6] horizontal 8
Linfeng Zhang [Wed, 5 Oct 2016 17:59:10 +0000 (10:59 -0700)]
[vpx highbd lpf NEON 3/6] horizontal 8

BUG=webm:1300

Change-Id: Ica2379e294be60b7f80fcfcec110dca4c3b59d81

8 years agovp8: Adjust threshold on VP8/DatarateTestLarge.DenoiserOffOn.
Marco [Tue, 11 Oct 2016 23:12:46 +0000 (16:12 -0700)]
vp8: Adjust threshold on VP8/DatarateTestLarge.DenoiserOffOn.

Fix unit_tests_ubsan failure for VP8/DatarateTestLarge.DenoiserOffOn.
Failure was triggered by commit: df66f8e8.

Change-Id: I7cc5bd309e85950cfc5755e01d0eb942d9ca6984

8 years ago1 pass vbr: Allow for lookahead alt-ref in real-time mode.
Marco [Wed, 3 Aug 2016 00:37:32 +0000 (17:37 -0700)]
1 pass vbr: Allow for lookahead alt-ref in real-time mode.

For 1 pass vbr real-time mode:
Allow for the usage of alt-ref frame when non-zero lag-in-frames is used.
Use non-filtered alt-ref, and select usage based on fast scene/content
analysis/detection within the lag of frames.

Positive gains on ytlive set: overall avgPSNR ~3-4%.
Several clips are up between 5-14%, a few clips are neutral/small change.

Current speed decrease is about ~5-10%.

Use the flag USE_ALTREF_FOR_ONE_PASS to enable this feature
(off by default for now).

Change-Id: I802d2bf3d44f9cf01f6d15c76be9c90192314769

8 years agovp9: 1 pass vbr: some adjustments to gf interval.
Marco [Mon, 10 Oct 2016 18:42:47 +0000 (11:42 -0700)]
vp9: 1 pass vbr: some adjustments to gf interval.

Put limit on gf interval based on lag, and allow
for the adjustment on next gf group also on key frame.

Small/neutral change on ytlive metrics.

Change only affects 1 pass vbr real-time mode.

Change-Id: I339c8f4398848698b6e10fe9482c52ca661b94a5

8 years agoMerge "vp8: Change default gf behavior for 1 pass cbr."
Marco Paniconi [Mon, 10 Oct 2016 23:06:30 +0000 (23:06 +0000)]
Merge "vp8: Change default gf behavior for 1 pass cbr."

8 years agoMerge "[vpx highbd lpf NEON 2/6] vertical 4"
Linfeng Zhang [Mon, 10 Oct 2016 16:57:50 +0000 (16:57 +0000)]
Merge "[vpx highbd lpf NEON 2/6] vertical 4"

8 years agoMerge "[vpx highbd lpf NEON 1/6] horizontal 4"
Linfeng Zhang [Mon, 10 Oct 2016 16:56:22 +0000 (16:56 +0000)]
Merge "[vpx highbd lpf NEON 1/6] horizontal 4"

8 years agoMerge "Optimize vp9 loopfilter msa functions"
Kaustubh Raste [Sat, 8 Oct 2016 05:05:15 +0000 (05:05 +0000)]
Merge "Optimize vp9 loopfilter msa functions"

8 years agoOptimize vp9 loopfilter msa functions
Kaustubh Raste [Fri, 7 Oct 2016 13:13:31 +0000 (18:43 +0530)]
Optimize vp9 loopfilter msa functions

Updated code to process in 8bit as saturation/clipping takes care of
overflow
Removed unused macro

Change-Id: I113df60286fb28b216df800d95b2d3695ef71440

8 years agovp8: Change default gf behavior for 1 pass cbr.
Marco [Thu, 6 Oct 2016 23:01:04 +0000 (16:01 -0700)]
vp8: Change default gf behavior for 1 pass cbr.

In 1 pass CBR, with error_resilience off, allow for
special logic to change the default gf behaviour.
In this CL: boost is turned off and the gf period
is set to a multiple of cyclic refresh period.

Change only affect 1 pass CBR mode, i.e, when the flag
gf_update_onepass_cbr is set.

Including the previous change (3ec8e11: to allow cyclic refresh
for error_resilience off), comparing metrics on RTC set for
error_resilience off vs on: avgPSNR/SSIM up by ~6%.

Change-Id: Id5b3fb62a4f04de5a805bd1b418f2b349574e0bc

8 years agoMerge "write_modes: add MACROBLOCKD as a parameter"
Vignesh Venkatasubramanian [Fri, 7 Oct 2016 18:09:08 +0000 (18:09 +0000)]
Merge "write_modes: add MACROBLOCKD as a parameter"

8 years agowrite_modes: add MACROBLOCKD as a parameter
Vignesh Venkatasubramanian [Tue, 4 Oct 2016 20:50:32 +0000 (13:50 -0700)]
write_modes: add MACROBLOCKD as a parameter

This will enable bit stream packing of each tile column in
parallel.

BUG=webm:1309

Change-Id: Ie349d8cc5825326218ffda893a50730b2e68ed34

8 years agoOptimize vp8 loopfilter msa functions
Kaustubh Raste [Fri, 7 Oct 2016 10:18:31 +0000 (15:48 +0530)]
Optimize vp8 loopfilter msa functions

Updated code to process in 8bit as saturation/clipping takes care of overflow

Change-Id: I35fb2c0e702fd91309cc391c5a7745a3b619a64c

8 years agoMerge "Fix build failure in libvpx_example_test-multi-target."
James Zern [Fri, 7 Oct 2016 01:53:40 +0000 (01:53 +0000)]
Merge "Fix build failure in libvpx_example_test-multi-target."

8 years ago[vpx highbd lpf NEON 2/6] vertical 4
Linfeng Zhang [Wed, 5 Oct 2016 17:45:03 +0000 (10:45 -0700)]
[vpx highbd lpf NEON 2/6] vertical 4

BUG=webm:1300

Change-Id: Ia33a9f2d6c7e2e6b3497ad6f1a09439a85b33983

8 years ago[vpx highbd lpf NEON 1/6] horizontal 4
Linfeng Zhang [Wed, 5 Oct 2016 17:15:07 +0000 (10:15 -0700)]
[vpx highbd lpf NEON 1/6] horizontal 4

BUG=webm:1300

Change-Id: Idf441806e6bf397ff5ecd8776146b3f781f50c40

8 years agoMerge changes from topic '8bit-hbd-idct'
James Zern [Thu, 6 Oct 2016 19:37:18 +0000 (19:37 +0000)]
Merge changes from topic '8bit-hbd-idct'

* changes:
  vpx_dsp/idct*_neon.asm: simplify immediate loads
  enable idct*_1_add_neon in high-bitdepth builds

8 years agoFix build failure in libvpx_example_test-multi-target.
Marco [Thu, 6 Oct 2016 19:11:37 +0000 (12:11 -0700)]
Fix build failure in libvpx_example_test-multi-target.

Due to change in command line to sample encoder from:
7eff8f3 Update to vpx_temporal_svc_encoder command line.

This caused the tests in vpx_temporal_svc_encoder.sh to fail.

Change-Id: Ic667da81955ad117d04610af21877fed1d4f188f

8 years agoMerge "Remove vpx_realloc()"
Alex Converse [Thu, 6 Oct 2016 18:42:05 +0000 (18:42 +0000)]
Merge "Remove vpx_realloc()"

8 years agoMerge "Modify vp8 idct msa functions store method"
Kaustubh Raste [Thu, 6 Oct 2016 02:25:42 +0000 (02:25 +0000)]
Merge "Modify vp8 idct msa functions store method"

8 years agovpx_dsp/idct*_neon.asm: simplify immediate loads
James Zern [Wed, 5 Oct 2016 18:50:06 +0000 (11:50 -0700)]
vpx_dsp/idct*_neon.asm: simplify immediate loads

mov supports 0-65535

Change-Id: I019de0d784836d7bd60e6b36f2cdeefb541cb3fd

8 years agoenable idct*_1_add_neon in high-bitdepth builds
James Zern [Sat, 1 Oct 2016 18:59:31 +0000 (11:59 -0700)]
enable idct*_1_add_neon in high-bitdepth builds

these are compatible as they only load one element of the input so the
larger size of tran_low_t makes no difference in little endian builds.
note the asm is incompatible with big-endian, but there are other points of
failure there so currently it's considered unsupported.

BUG=webm:1294

Change-Id: Icd2665a0699bccae92d1bea43a95b0a83fb17028

8 years agoRevert "Revert "vp8/encoder/onyx_if.c: apply clang-format""
Marco Paniconi [Wed, 5 Oct 2016 17:59:55 +0000 (17:59 +0000)]
Revert "Revert "vp8/encoder/onyx_if.c: apply clang-format""

This reverts commit a7456144ce0ab98e015548dd7cda4165ad2a800c.

Change-Id: I400987fb26a09e9b9ea42c91f48ea12f7bc37356

8 years agoRemove vpx_realloc()
Alex Converse [Wed, 5 Oct 2016 17:51:30 +0000 (10:51 -0700)]
Remove vpx_realloc()

It only handles the realloc constraint (preserving low elements) by
serendipity, and we don't actually rely on that behavior anyway.
Meanwhile the calls may do extra copying that gets immediately clobbered
by the callers.

Change-Id: I8dfa89e4a81084b084889c27bd272fdf85184e8d

8 years agoRevert "vp8/encoder/onyx_if.c: apply clang-format"
Marco Paniconi [Wed, 5 Oct 2016 15:45:48 +0000 (15:45 +0000)]
Revert "vp8/encoder/onyx_if.c: apply clang-format"

This reverts commit 891a87dccddfbb9fd625f4b32aa17ae3501f30a6.

Change-Id: I067b3b6a3cfb5bc760166999948b8087d4c5cb80

8 years agoModify vp8 idct msa functions store method
Kaustubh Raste [Wed, 5 Oct 2016 04:42:12 +0000 (10:12 +0530)]
Modify vp8 idct msa functions store method

vp8_short_inv_walsh4x4_msa - Optimized to process in short vector type
Updated below functions to store exact number of bytes in output rather than complete vector
idct4x4_addblk_msa
idct4x4_addconst_msa
dequant_idct4x4_addblk_msa
dequant_idct4x4_addblk_2x_msa
dequant_idct_addconst_2x_msa

Change-Id: Ic1b3752e2421dc7d70a082dcdaab9d140d7e5d9c

8 years agovp8/encoder/onyx_if.c: apply clang-format
clang-format [Wed, 5 Oct 2016 04:12:06 +0000 (21:12 -0700)]
vp8/encoder/onyx_if.c: apply clang-format

after:
955b3b6 vp8: Allow for cyclic refresh even if error_resilience it off.

Change-Id: Iba189b18c84be8f5140754280c6801cfc387cfcd

8 years agovp8: Allow for cyclic refresh even if error_resilience it off.
Marco [Tue, 4 Oct 2016 21:13:17 +0000 (14:13 -0700)]
vp8: Allow for cyclic refresh even if error_resilience it off.

cyclic_refresh was tied to error_resilience mode.
Allow it to be on also for 1 pass CBR mode even if
error_resilience is off.

Other option to use new control for this, but prefer to avoid
that for now.

Change-Id: I3625b292ee059a890e31338b514e211bf0ab5c3e

8 years agoMerge "Remove rate deviation metric from vp8"
Sarah Parker [Tue, 4 Oct 2016 18:56:14 +0000 (18:56 +0000)]
Merge "Remove rate deviation metric from vp8"

8 years agoRemove rate deviation metric from vp8
Sarah Parker [Wed, 21 Sep 2016 18:01:06 +0000 (11:01 -0700)]
Remove rate deviation metric from vp8

BUG=b/31780679

Change-Id: I2b2a43b154eeacb4f51a11f6362cc535cfe318da

8 years agoMerge "Connect partial IDCT tests"
Johann Koenig [Tue, 4 Oct 2016 18:01:19 +0000 (18:01 +0000)]
Merge "Connect partial IDCT tests"

8 years agoConnect partial IDCT tests
Johann [Mon, 3 Oct 2016 22:27:28 +0000 (15:27 -0700)]
Connect partial IDCT tests

Change-Id: Ie8d5d9123f5a9d39db4ec9c74f77ee979ae4e685

8 years agoMerge "Move highbd txfm input range check from 2d iht transform to 1d idct/iadst"
Angie Chiang [Tue, 4 Oct 2016 16:57:36 +0000 (16:57 +0000)]
Merge "Move highbd txfm input range check from 2d iht transform to 1d idct/iadst"

8 years agoMerge "Fix vpx_plane_add_noise_msa functionality bit-mismatch"
Kaustubh Raste [Tue, 4 Oct 2016 06:35:46 +0000 (06:35 +0000)]
Merge "Fix vpx_plane_add_noise_msa functionality bit-mismatch"

8 years agoMove highbd txfm input range check from 2d iht transform to 1d idct/iadst
Angie Chiang [Fri, 30 Sep 2016 23:53:20 +0000 (16:53 -0700)]
Move highbd txfm input range check from 2d iht transform to 1d idct/iadst

This change will make the highbd txfm input range check more comprehensive

The 25-bit highbd input range is composed by
12 signal input bits + 7 bits for 2D forward transform amplification + 5 bits for
1D inverse transform amplification + 1 bit for contingency in rounding and quantizing

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1286
BUG=https://bugs.chromium.org/p/chromium/issues/detail?id=651625

Change-Id: I04c0796edd7653f8d463fba5dc418132986131e7

8 years agoMerge "invalid_file_test: quiet unused const warning"
James Zern [Mon, 3 Oct 2016 22:51:06 +0000 (22:51 +0000)]
Merge "invalid_file_test: quiet unused const warning"

8 years agoMerge "Fix warning when building with GCC 5."
James Zern [Mon, 3 Oct 2016 22:42:51 +0000 (22:42 +0000)]
Merge "Fix warning when building with GCC 5."

8 years agoMerge "cosmetics,*_neon.c: rm redundant return from void fns"
James Zern [Mon, 3 Oct 2016 22:40:42 +0000 (22:40 +0000)]
Merge "cosmetics,*_neon.c: rm redundant return from void fns"

8 years agoFix vpx_plane_add_noise_msa functionality bit-mismatch
Kaustubh Raste [Mon, 3 Oct 2016 10:14:17 +0000 (15:44 +0530)]
Fix vpx_plane_add_noise_msa functionality bit-mismatch

Change-Id: I04961afb592ae6a67fdcfd8c9066e920dd4b30e7

8 years agoUpdate to vpx_temporal_svc_encoder command line.
Marco [Mon, 3 Oct 2016 16:47:21 +0000 (09:47 -0700)]
Update to vpx_temporal_svc_encoder command line.

Set the  #threads at command line.

Change-Id: Id0daa2393880c3da2d903c11a793072d3008b34b

8 years agoMerge "vpx_convolve8_neon,load/store*: correct param type"
James Zern [Sat, 1 Oct 2016 23:52:14 +0000 (23:52 +0000)]
Merge "vpx_convolve8_neon,load/store*: correct param type"

8 years agoFix warning when building with GCC 5.
Geza Lore [Wed, 13 Apr 2016 09:45:16 +0000 (10:45 +0100)]
Fix warning when building with GCC 5.

These caused the following warning with GCC 5:
     warning: logical not is only applied to the left hand side of
     comparison [-Wlogical-not-parentheses]
     assert(!is_compound == (cm->reference_mode == SINGLE_REFERENCE));

Change-Id: If296aabb2311ceb7d903b395c1549ef81c2cbf9b
(cherry picked from commit c6cf7a6111f6539f01a34865aaedd179a5ae062c)

8 years agoinvalid_file_test: quiet unused const warning
James Zern [Sat, 1 Oct 2016 18:49:02 +0000 (11:49 -0700)]
invalid_file_test: quiet unused const warning

with --disable-vp9

Change-Id: I81bd603b02ee5d1b45a50aa9e7534f9da498b0e0

8 years agovpx_convolve8_neon,load/store*: correct param type
James Zern [Sat, 1 Oct 2016 18:03:29 +0000 (11:03 -0700)]
vpx_convolve8_neon,load/store*: correct param type

stride/pitch in convolve is expressed with a ptrdiff_t

Change-Id: Ia5a6732dc509f06ccf7035386fa8ae721b4b1a71

8 years agoRemove a stray END declaration in loopfilter_4_neon.asm
Martin Storsjo [Sat, 1 Oct 2016 11:12:00 +0000 (14:12 +0300)]
Remove a stray END declaration in loopfilter_4_neon.asm

Change-Id: Ic8c359a5677f9c663787aac74f530e886163bc69

8 years agoMerge "vp8,frame_buffers: remove unused use_frame_threads"
James Zern [Sat, 1 Oct 2016 01:35:55 +0000 (01:35 +0000)]
Merge "vp8,frame_buffers: remove unused use_frame_threads"

8 years agoMerge "Refactor vpx lpf NEON files (step 2/2)"
Linfeng Zhang [Sat, 1 Oct 2016 00:07:50 +0000 (00:07 +0000)]
Merge "Refactor vpx lpf NEON files (step 2/2)"

8 years agoMerge "Refactor vpx lpf NEON files (step 1/2)"
Linfeng Zhang [Sat, 1 Oct 2016 00:07:30 +0000 (00:07 +0000)]
Merge "Refactor vpx lpf NEON files (step 1/2)"

8 years agoMerge "vp9: On change_config() only call update_frame_size if needed."
Marco Paniconi [Fri, 30 Sep 2016 21:43:33 +0000 (21:43 +0000)]
Merge "vp9: On change_config() only call update_frame_size if needed."

8 years agoMerge "vp9 real-time mode: Change loopfilter speed feature at speed 8."
Marco Paniconi [Fri, 30 Sep 2016 21:42:04 +0000 (21:42 +0000)]
Merge "vp9 real-time mode: Change loopfilter speed feature at speed 8."

8 years agocosmetics,*_neon.c: rm redundant return from void fns
James Zern [Fri, 30 Sep 2016 20:09:25 +0000 (13:09 -0700)]
cosmetics,*_neon.c: rm redundant return from void fns

+ a couple of 'break's after a return

Change-Id: Ia21f12ebcef98244feb923c17b689fc8115da015

8 years agoMerge changes from topic '8bit-hbd-idct'
James Zern [Fri, 30 Sep 2016 19:36:08 +0000 (19:36 +0000)]
Merge changes from topic '8bit-hbd-idct'

* changes:
  *idct*_neon.c: add missing rtcd include
  idct,msa/neon: exclude idct files from hbd build
  *rtcd_defs.pl: remove empty specialize calls

8 years ago*idct*_neon.c: add missing rtcd include
James Zern [Fri, 30 Sep 2016 06:28:08 +0000 (23:28 -0700)]
*idct*_neon.c: add missing rtcd include

+ correct declarations as necessary

BUG=webm:1294

Change-Id: I719602df9a56e79188a78e7f8b31257c6d3cc11d

8 years agoidct,msa/neon: exclude idct files from hbd build
James Zern [Fri, 30 Sep 2016 07:43:49 +0000 (00:43 -0700)]
idct,msa/neon: exclude idct files from hbd build

these functions are incompatible currently and unreferenced in rtcd,
exclude them from the build.

BUG=webm:1294

Change-Id: I7790c195a91e1b142f56c04d2a5e305d9133b896

8 years agoRefactor vpx lpf NEON files (step 2/2)
Linfeng Zhang [Fri, 30 Sep 2016 16:56:28 +0000 (09:56 -0700)]
Refactor vpx lpf NEON files (step 2/2)

Change-Id: I0744407cd3361ff752bd7f6e654b70ab6b41a58f

8 years agoRefactor vpx lpf NEON files (step 1/2)
Linfeng Zhang [Fri, 30 Sep 2016 16:48:54 +0000 (09:48 -0700)]
Refactor vpx lpf NEON files (step 1/2)

Change-Id: I4016d096d46ca691f3b17199b259b7231e983cfb

8 years agoMerge "Unify loopfilter function names"
Linfeng Zhang [Fri, 30 Sep 2016 15:58:08 +0000 (15:58 +0000)]
Merge "Unify loopfilter function names"

8 years agoMerge "Refine vpx convolve8 NEON intrinsics optimization"
Linfeng Zhang [Fri, 30 Sep 2016 15:56:30 +0000 (15:56 +0000)]
Merge "Refine vpx convolve8 NEON intrinsics optimization"

8 years agoMerge "Refine vpx_convolve_copy_neon() and vpx_convolve_avg_neon()"
Linfeng Zhang [Fri, 30 Sep 2016 15:54:02 +0000 (15:54 +0000)]
Merge "Refine vpx_convolve_copy_neon() and vpx_convolve_avg_neon()"

8 years ago*rtcd_defs.pl: remove empty specialize calls
James Zern [Fri, 30 Sep 2016 03:38:26 +0000 (20:38 -0700)]
*rtcd_defs.pl: remove empty specialize calls

add_proto adds a 'c' specialization

Change-Id: I0ed0c2240d45264b0e0056ce7c8f63f4a00780bc

8 years agovp8,frame_buffers: remove unused use_frame_threads
James Zern [Fri, 30 Sep 2016 03:24:15 +0000 (20:24 -0700)]
vp8,frame_buffers: remove unused use_frame_threads

this was never fully implemented

Change-Id: I4640cf84c40ea2cc9c6c12acf116d39df4b04578

8 years agoMerge "configure: test for -Wshorten-64-to-32 in non hbd builds"
James Zern [Fri, 30 Sep 2016 03:01:55 +0000 (03:01 +0000)]
Merge "configure: test for -Wshorten-64-to-32 in non hbd builds"

8 years agoMerge changes I158f631a,I0555f639
Johann Koenig [Fri, 30 Sep 2016 01:47:40 +0000 (01:47 +0000)]
Merge changes I158f631a,I0555f639

* changes:
  vp8: remove mmx functions
  Rename _xmm functions to _sse2

8 years agoMerge "Fix an issue in vp9_first_pass for non-mulitple of 16 resolutions"
Yunqing Wang [Fri, 30 Sep 2016 00:49:06 +0000 (00:49 +0000)]
Merge "Fix an issue in vp9_first_pass for non-mulitple of 16 resolutions"

8 years agoUnify loopfilter function names
Linfeng Zhang [Wed, 28 Sep 2016 22:20:01 +0000 (15:20 -0700)]
Unify loopfilter function names

Rename vpx_lpf_horizontal_edge_8() to vpx_lpf_horizontal_16().
Rename vpx_lpf_horizontal_edge_16() to vpx_lpf_horizontal_16_dual().

Change-Id: I798ca8fbbd657d06d3db2bfb0fb3321168f49e52

8 years agoRefine vpx_convolve_copy_neon() and vpx_convolve_avg_neon()
Linfeng Zhang [Thu, 29 Sep 2016 19:38:37 +0000 (12:38 -0700)]
Refine vpx_convolve_copy_neon() and vpx_convolve_avg_neon()

BUG=webm:1290

Change-Id: Ia27e58521eba5a4852b50381c56746fa5767f6d6

8 years agoFix an issue in vp9_first_pass for non-mulitple of 16 resolutions
Deepa K G [Thu, 29 Sep 2016 03:38:34 +0000 (20:38 -0700)]
Fix an issue in vp9_first_pass for non-mulitple of 16 resolutions

This patch sets the 16x16 src_diff to zero and ensures correct calculation
of this_error for block sizes smaller than 16x16.

Change-Id: I7b7c02d267433c9f22c8ac9b8d5df2f499175172

8 years agoMerge changes Ia3e9122f,Id33eb6c8,I956bd8ce
Johann Koenig [Thu, 29 Sep 2016 23:16:44 +0000 (23:16 +0000)]
Merge changes Ia3e9122f,Id33eb6c8,I956bd8ce

* changes:
  Remove vp8_clear_system_state
  vpx_dsp: clean up rtcd
  vp8: clean up rtcd

8 years agoMerge "vp9_detokenize,decode_coefs: fix signed int overflow"
James Zern [Thu, 29 Sep 2016 22:36:12 +0000 (22:36 +0000)]
Merge "vp9_detokenize,decode_coefs: fix signed int overflow"

8 years agovp8: remove mmx functions
Johann [Thu, 29 Sep 2016 22:21:26 +0000 (15:21 -0700)]
vp8: remove mmx functions

When they have sse2 equivalents.

Change-Id: I158f631a3bcecba57b36093ac10114b1904767a7

8 years agoRename _xmm functions to _sse2
Johann [Thu, 29 Sep 2016 22:21:09 +0000 (15:21 -0700)]
Rename _xmm functions to _sse2

Avoid the extra level of indirection/confusion.

Change-Id: I0555f639d67835df9fb7dac0c75085e9954805f1

8 years agoRemove vp8_clear_system_state
Johann [Thu, 29 Sep 2016 19:21:44 +0000 (12:21 -0700)]
Remove vp8_clear_system_state

Use vpx_clear_system_state instead.

Change-Id: Ia3e9122f69a2c690ddd7c7bc54f92ccb9ec18b3e

8 years agovp9: On change_config() only call update_frame_size if needed.
Marco [Thu, 29 Sep 2016 18:15:26 +0000 (11:15 -0700)]
vp9: On change_config() only call update_frame_size if needed.

change_config() may be called often in real-time application,
to update bitrate/framerate or qp-max/min.
No need to do update_frame_size() unless frame size has changed.

Change-Id: I23a51deade1e03adc91c468f9ffde3235298770c

8 years agovp9 real-time mode: Change loopfilter speed feature at speed 8.
Marco [Mon, 26 Sep 2016 23:52:26 +0000 (16:52 -0700)]
vp9 real-time mode: Change loopfilter speed feature at speed 8.

For real-time mode at speed 8: turn off MINIMAL_LF at speed 8,
for non-screen content mode.

Visually better, avgPSNR/SSIM on rtc set go up by ~4-5%.
Speed decrease of about ~3%.

Change-Id: I8eb69330f02e0ceece1507d43cfc8a049a1d8291

8 years agoRefine vpx convolve8 NEON intrinsics optimization
Linfeng Zhang [Thu, 29 Sep 2016 19:48:59 +0000 (12:48 -0700)]
Refine vpx convolve8 NEON intrinsics optimization

BUG=webm:1290

Change-Id: I5d7fce62270f9d76ef9ce98b3d188ad11fb21873

8 years agoMerge changes I11786887,Ia91823ad
James Zern [Thu, 29 Sep 2016 19:11:35 +0000 (19:11 +0000)]
Merge changes I11786887,Ia91823ad

* changes:
  vpx_dsp/get_prob: relocate den == 0 test
  vpx_dsp/get_prob: make clip_prob branchless

8 years agovpx_dsp: clean up rtcd
Johann [Thu, 29 Sep 2016 19:06:37 +0000 (12:06 -0700)]
vpx_dsp: clean up rtcd

Remove avx2+ssse3 specialization. Disabling ssse3 now automatically
disables avx2.

Change-Id: Id33eb6c85d1c4ee57128ebe45c995eb15cfcc765

8 years agovp8: clean up rtcd
Johann [Thu, 29 Sep 2016 19:05:09 +0000 (12:05 -0700)]
vp8: clean up rtcd

Remove lines which specify the same name for a function.

Change-Id: I956bd8ce2b81a2a8feab5621d28bd2499c2b4c2d

8 years agovp9_detokenize,decode_coefs: fix signed int overflow
James Zern [Thu, 29 Sep 2016 03:37:18 +0000 (20:37 -0700)]
vp9_detokenize,decode_coefs: fix signed int overflow

when decoding an invalid bitstream with --enable-vp9-highbitdepth

BUG=webm:1297

Change-Id: I401d87033b4293f2ca595bc51678aad9951ecf15

8 years agovpx_dsp/get_prob: relocate den == 0 test
James Zern [Thu, 29 Sep 2016 00:39:05 +0000 (17:39 -0700)]
vpx_dsp/get_prob: relocate den == 0 test

to get_binary_prob(). the only other caller mode_mv_merge_probs() does
its own test on 0.

BUG=chromium:639712

Change-Id: I1178688706baeca2883f7aadbc254abb219a44ce

8 years agoMerge "vp9: fix compilation for g++ 6.2.x"
James Zern [Wed, 28 Sep 2016 23:36:23 +0000 (23:36 +0000)]
Merge "vp9: fix compilation for g++ 6.2.x"

8 years agoMerge "Hook up vp8_diamond_search_sad_sse3"
Johann Koenig [Wed, 28 Sep 2016 20:54:24 +0000 (20:54 +0000)]
Merge "Hook up vp8_diamond_search_sad_sse3"

8 years agoMerge "vpxdec: avoid memory leaks under most conditions"
James Zern [Wed, 28 Sep 2016 19:35:16 +0000 (19:35 +0000)]
Merge "vpxdec: avoid memory leaks under most conditions"

8 years agovpx_dsp/get_prob: make clip_prob branchless
James Zern [Wed, 28 Sep 2016 02:43:03 +0000 (19:43 -0700)]
vpx_dsp/get_prob: make clip_prob branchless

+ inline the function directly as there was only one consumer
(get_prob())

this is an attempt to reduce the amount of branches to workaround an amd
bug. this change is mildly faster or neutral across x86-64, arm.

http://support.amd.com/TechDocs/44739_12h_Rev_Gd.pdf
665 Integer Divide Instruction May Cause Unpredictable Behavior

BUG=chromium:639712

Suggested-by: Pascal Massimino <pascal.massimino@gmail.com>
Change-Id: Ia91823aded79aab469dd68095d44300e8df04ed2

8 years agovp9: fix compilation for g++ 6.2.x
Tristan Matthews [Thu, 22 Sep 2016 22:49:27 +0000 (18:49 -0400)]
vp9: fix compilation for g++ 6.2.x

Inline function called from test/dct16x16_test.cc wouldn't build due to:
  invalid operands of types ‘__gnu_cxx::__enable_if<true, double>::__type
  {aka double}’ and ‘int’ to binary ‘operator>>’
  return (abs(ref->row) >> 3) < COMPANDED_MVREF_THRESH &&

this converts the test to abs() < COMPANDED_MVREF_THRESH << 3 which
hides the promotion issue.

Regression from commit de993a847f8080d3128420c8ef8495642013bdb1

BUG=webm:1291

Change-Id: I73b5943d07d5b61b709d299114216a2371a8fd62

8 years agoMerge "Clean convolve_test.cc"
Linfeng Zhang [Wed, 28 Sep 2016 00:20:27 +0000 (00:20 +0000)]
Merge "Clean convolve_test.cc"

8 years agoMerge "Fix for compile error with range checking"
Debargha Mukherjee [Wed, 28 Sep 2016 00:05:37 +0000 (00:05 +0000)]
Merge "Fix for compile error with range checking"

8 years agoconfigure: test for -Wshorten-64-to-32 in non hbd builds
James Zern [Thu, 7 Apr 2016 07:07:45 +0000 (00:07 -0700)]
configure: test for -Wshorten-64-to-32 in non hbd builds

provides msvc-like warnings for implicit conversions from 64-bit to
32-bit types

--enable-vp9-highbitdepth still requires some work

this also skips CXXFLAGS for now as some work would be needed to cleanup
third_party/*.cc or split it from test/*.cc where it comes to flags.

Change-Id: Ic9a095b73286eba5ed39bfc27ff69593748cbbf4

8 years agoCast strto[u]l down
Johann [Tue, 27 Sep 2016 22:37:10 +0000 (15:37 -0700)]
Cast strto[u]l down

Change-Id: I945b2f8754cf484a08e5ba511cfd2d4a44181b08

8 years agoHook up vp8_diamond_search_sad_sse3
Johann [Mon, 26 Sep 2016 23:20:32 +0000 (16:20 -0700)]
Hook up vp8_diamond_search_sad_sse3

The original commit never set any 'specialize' line:
61311e61039c300ae872ccba22304e9e60dc0205

It appears the sadx4 version of function uses sdx4df calls to speed up
the search. There are no sse3 versions of the sdx4df functions, but
there are sse2 and msa versions.

There is a neon version of vpx_sad16x16x4d but not any of the smaller
versions. Perhaps if they existed this function could be expanded to use
them.

Change-Id: I936d7d6b1a3ff6dcd5a4d2322272708c47cdec13

8 years agovpxdec: avoid memory leaks under most conditions
James Zern [Tue, 27 Sep 2016 21:29:18 +0000 (14:29 -0700)]
vpxdec: avoid memory leaks under most conditions

avoids false positives when fuzzing with ASan+LSan.

Change-Id: I0d23b530ae80e5692b6951fe6e3690ea44159a5a

8 years agoMerge changes from topic 'wextra'
Johann Koenig [Tue, 27 Sep 2016 21:13:50 +0000 (21:13 +0000)]
Merge changes from topic 'wextra'

* changes:
  Expand -Wextra to more of the library
  mips: clean up wextra warnings
  Add compiler flag -Wsign-compare
  Add compiler warning flag -Wextra and fix related warnings.

8 years agoClean convolve_test.cc
Linfeng Zhang [Tue, 20 Sep 2016 21:23:15 +0000 (14:23 -0700)]
Clean convolve_test.cc

Combine test MatchesReferenceSubpixelFilter and
MatchesReferenceAveragingSubpixelFilter.

Change-Id: I75f96befbbb118cdc6b8c6001b4cdda8d88fbbd3

8 years agoExpand -Wextra to more of the library
Johann [Tue, 13 Sep 2016 21:01:38 +0000 (14:01 -0700)]
Expand -Wextra to more of the library

Suppress warnings in third_party/.

vp8 -Wclobbered issue is tracked here:
BUG=webm:1246

BUG=webm:1069

Change-Id: I9b94bf546d7b690c26a59ae67967facdce8ec45b

8 years agomips: clean up wextra warnings
Johann [Tue, 27 Sep 2016 20:17:51 +0000 (13:17 -0700)]
mips: clean up wextra warnings

Remove unused zbin variable:
warning: unused parameter ‘zbin’

Use int for loop variables to avoid unsigned conversion:
warning: comparison between signed and unsigned integer expressions

Change-Id: Icea74b870c0ee68a8bf687e796a69392af25a8ad

8 years agoAdd compiler flag -Wsign-compare
Urvang Joshi [Fri, 8 Jul 2016 23:09:36 +0000 (16:09 -0700)]
Add compiler flag -Wsign-compare

Also, fix the warnings generated by this flag.

(cherry picked from commit ebeb1155d4fa6d28e2f40c92265245f8df097fcb)

From AOM. Don't actually add -Wsign-compare. It will be covered by
-Wextra.

Switch to vpx_integer.h from df9c9d6d4c43f02c58d4e776c53323788e013cbc

BUG=webm:1069

Change-Id: I1dc6e61caa5d56af4a55b6692ab620bb3144652a