James Zern [Wed, 22 Jun 2016 22:35:57 +0000 (22:35 +0000)]
Merge "remove vp10"
Nico Weber [Wed, 22 Jun 2016 19:06:47 +0000 (19:06 +0000)]
Merge "win: Include <intrin.h> instead of manually declaring intrinsics."
Nico Weber [Wed, 22 Jun 2016 18:44:47 +0000 (14:44 -0400)]
win: Include <intrin.h> instead of manually declaring intrinsics.
This helps clang-cl.
BUG=chromium:592745
Change-Id: I49f9b6928c91b2b43567f4336520ba4f1010d3ad
Yaowu Xu [Wed, 22 Jun 2016 17:41:52 +0000 (10:41 -0700)]
Prevent negative variance
Due to rounding used computation, HDB variance computation may produce
slightly negative values. This commit adds clamping to make sure
output variance values for 10 and 12 to be non-negative.
Change-Id: Id679aa55a4c201958c4c7d28cd8733b9246a71c8
Yaowu Xu [Wed, 22 Jun 2016 00:12:58 +0000 (00:12 +0000)]
Merge "Fix ubsan warnings: vp9/encoder/vp9_mcomp.c"
Yaowu Xu [Mon, 20 Jun 2016 17:13:30 +0000 (10:13 -0700)]
Fix ubsan warnings: vp9/encoder/vp9_mcomp.c
This commit fixes a number of ubsan warnings in HBD build.
BUG=webm:1219
Change-Id: I05f0fd0ef50e93db4ba34205005c54af1ed32acc
Hui Su [Tue, 21 Jun 2016 21:33:26 +0000 (21:33 +0000)]
Merge "Add a hardware compatibility feature"
Tom Finegan [Tue, 21 Jun 2016 17:53:54 +0000 (17:53 +0000)]
Merge "Disable neon for Xcode versions < v6.3."
hui su [Wed, 15 Jun 2016 18:39:41 +0000 (11:39 -0700)]
Add a hardware compatibility feature
This commit adds an encoder workaround to support better
compatibility with a non-compliant hardware vp9 profile 2 decoder.
The known issue with this decoder is:
The decoder assumes a wrong value, 127 instead of the correct
value of 511 and 2047, for any assumed top-left corner pixel in
UV planes for 10 and 12 bit, respectively. Such assumed
top-left corner pixel is used for INTRA prediction when a real
decoded/reconstructed pixel is not avalable, e.g. when it is
located inside the row above the top row or inside the column
left to the leftest column of a video image.
Change-Id: Ic15a938a3107e1b85e96cb7903a5c4220986b99d
Yaowu Xu [Mon, 20 Jun 2016 21:34:40 +0000 (21:34 +0000)]
Merge "Make type conversion explicit"
Yaowu Xu [Mon, 20 Jun 2016 19:33:33 +0000 (19:33 +0000)]
Merge "Fix ubsan warning: vp9/encoder/vp9_encodeframe.c"
Yaowu Xu [Mon, 20 Jun 2016 19:05:29 +0000 (12:05 -0700)]
Make type conversion explicit
This fixes MSVC warnings.
Change-Id: I675d8486230b2b74d7973d95720a4995c4750282
Jingning Han [Mon, 20 Jun 2016 16:48:22 +0000 (16:48 +0000)]
Merge "Refactor optimize_b for speed performance"
Jingning Han [Mon, 20 Jun 2016 16:48:01 +0000 (16:48 +0000)]
Merge "Port optimize_b speed-up from vp10"
Johann Koenig [Sun, 19 Jun 2016 23:51:33 +0000 (23:51 +0000)]
Merge "Configuration: Use 'is_in' instead of echo | grep"
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
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
James Zern [Fri, 17 Jun 2016 22:22:11 +0000 (15:22 -0700)]
remove vp10
development has moved to the nextgenv2 branch and a snapshot from here
was used to seed aomedia
BUG=b/
29457125
Change-Id: Iedaca11ec7870fb3a4e50b2c9ea0c2b056a0d3c0
Jingning Han [Sat, 18 Jun 2016 00:36:39 +0000 (17:36 -0700)]
Refactor optimize_b for speed performance
This commit refactors the trellis coefficient optimization process.
It saves multiplications used to generate the final dequantized
coefficients. It removes two memset operations on quantized
and dequantized coefficient sets. This improves the unit speed
by 10%.
Change-Id: I23f47c6e14582520a7f952f03ce8f72183e7f0e6
Jingning Han [Sat, 18 Jun 2016 00:11:01 +0000 (17:11 -0700)]
Port optimize_b speed-up from vp10
This commit back ports the speed-up from vp10. It improves the
unit speed by 15%.
Change-Id: Ibe8c0e0974b03266d6abd16a41e89c3b91d8db2a
Yaowu Xu [Sat, 18 Jun 2016 00:07:06 +0000 (17:07 -0700)]
Fix ubsan warning: vp9/encoder/vp9_encodeframe.c
BUG=webm:1219
Change-Id: I29b896c7f61abf871d7853b1d8200aa5a9f6a95c
Jingning Han [Fri, 17 Jun 2016 23:05:33 +0000 (23:05 +0000)]
Merge "Use 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
DO NOT USE [Fri, 17 Jun 2016 22:03:49 +0000 (22:03 +0000)]
Merge "Parse codec options in order of occurrence."
Johann [Fri, 17 Jun 2016 21:25:23 +0000 (14:25 -0700)]
Configuration: Use 'is_in' instead of echo | grep
Change-Id: I38f7684969f12a624980f4e06698379a49e61bdf
James Zern [Fri, 17 Jun 2016 21:18:21 +0000 (21:18 +0000)]
Merge "Fix warnings from gtest under GCC 5 or newer."
Johann Koenig [Fri, 17 Jun 2016 21:08:51 +0000 (21:08 +0000)]
Merge "Remove ios-version.sh"
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
Tom Finegan [Wed, 15 Jun 2016 21:34:34 +0000 (14:34 -0700)]
Disable neon for Xcode versions < v6.3.
vtbl1_u8 is marked unavailable prior to Xcode v6.3.
BUG=webm:1154
Change-Id: I08bd34f712ab7da72658c89d8b606658c1348923
Yaowu Xu [Fri, 17 Jun 2016 19:29:19 +0000 (19:29 +0000)]
Merge "Fix ubsan warnings: vp9/encoder/vp9_encoder.c"
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)
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
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
Johann Koenig [Fri, 17 Jun 2016 04:19:37 +0000 (04:19 +0000)]
Merge "vp8: correct function return types"
Johann Koenig [Fri, 17 Jun 2016 04:19:17 +0000 (04:19 +0000)]
Merge "VP8_COMP: make frames_since_golden signed"
James Zern [Fri, 17 Jun 2016 03:58:46 +0000 (03:58 +0000)]
Merge "vp9_pickmode: quiet int64->int conversion warning"
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
Johann Koenig [Thu, 16 Jun 2016 23:12:06 +0000 (23:12 +0000)]
Merge "vp8_[cd]x_iface.c: Initialize structures to 0"
Johann Koenig [Thu, 16 Jun 2016 22:29:04 +0000 (22:29 +0000)]
Merge "vp8 stats file: initialize 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
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
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
Johann Koenig [Thu, 16 Jun 2016 21:53:29 +0000 (21:53 +0000)]
Merge "vp8_change_config: fix unsigned/signed comparison"
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
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
Yaowu Xu [Thu, 16 Jun 2016 21:42:40 +0000 (21:42 +0000)]
Merge "Fix an ubsan warning: vp9_quantizer.c"
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
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
Yaowu Xu [Thu, 16 Jun 2016 19:40:20 +0000 (19:40 +0000)]
Merge "Fix 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
Yaowu Xu [Thu, 16 Jun 2016 18:09:09 +0000 (18:09 +0000)]
Merge "Fix ubsan warning: vp8/encoder/denoising.c"
Yaowu Xu [Thu, 16 Jun 2016 16:44:41 +0000 (16:44 +0000)]
Merge "Fix ubsan warning: vp8/encoder/onyx_ifc"
Yaowu Xu [Thu, 16 Jun 2016 16:44:35 +0000 (16:44 +0000)]
Merge "Fix ubsan warning: vp9_cx_iface.c"
Marco Paniconi [Thu, 16 Jun 2016 16:07:06 +0000 (16:07 +0000)]
Merge "vp9: Adjustments to nonrd-pickmode for vbr"
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
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
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
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
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
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"
Jacky Chen [Wed, 15 Jun 2016 22:50:04 +0000 (22:50 +0000)]
Merge "vp9: Add bias to last frame in choose_partitioning."
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
Scott LaVarnway [Wed, 15 Jun 2016 21:02:45 +0000 (21:02 +0000)]
Merge "VP9: block_yrd(): Use RD_COST * instead"
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
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
Johann Koenig [Wed, 15 Jun 2016 18:26:55 +0000 (18:26 +0000)]
Merge "Match prev_ to number_of_layers"
Johann Koenig [Wed, 15 Jun 2016 18:23:33 +0000 (18:23 +0000)]
Merge "Use data size directly instead of recomputing."
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."
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
Scott LaVarnway [Wed, 15 Jun 2016 11:46:54 +0000 (11:46 +0000)]
Merge "VP9: minor block_yrd() refactoring"
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
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
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
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
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
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
Johann Koenig [Tue, 14 Jun 2016 19:22:59 +0000 (19:22 +0000)]
Merge "hadamard 16x16 test"
Jacky Chen [Tue, 14 Jun 2016 15:41:31 +0000 (15:41 +0000)]
Merge "vp9: Encoding cycle reduction for speed 8."
Paul Wilkins [Tue, 14 Jun 2016 11:46:58 +0000 (11:46 +0000)]
Merge "Small re-arrangement."
Johann [Thu, 12 May 2016 20:02:26 +0000 (13:02 -0700)]
hadamard 16x16 test
BUG=webm:1027
Change-Id: Ibe58781905b372b9fe29dace39b4bfdd33fd0f83
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
Scott LaVarnway [Mon, 13 Jun 2016 14:35:45 +0000 (07:35 -0700)]
VP9: minor block_yrd() refactoring
Change-Id: Ic0a81fb5816c8252ca4876753320fde5c28d893f
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."
Debargha Mukherjee [Fri, 10 Jun 2016 21:55:36 +0000 (21:55 +0000)]
Merge "Add a couple of missing WRAPLOW checks"
James Zern [Fri, 10 Jun 2016 17:30:39 +0000 (17:30 +0000)]
Merge "vp9_diamond_search_sad_avx cosmetics"
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
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
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
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
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
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
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."
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
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
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
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
Alex Converse [Wed, 8 Jun 2016 17:49:52 +0000 (17:49 +0000)]
Merge "Refactor probability savings search."
James Zern [Wed, 8 Jun 2016 02:56:00 +0000 (02:56 +0000)]
Merge "Revert "remove vp9_diamond_search_sad_avx.c""
Hui Su [Wed, 8 Jun 2016 00:33:48 +0000 (00:33 +0000)]
Merge "Avoid a potential assertion fail in optimize_b()"
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