platform/upstream/libvpx.git
8 years agoMerge "Configuration: Use 'is_in' instead of echo | grep"
Johann Koenig [Sun, 19 Jun 2016 23:51:33 +0000 (23:51 +0000)]
Merge "Configuration: Use 'is_in' instead of echo | grep"

8 years agoFix iosbuild.sh: outdated reference to ios-version.sh
Johann [Sun, 19 Jun 2016 23:49:00 +0000 (16:49 -0700)]
Fix iosbuild.sh: outdated reference to ios-version.sh

File was removed in b29ebfe91c643b4bab1f24c2b55bf0a5a83cb825 but a
reference was missed.

Change-Id: I7a3d81ab196a70cb5691331705f956cc7dc9bb2a

8 years agorealtime_test: remove decoded frame count check
James Zern [Sat, 18 Jun 2016 18:03:26 +0000 (11:03 -0700)]
realtime_test: remove decoded frame count check

decoding is done if the decoder is available, with errors handled
accordingly. the encoded frame count should be sufficient for this test.

+ remove HandleDecodeResult() as it's redundant given the base
  implementation

BUG=webm:1233

Change-Id: I513c1c3475c58a746f4df627491bdc392fe21416

8 years agoMerge "Use 64-bit integer to store distortion in optimize_b"
Jingning Han [Fri, 17 Jun 2016 23:05:33 +0000 (23:05 +0000)]
Merge "Use 64-bit integer to store distortion in optimize_b"

8 years agoUse 64-bit integer to store distortion in optimize_b
Jingning Han [Fri, 17 Jun 2016 21:52:05 +0000 (14:52 -0700)]
Use 64-bit integer to store distortion in optimize_b

This fixes the overflow issue.

Bug=webm:1241

Change-Id: Ia168b7fae1ad214a6837aaa785a08bf8506987dd

8 years agoMerge "Parse codec options in order of occurrence."
DO NOT USE [Fri, 17 Jun 2016 22:03:49 +0000 (22:03 +0000)]
Merge "Parse codec options in order of occurrence."

8 years agoConfiguration: Use 'is_in' instead of echo | grep
Johann [Fri, 17 Jun 2016 21:25:23 +0000 (14:25 -0700)]
Configuration: Use 'is_in' instead of echo | grep

Change-Id: I38f7684969f12a624980f4e06698379a49e61bdf

8 years agoMerge "Fix warnings from gtest under GCC 5 or newer."
James Zern [Fri, 17 Jun 2016 21:18:21 +0000 (21:18 +0000)]
Merge "Fix warnings from gtest under GCC 5 or newer."

8 years agoMerge "Remove ios-version.sh"
Johann Koenig [Fri, 17 Jun 2016 21:08:51 +0000 (21:08 +0000)]
Merge "Remove ios-version.sh"

8 years agoParse codec options in order of occurrence.
Johann [Fri, 10 Jun 2016 21:59:26 +0000 (14:59 -0700)]
Parse codec options in order of occurrence.

Each time a codec is enabled or disabled with the umbrella
--enable-vpN flag, set the encoder and decoder configurations as well.
This was done as a post-processing step but doing that lost the order of
the arguments.

BUG=webm:1205

Change-Id: Ic629bfdd06acc04bc5a7227309f36bba54dad8b1

8 years agoMerge "Fix ubsan warnings: vp9/encoder/vp9_encoder.c"
Yaowu Xu [Fri, 17 Jun 2016 19:29:19 +0000 (19:29 +0000)]
Merge "Fix ubsan warnings: vp9/encoder/vp9_encoder.c"

8 years agoFix warnings from gtest under GCC 5 or newer.
Geza Lore [Fri, 17 Jun 2016 14:32:25 +0000 (15:32 +0100)]
Fix warnings from gtest under GCC 5 or newer.

Change-Id: I9661f2fe9d315dccae69caa70d929b5d9d93b7db
(cherry picked from commit 4c83fdd3d7cacd66a2c64451db0fb64e5b2ecf48)

8 years agoOutput frames in first pass for VPX_DL_REALTIME.
Tom Finegan [Wed, 15 Jun 2016 20:42:59 +0000 (13:42 -0700)]
Output frames in first pass for VPX_DL_REALTIME.

Since combining VPX_DL_REALTIME with VPX_RC_FIRST_PASS is basically
nonsense, ignore the user's pass setting when this happens and
behave as if the requested encode is a single pass encode.

BUG=webm:1233

Change-Id: I5ee4c4e5838c4ca6d24988890aae490b10826db2

8 years agoFix ubsan warnings: vp9/encoder/vp9_encoder.c
Yaowu Xu [Fri, 17 Jun 2016 18:25:11 +0000 (11:25 -0700)]
Fix ubsan warnings: vp9/encoder/vp9_encoder.c

BUG=webm:1219

Change-Id: I433a688fbbc87094afa888c1e7d49f3eefc0e765

8 years agoMerge "vp8: correct function return types"
Johann Koenig [Fri, 17 Jun 2016 04:19:37 +0000 (04:19 +0000)]
Merge "vp8: correct function return types"

8 years agoMerge "VP8_COMP: make frames_since_golden signed"
Johann Koenig [Fri, 17 Jun 2016 04:19:17 +0000 (04:19 +0000)]
Merge "VP8_COMP: make frames_since_golden signed"

8 years agoMerge "vp9_pickmode: quiet int64->int conversion warning"
James Zern [Fri, 17 Jun 2016 03:58:46 +0000 (03:58 +0000)]
Merge "vp9_pickmode: quiet int64->int conversion warning"

8 years agoRemove ios-version.sh
Johann [Thu, 16 Jun 2016 23:35:45 +0000 (16:35 -0700)]
Remove ios-version.sh

The logic can be incorporated into configure.sh

Removes a dependency on ios-version.sh which was not part of DIST-SRCS
and removes a warning from 'make dist' sub builds:

../src/build/make/configure.sh: line 787:
../src/build/make/ios-version.sh: No such file or directory

Change-Id: Ic38314708eb278dd9d2a9769a670da32f6126637

8 years agoMerge "vp8_[cd]x_iface.c: Initialize structures to 0"
Johann Koenig [Thu, 16 Jun 2016 23:12:06 +0000 (23:12 +0000)]
Merge "vp8_[cd]x_iface.c: Initialize structures to 0"

8 years agoMerge "vp8 stats file: initialize to 0"
Johann Koenig [Thu, 16 Jun 2016 22:29:04 +0000 (22:29 +0000)]
Merge "vp8 stats file: initialize to 0"

8 years agovp8_[cd]x_iface.c: Initialize structures to 0
Johann [Mon, 13 Jun 2016 19:08:47 +0000 (12:08 -0700)]
vp8_[cd]x_iface.c: Initialize structures to 0

Use vp8_zero() or specify every element.

Cleans warning in Android build:
missing field 'deblocking_level' initializer
vp8_ppflags_t flags = {0};
                        ^
missing field 'sz' initializer
{0},                /* rc_twopass_stats_in */
  ^
missing field 'sz' initializer
{0},                /* rc_firstpass_mb_stats_in */
  ^
missing field 'layer_target_bitrate' initializer
}},
^
missing field 'deblocking_level' initializer
vp8_ppflags_t flags = {0};
                        ^
missing field 'mr_get_mem_loc' initializer
}
^

Change-Id: Iaedde9a77faac7a40316aee67d60d02ba7313500

8 years agoVP8_COMP: make frames_since_golden signed
Johann [Mon, 13 Jun 2016 18:51:21 +0000 (11:51 -0700)]
VP8_COMP: make frames_since_golden signed

This value is signed in vp9/10

Cleans warning in Android build:
comparison of integers of different signs: 'unsigned int' and 'int'
if (cpi->frames_since_golden == (cpi->current_gf_interval >> 1))
    ~~~~~~~~~~~~~~~~~~~~~~~~ ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Change-Id: Ie137724982f3a46c8c1820548c1960d62a4e96f2

8 years agovp8: correct function return types
Johann [Thu, 16 Jun 2016 21:17:28 +0000 (14:17 -0700)]
vp8: correct function return types

left_above_mv and above_block_mv return as_int

as_int is defined as uint32_t in vp8/common/mv.h

Cleans up -Wextra warnings:
signed and unsigned type in conditional expression
this_mv->as_int = col ? d[-1].bmi.mv.as_int : left_block_mv(mic, i);
                                            ^
this_mv->as_int = row ? d[-4].bmi.mv.as_int : above_block_mv(mic, i, mis);
                                            ^
left_mv.as_int = col ? d[-1].bmi.mv.as_int :
                                           ^

Change-Id: Ia043764e4ce93d2152d2269b1c7b28b5d5f814cf

8 years agoMerge "vp8_change_config: fix unsigned/signed comparison"
Johann Koenig [Thu, 16 Jun 2016 21:53:29 +0000 (21:53 +0000)]
Merge "vp8_change_config: fix unsigned/signed comparison"

8 years agovpx_dsp/quantize.c: fix ubsan warnings
Yaowu Xu [Thu, 16 Jun 2016 01:09:11 +0000 (18:09 -0700)]
vpx_dsp/quantize.c: fix ubsan warnings

BUG=webm:1219

Change-Id: I0c80271c6b78adf40aa7a4cac9e6b431d56958cb

8 years agovpx_dsp/variance.c: change to use correct type
Yaowu Xu [Thu, 16 Jun 2016 01:03:57 +0000 (18:03 -0700)]
vpx_dsp/variance.c: change to use correct type

This commit change to use int64_t to represent the sum of pixel
differences, which can be negative.

This fixes a number of ubsan warnings.

BUG=webm:1219

Change-Id: I885f245ae895ab92ca5f3b9848d37024b07aac98

8 years agoMerge "Fix an ubsan warning: vp9_quantizer.c"
Yaowu Xu [Thu, 16 Jun 2016 21:42:40 +0000 (21:42 +0000)]
Merge "Fix an ubsan warning: vp9_quantizer.c"

8 years agovp8 stats file: initialize to 0
Johann [Thu, 16 Jun 2016 21:22:55 +0000 (14:22 -0700)]
vp8 stats file: initialize to 0

Cleans up -Wextra warning:
missing initializer for field ‘intra_error’ of ‘FIRSTPASS_STATS’

Change-Id: I42c1413234aba207f8e89f2e040e14a81bca511e

8 years agovp8_change_config: fix unsigned/signed comparison
Johann [Sat, 11 Jun 2016 01:09:04 +0000 (18:09 -0700)]
vp8_change_config: fix unsigned/signed comparison

Use ~15 instead of 0x..F0

Cleans warning in Android build:
comparison of integers of different signs: 'unsigned int' and 'int'
if (((cm->Width + 15) & 0xfffffff0) !=
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ^
comparison of integers of different signs: 'unsigned int' and 'int'
((cm->Height + 15) & 0xfffffff0) !=
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ^

Change-Id: Iac25839cde3425b7b9db7f33740dc46a551b7546

8 years agoMerge "Fix ubsan warning: test/datarate_test.cc"
Yaowu Xu [Thu, 16 Jun 2016 19:40:20 +0000 (19:40 +0000)]
Merge "Fix ubsan warning: test/datarate_test.cc"

8 years agoFix ubsan warning: test/datarate_test.cc
Yaowu Xu [Thu, 16 Jun 2016 15:57:29 +0000 (08:57 -0700)]
Fix ubsan warning: test/datarate_test.cc

BUG=webm:1219

Change-Id: I48470a885cd64a60636a982cd68165c41a702306

8 years agoMerge "Fix ubsan warning: vp8/encoder/denoising.c"
Yaowu Xu [Thu, 16 Jun 2016 18:09:09 +0000 (18:09 +0000)]
Merge "Fix ubsan warning: vp8/encoder/denoising.c"

8 years agoMerge "Fix ubsan warning: vp8/encoder/onyx_ifc"
Yaowu Xu [Thu, 16 Jun 2016 16:44:41 +0000 (16:44 +0000)]
Merge "Fix ubsan warning: vp8/encoder/onyx_ifc"

8 years agoMerge "Fix ubsan warning: vp9_cx_iface.c"
Yaowu Xu [Thu, 16 Jun 2016 16:44:35 +0000 (16:44 +0000)]
Merge "Fix ubsan warning: vp9_cx_iface.c"

8 years agoMerge "vp9: Adjustments to nonrd-pickmode for vbr"
Marco Paniconi [Thu, 16 Jun 2016 16:07:06 +0000 (16:07 +0000)]
Merge "vp9: Adjustments to nonrd-pickmode for vbr"

8 years agoFix ubsan warning: vp8/encoder/denoising.c
Yaowu Xu [Thu, 16 Jun 2016 15:53:53 +0000 (08:53 -0700)]
Fix ubsan warning: vp8/encoder/denoising.c

BUG=webm:1219

Change-Id: Iebdedfb27c70909c0849e169473a2a3ec9f58cc7

8 years agoFix ubsan warning: vp8/encoder/onyx_ifc
Yaowu Xu [Thu, 16 Jun 2016 15:32:18 +0000 (08:32 -0700)]
Fix ubsan warning: vp8/encoder/onyx_ifc

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

Change-Id: I4362a1cf79fdcb478b29ddbcdf8091c5f5d10645

8 years agoFix ubsan warning: vp9_cx_iface.c
Yaowu Xu [Thu, 16 Jun 2016 15:28:33 +0000 (08:28 -0700)]
Fix ubsan warning: vp9_cx_iface.c

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

Change-Id: I77584af8b9e25db484d9ced6013da3163a9592c0

8 years agoFix an ubsan warning: vp9_quantizer.c
Yaowu Xu [Thu, 16 Jun 2016 00:59:26 +0000 (17:59 -0700)]
Fix an ubsan warning: vp9_quantizer.c

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

Change-Id: Ie1bfda4d51c1567f551515f0ed113eec1bc1d98c

8 years agovp9_pickmode: quiet int64->int conversion warning
James Zern [Thu, 16 Jun 2016 06:34:09 +0000 (23:34 -0700)]
vp9_pickmode: quiet int64->int conversion warning

since:
7901a05 VP9: block_yrd(): Use RD_COST * instead

Change-Id: I808be7a7bc96b81eb7d6255ae96cea7e9b1ecf1f

8 years agoMerge "Add vp9 encoder API VP9E_GET_LEVEL to provide bitstream level"
Hui Su [Wed, 15 Jun 2016 23:52:18 +0000 (23:52 +0000)]
Merge "Add vp9 encoder API VP9E_GET_LEVEL to provide bitstream level"

8 years agoMerge "vp9: Add bias to last frame in choose_partitioning."
Jacky Chen [Wed, 15 Jun 2016 22:50:04 +0000 (22:50 +0000)]
Merge "vp9: Add bias to last frame in choose_partitioning."

8 years agovp9: Adjustments to nonrd-pickmode for vbr
Marco [Wed, 15 Jun 2016 21:20:32 +0000 (14:20 -0700)]
vp9: Adjustments to nonrd-pickmode for vbr

For VBR: (1) allow newmv mode for golden ref to
select interpolation filter (as in last ref case), and
(2) don't use the more aggressive tx-skip testing logic for large blocks.

Only affects 1 pass real-time vbr mode (speed >= 5).

PSNR/SSIM metrics on ytlive set are all positive, ~0.5-2% gain.

Change-Id: I0ffbb0a9755563a5acd6230c58236e4f19a47266

8 years agoMerge "VP9: block_yrd(): Use RD_COST * instead"
Scott LaVarnway [Wed, 15 Jun 2016 21:02:45 +0000 (21:02 +0000)]
Merge "VP9: block_yrd(): Use RD_COST * instead"

8 years agovp9: Add bias to last frame in choose_partitioning.
JackyChen [Wed, 15 Jun 2016 17:14:14 +0000 (10:14 -0700)]
vp9: Add bias to last frame in choose_partitioning.

This change is only for real-time mode if short_circuit_low_temp_var
is on. Add bias to last frame in choosing ref frame for partitioning,
when y_sad and y_sad_g are close. It speeds up real-time encoding by
0.5% on some clips with less than 0.1% overall PSNR drop on rtc test set.

Change-Id: I2a2110fe36455f3d8f0fc404aef2228f512e8df8

8 years agoAdd vp9 encoder API VP9E_GET_LEVEL to provide bitstream level
hui su [Thu, 5 May 2016 19:04:42 +0000 (12:04 -0700)]
Add vp9 encoder API VP9E_GET_LEVEL to provide bitstream level

Change-Id: I1ef3df0192491035728fe9d5eb25cc66dc2965de

8 years agoMerge "Match prev_ to number_of_layers"
Johann Koenig [Wed, 15 Jun 2016 18:26:55 +0000 (18:26 +0000)]
Merge "Match prev_ to number_of_layers"

8 years agoMerge "Use data size directly instead of recomputing."
Johann Koenig [Wed, 15 Jun 2016 18:23:33 +0000 (18:23 +0000)]
Merge "Use data size directly instead of recomputing."

8 years agoMerge "vp9: Code clean up for short circuit feature in low temp variance."
Jacky Chen [Wed, 15 Jun 2016 16:49:32 +0000 (16:49 +0000)]
Merge "vp9: Code clean up for short circuit feature in low temp variance."

8 years agoVP9: block_yrd(): Use RD_COST * instead
Scott LaVarnway [Tue, 14 Jun 2016 22:43:31 +0000 (15:43 -0700)]
VP9: block_yrd(): Use RD_COST * instead

of int *rate, int *dist.

Change-Id: I7cbaea5252615b6b45b33e896f637cf7d076588a

8 years agoMerge "VP9: minor block_yrd() refactoring"
Scott LaVarnway [Wed, 15 Jun 2016 11:46:54 +0000 (11:46 +0000)]
Merge "VP9: minor block_yrd() refactoring"

8 years agovp9: Code clean up for short circuit feature in low temp variance.
JackyChen [Tue, 14 Jun 2016 21:25:55 +0000 (14:25 -0700)]
vp9: Code clean up for short circuit feature in low temp variance.

Change-Id: I7573a5cf0ab79abed8d124019c0ed6d9531277f9

8 years agoUse data size directly instead of recomputing.
Johann [Sat, 11 Jun 2016 00:54:33 +0000 (17:54 -0700)]
Use data size directly instead of recomputing.

Cleans warning in Android build:
comparison of integers of different signs: 'unsigned int' and 'int'

int n = (int)VPXMIN(sizeof(clear_buffer), data_end - data);
             ^      ~~~~~~~~~~~~~~~~~~~~  ~~~~~~~~~~~~~~~

Change-Id: I964355ceae6b39e22c0196294b25e28387f84945

8 years agoMatch prev_ to number_of_layers
Johann [Sat, 11 Jun 2016 01:00:34 +0000 (18:00 -0700)]
Match prev_ to number_of_layers

Defined as unsigned in VP8_CONFIG

Cleans warning in Android build:
comparison of integers of different signs: 'unsigned int' and 'int'
if (cpi->oxcf.number_of_layers != prev_number_of_layers)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~
Change-Id: I969e64cd2bfda6e61c564476dbd35b892b177646

8 years agoActive map and ROI map use unsigned rows/cols
Johann [Sat, 11 Jun 2016 01:17:18 +0000 (18:17 -0700)]
Active map and ROI map use unsigned rows/cols

The vpx_roi_map_t and vpx_active_map_t structures use unsigned rows
and cols but VP8_COMMON uses signed values for mb_rows and mb_cols.

Cleans warning in Android build:
comparison of integers of different signs: 'int' and 'unsigned int'
if (cpi->common.mb_rows != rows || cpi->common.mb_cols != cols)
    ~~~~~~~~~~~~~~~~~~~ ^  ~~~~
comparison of integers of different signs: 'int' and 'unsigned int'
if (cpi->common.mb_rows != rows || cpi->common.mb_cols != cols)
                                   ~~~~~~~~~~~~~~~~~~~ ^  ~~~~
comparison of integers of different signs: 'unsigned int' and 'int'
if (rows == cpi->common.mb_rows && cols == cpi->common.mb_cols)
    ~~~~ ^  ~~~~~~~~~~~~~~~~~~~
comparison of integers of different signs: 'unsigned int' and 'int'
if (rows == cpi->common.mb_rows && cols == cpi->common.mb_cols)

Change-Id: If1f118c20ffefd2530fbd371e6787cc8a6c31f0a

8 years agoMake new_qc signed
Johann [Mon, 13 Jun 2016 18:56:42 +0000 (11:56 -0700)]
Make new_qc signed

Mode is signed

Cleans warning in Android build:
comparison of integers of different signs: 'int' and 'unsigned int'
if (ctx->oxcf.Mode != new_qc)
    ~~~~~~~~~~~~~~ ^  ~~~~~~

Change-Id: I5cf81c40b103e688a31e1339511f5c9eb27edd38

8 years agoneon hadamard 16x16
Johann [Fri, 10 Jun 2016 22:49:44 +0000 (15:49 -0700)]
neon hadamard 16x16

Runs about twice as fast as C

BUG=webm:1027

Change-Id: I6760d99f4e22259439ca35d746194b12a81bfa71

8 years agoMerge "hadamard 16x16 test"
Johann Koenig [Tue, 14 Jun 2016 19:22:59 +0000 (19:22 +0000)]
Merge "hadamard 16x16 test"

8 years agoMerge "vp9: Encoding cycle reduction for speed 8."
Jacky Chen [Tue, 14 Jun 2016 15:41:31 +0000 (15:41 +0000)]
Merge "vp9: Encoding cycle reduction for speed 8."

8 years agoMerge "Small re-arrangement."
Paul Wilkins [Tue, 14 Jun 2016 11:46:58 +0000 (11:46 +0000)]
Merge "Small re-arrangement."

8 years agohadamard 16x16 test
Johann [Thu, 12 May 2016 20:02:26 +0000 (13:02 -0700)]
hadamard 16x16 test

BUG=webm:1027

Change-Id: Ibe58781905b372b9fe29dace39b4bfdd33fd0f83

8 years agovp9: Encoding cycle reduction for speed 8.
JackyChen [Mon, 6 Jun 2016 23:30:14 +0000 (16:30 -0700)]
vp9: Encoding cycle reduction for speed 8.

1. Skip golden non-zeromv and newmv-last for bsize >= 16x16 if the
temporal variance obtained from choose_partitioning is very low.
2. Skip horz and vert INTRA mode for speed 8.

This change works best on the clips with little noise and with some
motion (e.g. gips_motion which has > 5% speed up). PSNR drop is 1.78%
on rtc test set, no obvious visual quality regression found.

Change-Id: Ib43b5b20e67809d03c5a6890818ddff59e1fc94a

8 years agoVP9: minor block_yrd() refactoring
Scott LaVarnway [Mon, 13 Jun 2016 14:35:45 +0000 (07:35 -0700)]
VP9: minor block_yrd() refactoring

Change-Id: Ic0a81fb5816c8252ca4876753320fde5c28d893f

8 years agoMerge "vp9: Put lower limit on frames_to_key adjustment to gf interval."
Marco Paniconi [Fri, 10 Jun 2016 22:49:48 +0000 (22:49 +0000)]
Merge "vp9: Put lower limit on frames_to_key adjustment to gf interval."

8 years agoMerge "Add a couple of missing WRAPLOW checks"
Debargha Mukherjee [Fri, 10 Jun 2016 21:55:36 +0000 (21:55 +0000)]
Merge "Add a couple of missing WRAPLOW checks"

8 years agoMerge "vp9_diamond_search_sad_avx cosmetics"
James Zern [Fri, 10 Jun 2016 17:30:39 +0000 (17:30 +0000)]
Merge "vp9_diamond_search_sad_avx cosmetics"

8 years agovp9: Put lower limit on frames_to_key adjustment to gf interval.
Marco [Fri, 10 Jun 2016 17:04:46 +0000 (10:04 -0700)]
vp9: Put lower limit on frames_to_key adjustment to gf interval.

For 1 pass vbr.

Change-Id: I6c1c1cca3944150140e896e175b07ed518641b9b

8 years agovp9_diamond_search_sad_avx cosmetics
Scott LaVarnway [Fri, 10 Jun 2016 11:56:21 +0000 (04:56 -0700)]
vp9_diamond_search_sad_avx cosmetics

Fixed cosmetic issues noted in Change 349854.

Change-Id: I1d94070e4066fa920173013c5a36a30dd1cb357d

8 years agoMerge changes I58081309,I502fd707
James Zern [Thu, 9 Jun 2016 22:54:12 +0000 (22:54 +0000)]
Merge changes I58081309,I502fd707

* changes:
  fdct8x8_test: fix unsigned overflow
  fdct4x4_test: fix unsigned overflow

8 years agoAdd a couple of missing WRAPLOW checks
Debargha Mukherjee [Thu, 9 Jun 2016 19:58:27 +0000 (12:58 -0700)]
Add a couple of missing WRAPLOW checks

To make coefficient checking consistent with the VP9 spec sections
8.7.1.6 and 8.7.1.1.

Change-Id: I92e38e89a41d1e482317bb478c48ffa608d2d6ee

8 years agoSmall re-arrangement.
paulwilkins [Fri, 3 Jun 2016 14:42:47 +0000 (15:42 +0100)]
Small re-arrangement.

Move initialization of a some new "twopass" values
to the function vp9_init_second_pass() and some other
small  changes.

Remove #if GROUP_ADAPTIVE_MAXQ as this is always
enabled now.

Change-Id: I1dbec2fd7c419779848aa987c4cd7824d4df8456

8 years agovp9_subexp.h: normalize function prototype
James Zern [Thu, 9 Jun 2016 05:55:53 +0000 (22:55 -0700)]
vp9_subexp.h: normalize function prototype

vp9_prob_diff_update_savings_search_model

updated in:
19e0b40 Refactor probability savings search.

Change-Id: I13ae3106961f0271f51df17ee1c70c99f2d75f8f

8 years agoMerge "vp9: Use nonrd_pick_partition on scene-cut, for speed 5 vbr mode."
Marco Paniconi [Thu, 9 Jun 2016 00:49:02 +0000 (00:49 +0000)]
Merge "vp9: Use nonrd_pick_partition on scene-cut, for speed 5 vbr mode."

8 years agofdct8x8_test: fix unsigned overflow
James Zern [Thu, 9 Jun 2016 00:33:34 +0000 (17:33 -0700)]
fdct8x8_test: fix unsigned overflow

the difference between src and dst will be signed, the error will be
unsigned.
quiets -fsanitize=integer:
unsigned integer overflow: 4294967295 * 4294967295

Change-Id: I580813093ee46284fde7954520dfcb1188f79268

8 years agofdct4x4_test: fix unsigned overflow
James Zern [Thu, 9 Jun 2016 00:29:02 +0000 (17:29 -0700)]
fdct4x4_test: fix unsigned overflow

the difference between src and dst will be signed, the error will be
unsigned.
quiets -fsanitize=integer:
unsigned integer overflow: 4294967295 * 4294967295

Change-Id: I502fd707823c4faaa7f587c9cc0312f057e04904

8 years agovp9: Use nonrd_pick_partition on scene-cut, for speed 5 vbr mode.
Marco [Wed, 8 Jun 2016 20:03:29 +0000 (13:03 -0700)]
vp9: Use nonrd_pick_partition on scene-cut, for speed 5 vbr mode.

On scene-cut detected frames (i.e., high_source_sad = 1), use
nonrd_pick_partition (over choose_part + select_part), as
the nonrd_pick partitioning is generally better.

Small positive increase in metrics on ytlive set (~0.5 - 1%).
Negligle overall speed decrease, as its only used on scene-cut frames.

Only affects 1 pass vbr mode, speed = 5.

Change-Id: I07c89cbdc75f5bb16eb8e0e2773ead0980d2de5c

8 years agovp9: Reduce overshoot factor for setting longer gf interval.
Marco [Wed, 8 Jun 2016 22:13:52 +0000 (15:13 -0700)]
vp9: Reduce overshoot factor for setting longer gf interval.

Only affects 1 pass vbr mode.

Change-Id: Ifd7ff3771eabe322a371b35b159cace6baa3b070

8 years agoMerge "Refactor probability savings search."
Alex Converse [Wed, 8 Jun 2016 17:49:52 +0000 (17:49 +0000)]
Merge "Refactor probability savings search."

8 years agoMerge "Revert "remove vp9_diamond_search_sad_avx.c""
James Zern [Wed, 8 Jun 2016 02:56:00 +0000 (02:56 +0000)]
Merge "Revert "remove vp9_diamond_search_sad_avx.c""

8 years agoMerge "Avoid a potential assertion fail in optimize_b()"
Hui Su [Wed, 8 Jun 2016 00:33:48 +0000 (00:33 +0000)]
Merge "Avoid a potential assertion fail in optimize_b()"

8 years agoRevert "remove vp9_diamond_search_sad_avx.c"
Scott LaVarnway [Wed, 8 Jun 2016 00:21:01 +0000 (17:21 -0700)]
Revert "remove vp9_diamond_search_sad_avx.c"

This reverts commit be12fefa4b7d224e9f39275a6bb4fab01b8bae3b
and commit 057c1c4034ba5b9bf360c5c1f600ebc6d0718c3a.

Also, the mismatch between the avx version and the
c version has been fixed.

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

For a rt encode using 1080p@60fps material, up to 11% performance
improvement overall was seen.

Change-Id: Icd1f216209ebc6fc0b8da885f32f356fa4355ed0

8 years agoAvoid a potential assertion fail in optimize_b()
hui su [Tue, 7 Jun 2016 22:45:04 +0000 (15:45 -0700)]
Avoid a potential assertion fail in optimize_b()

The eob of a block is not perperly set when skip_recode is true,
thus triggering assert(eob <= default_eob) to fail.

Change-Id: Ifecbe33dce2dc4903e0a80bd384dc09bf0dd8a44

8 years agoMerge "ivfdec: tolerate invalid framerates (2)"
James Zern [Tue, 7 Jun 2016 22:39:49 +0000 (22:39 +0000)]
Merge "ivfdec: tolerate invalid framerates (2)"

8 years agoMerge "vp9: Replace the avg_size_inter metric, for 1 pass vbr."
Marco Paniconi [Tue, 7 Jun 2016 22:27:33 +0000 (22:27 +0000)]
Merge "vp9: Replace the avg_size_inter metric, for 1 pass vbr."

8 years agoMerge changes I999ef597,Ic6dc9f53
Johann Koenig [Tue, 7 Jun 2016 21:43:55 +0000 (21:43 +0000)]
Merge changes I999ef597,Ic6dc9f53

* changes:
  configure: Add -mstackrealign flags to CFLAGS on OS/2
  vpx: Add OS/2-specific threading codes

8 years agovp9: Replace the avg_size_inter metric, for 1 pass vbr.
Marco [Mon, 6 Jun 2016 22:11:08 +0000 (15:11 -0700)]
vp9: Replace the avg_size_inter metric, for 1 pass vbr.

Code cleaup, use existing rolling_actual/target metrics instead,
set threshold to get same/similar effect.

Little/no change in metrics on ytlive set.

Change-Id: I74f3c3d0a143a9cf20dc9c3dee54c0f7e6a97a51

8 years agovp9: Small ajustment to settings gf_interval, 1 pass vbr.
Marco [Mon, 6 Jun 2016 18:42:09 +0000 (11:42 -0700)]
vp9: Small ajustment to settings gf_interval, 1 pass vbr.

Add a max condition and lower the min value.

No change in behavior (metrics for yt live set) for the
default min/max_gf_interval=4/16 settings.
Small positive change when min/max_gf_interval=7/16
(for 60fps clips on ytlive set).

Change-Id: I1c1d72425c86c69419ea43fb9730130e81062f91

8 years agoMerge "Move range checks into WRAPLOW"
Debargha Mukherjee [Mon, 6 Jun 2016 16:28:23 +0000 (16:28 +0000)]
Merge "Move range checks into WRAPLOW"

8 years agoivfdec: tolerate invalid framerates (2)
James Zern [Sat, 4 Jun 2016 01:04:54 +0000 (18:04 -0700)]
ivfdec: tolerate invalid framerates (2)

add an upper bound to the framerate denominator above which 30fps will
be reported; fixes warning in corrupt / fuzzed files

Change-Id: I46a6a6f34ab756535cd009fe12273d83dcc1e9f1

8 years agoMerge changes If31d36c8,I10b947e7
James Zern [Sat, 4 Jun 2016 00:56:06 +0000 (00:56 +0000)]
Merge changes If31d36c8,I10b947e7

* changes:
  vpx_dsp,add_noise: remove mmx implementation
  vpx_dsp: remove mmx variance implementations

8 years agoMerge "Fix Visual Studio build failure in filter_selectively_vert_row2() calls"
James Zern [Fri, 3 Jun 2016 20:07:47 +0000 (20:07 +0000)]
Merge "Fix Visual Studio build failure in filter_selectively_vert_row2() calls"

8 years agoMove range checks into WRAPLOW
Debargha Mukherjee [Wed, 25 May 2016 19:24:48 +0000 (12:24 -0700)]
Move range checks into WRAPLOW

Provides more comprehensive coverage for --enable-coefficient-checking.
The intent is to make the --enable-coefficient-checking option
consistent with the VP9 spec.

Change-Id: I12d0120756d17572ca2b2d7e6a2ab9d8071d8d58

8 years agoMerge "Slightly more damped VBR adjustment."
Paul Wilkins [Fri, 3 Jun 2016 17:14:12 +0000 (17:14 +0000)]
Merge "Slightly more damped  VBR adjustment."

8 years agoMerge "Change to get_twopass_worst_quality()"
Paul Wilkins [Fri, 3 Jun 2016 17:13:51 +0000 (17:13 +0000)]
Merge "Change to get_twopass_worst_quality()"

8 years agoMerge "Removed unused data structure."
Paul Wilkins [Fri, 3 Jun 2016 17:13:33 +0000 (17:13 +0000)]
Merge "Removed unused data structure."

8 years agoMerge "Adjustment to VBR rate correction."
Paul Wilkins [Fri, 3 Jun 2016 17:13:13 +0000 (17:13 +0000)]
Merge "Adjustment to VBR rate correction."

8 years agoMerge "Adjustment calculation of active worst quality."
Paul Wilkins [Fri, 3 Jun 2016 17:12:51 +0000 (17:12 +0000)]
Merge "Adjustment calculation of active worst quality."

8 years agoMerge "Remove gf_zeromotion_pct."
Paul Wilkins [Fri, 3 Jun 2016 17:12:25 +0000 (17:12 +0000)]
Merge "Remove gf_zeromotion_pct."

8 years agoFix Visual Studio build failure in filter_selectively_vert_row2() calls
Linfeng Zhang [Fri, 3 Jun 2016 16:28:11 +0000 (09:28 -0700)]
Fix Visual Studio build failure in filter_selectively_vert_row2() calls

Error messages:
 ..\vp9\common\vp9_loopfilter.c(1312): warning C4244: 'function' :
conversion from 'uint64_t' to 'unsigned int', possible loss of data
[.build-x86_64-win64-vs10\vpx.vcxproj]

..\vp9\common\vp9_loopfilter.c(1313): warning C4244: 'function' :
conversion from 'uint64_t' to 'unsigned int', possible loss of data
[.build-x86_64-win64-vs10\vpx.vcxproj]

..\vp9\common\vp9_loopfilter.c(1312): error C2220: warning treated as
error - no 'object' file generated
[.build-x86_64-win64-vs10\vpx.vcxproj]

Change-Id: Ia69260611997cd2ba41c7184a85ecead740a7c07

8 years agoMerge "Slow pshufb removal in 3 intra prediction functions."
Linfeng Zhang [Fri, 3 Jun 2016 16:35:14 +0000 (16:35 +0000)]
Merge "Slow pshufb removal in 3 intra prediction functions."