platform/upstream/libvpx.git
8 years agoFix encoder crashes for odd size input
Yaowu Xu [Tue, 12 Jul 2016 18:11:26 +0000 (11:11 -0700)]
Fix encoder crashes for odd size input

Change-Id: Id5c30c419282369cc8c3280d9a70b34a859a71d8

8 years agoFix non-highbitdepth coding path for HBD build
Yaowu Xu [Fri, 8 Jul 2016 18:02:59 +0000 (11:02 -0700)]
Fix non-highbitdepth coding path for HBD build

Change-Id: I38eb42b8d051924a7cd1ccc3421a4057cf6e170f

8 years agoMerge "vp9: Adjustment of gfu_boost and af_ratio for 1 pass vbr."
Marco Paniconi [Fri, 8 Jul 2016 16:26:06 +0000 (16:26 +0000)]
Merge "vp9: Adjustment of gfu_boost and af_ratio for 1 pass vbr."

8 years agoMerge "Enable HBD support in real time encoding path"
Yaowu Xu [Thu, 7 Jul 2016 22:32:48 +0000 (22:32 +0000)]
Merge "Enable HBD support in real time encoding path"

8 years agovp9: Adjustment of gfu_boost and af_ratio for 1 pass vbr.
Marco [Fri, 1 Jul 2016 18:49:12 +0000 (11:49 -0700)]
vp9: Adjustment of gfu_boost and af_ratio for 1 pass vbr.

Modify the gfu_boost and af_ratio setting based on the
average frame motion level.

Change only affects 1 pass vbr.

Metrics overall positive on ytlive set.
On average up by ~1%, several clips up by 2-4%.

Change-Id: Ic18c49eb2df74cb4986b63cdb11be36d86ab5e8d

8 years agoMerge "vp9: Adjustment to mv bias for non-rd pickmode."
Marco Paniconi [Thu, 7 Jul 2016 21:07:37 +0000 (21:07 +0000)]
Merge "vp9: Adjustment to mv bias for non-rd pickmode."

8 years agoEnable coeff optimization for intra modes
Jingning Han [Wed, 6 Jul 2016 20:56:02 +0000 (13:56 -0700)]
Enable coeff optimization for intra modes

This further improves the coding performance by
lowres 0.3%
midres 0.5%
hdres  0.6%

Change-Id: I6a03b6da210b9cbc261474bad4a103e0ba021c68

8 years agoUse precise context to estimate coeff rate cost
Jingning Han [Wed, 6 Jul 2016 19:46:48 +0000 (12:46 -0700)]
Use precise context to estimate coeff rate cost

Use the precise context to estimate the zero token cost in trellis
optimization process. This improves the speed 0 coding performance
by 0.15% for lowres and 0.1% for midres. It improves the speed 1
coding performance by 0.2% for midres and hdres.

Change-Id: I59c7c08702fc79dc4f8534b64ca594da909e2c91

8 years agoEnable uniform quantization with trellis optimization in speed 0
Jingning Han [Wed, 6 Jul 2016 17:05:51 +0000 (10:05 -0700)]
Enable uniform quantization with trellis optimization in speed 0

This commit allows the inter prediction residual to use uniform
quantization followed by trellis coefficient optimization in
speed 0. It improves the coding performance by

lowres 0.79%
midres 1.07%
hdres  1.44%

Change-Id: I46ef8cfe042a4ccc7a0055515012cd6cbf5c9619

8 years agoRefactor coeff_cost() function
Jingning Han [Wed, 6 Jul 2016 16:58:22 +0000 (09:58 -0700)]
Refactor coeff_cost() function

Move the operations that update the context buffers outside this
function. The coeff_cost() takes all input as const value and returns
the coefficient cost.

This makes preparation for the next coefficient optimization CLs.

Change-Id: I850eec6e5470b91ea84646ff26b9231b09f70a0c

8 years agoMerge "Support measure distortion in the pixel domain"
Jingning Han [Thu, 7 Jul 2016 18:09:20 +0000 (18:09 +0000)]
Merge "Support measure distortion in the pixel domain"

8 years agovp9: Adjustment to mv bias for non-rd pickmode.
Marco [Wed, 29 Jun 2016 17:38:23 +0000 (10:38 -0700)]
vp9: Adjustment to mv bias for non-rd pickmode.

Replace the existing mv bias with a bias only for
NEWMV, and based on the motion vector difference of
its top/left neighbors.

For cbr non-screen-content mode.

Change-Id: I8a8cf56347cfa23e9ffd8ead69eec8746c8f9e09

8 years agoMerge "Fix Visual Studio build warning"
Yunqing Wang [Thu, 7 Jul 2016 16:48:48 +0000 (16:48 +0000)]
Merge "Fix Visual Studio build warning"

8 years agoFix Visual Studio build warning
Yunqing Wang [Thu, 7 Jul 2016 15:43:57 +0000 (08:43 -0700)]
Fix Visual Studio build warning

Fixed signed/unsigned mismatch warning.

Change-Id: I1634d0634de752f4b8baa8059e8f3e2891fa53b6

8 years agoMerge "Add experimental spatial de-noise filter on key frames."
Paul Wilkins [Thu, 7 Jul 2016 13:30:07 +0000 (13:30 +0000)]
Merge "Add experimental spatial de-noise filter on key frames."

8 years agoSupport measure distortion in the pixel domain
Jingning Han [Fri, 1 Jul 2016 23:02:41 +0000 (16:02 -0700)]
Support measure distortion in the pixel domain

Use pixel domain distortion metric in speed 0. This improves the
compression performance by 0.3% for both low and high resolution
test sets.

Change-Id: I5b5b7115960de73f0b5e5d0c69db305e490e6f1d

8 years agoEnable HBD support in real time encoding path
Yaowu Xu [Wed, 6 Jul 2016 20:58:34 +0000 (13:58 -0700)]
Enable HBD support in real time encoding path

BUG=webm:1223

Change-Id: If83a613784e3b2a33c9c93f9ad0ba39dd4d23056

8 years agoMerge "Remove decode asserts from better-hw-compatibility"
Debargha Mukherjee [Wed, 6 Jul 2016 20:55:28 +0000 (20:55 +0000)]
Merge "Remove decode asserts from better-hw-compatibility"

8 years agoMerge "vp9: Choose the scheme for modeling rd for 32x32 based on skin color."
Jacky Chen [Wed, 6 Jul 2016 20:03:54 +0000 (20:03 +0000)]
Merge "vp9: Choose the scheme for modeling rd for 32x32 based on skin color."

8 years agoRemove decode asserts from better-hw-compatibility
Debargha Mukherjee [Fri, 1 Jul 2016 08:51:13 +0000 (01:51 -0700)]
Remove decode asserts from better-hw-compatibility

Safer to have the decoder operate normally and have
better-hw-compatibility only implement encoding changes.
Fixes some test failures.

Change-Id: I0dd70d002e4e893992f0cd59774b9363e6f7fe76

8 years agoMerge "Modify the name of vp9cx_set_ref example"
Yunqing Wang [Wed, 6 Jul 2016 18:55:15 +0000 (18:55 +0000)]
Merge "Modify the name of vp9cx_set_ref example"

8 years agovp9: Choose the scheme for modeling rd for 32x32 based on skin color.
JackyChen [Wed, 6 Jul 2016 17:57:15 +0000 (10:57 -0700)]
vp9: Choose the scheme for modeling rd for 32x32 based on skin color.

For real time CBR mode, use model_rd_for_sb_y for 32x32 if the sb is
a skin sb to avoid visual regression on the slowly moving face.

Refer to the cl: https://chromium-review.googlesource.com/#/c/356020/

Change-Id: I42c36666b2b474ce5ee274239d52ae8ab400fd46

8 years agoEliminate isolated and small tail coefficients:
Min Ye [Mon, 20 Jun 2016 17:06:38 +0000 (10:06 -0700)]
Eliminate isolated and small tail coefficients:

Improve hdres PSNR by 0.696%
Improve midres PSNR by 0.313%
Improve lowres PSNR by 0.142%

Change-Id: Icabde78aa9689f539f6a03ec09f712c20758796c

8 years agoModify the name of vp9cx_set_ref example
Yunqing Wang [Wed, 6 Jul 2016 17:01:16 +0000 (10:01 -0700)]
Modify the name of vp9cx_set_ref example

Modified the name of vp9cx_set_ref example so that the test script
ran correctly.

Change-Id: I0ab2de66220b0a88b7af7ea1633a088ab78dd9ff

8 years agoMerge "Remove txfrm_block_to_raster_xy() from vp9 encoder"
Jingning Han [Wed, 6 Jul 2016 16:00:18 +0000 (16:00 +0000)]
Merge "Remove txfrm_block_to_raster_xy() from vp9 encoder"

8 years agoMerge "Make set_reference control API work in VP9"
Yunqing Wang [Wed, 6 Jul 2016 00:08:52 +0000 (00:08 +0000)]
Merge "Make set_reference control API work in VP9"

8 years agoRemove txfrm_block_to_raster_xy() from vp9 encoder
Jingning Han [Fri, 1 Jul 2016 19:20:45 +0000 (12:20 -0700)]
Remove txfrm_block_to_raster_xy() from vp9 encoder

The transform block row and column positions are always available
outside the callees. There is no need to re-compute these values
again. This approach has been used by the decoder. This commit
removes txfrm_block_to_raster_xy() function.

Change-Id: I5b90f91a0d8b7c35cfa7d171da9edf8202630108

8 years agoMerge "improve vpx_filter_block1d* based on replace paddsw+psrlw to pmulhrsw"
James Zern [Sat, 2 Jul 2016 03:08:32 +0000 (03:08 +0000)]
Merge "improve vpx_filter_block1d* based on replace paddsw+psrlw to pmulhrsw"

8 years agoMerge "Update vpx subpixel 1d filter ssse3 asm"
James Zern [Sat, 2 Jul 2016 03:08:17 +0000 (03:08 +0000)]
Merge "Update vpx subpixel 1d filter ssse3 asm"

8 years agoMake set_reference control API work in VP9
Yunqing Wang [Sat, 2 Jul 2016 00:58:02 +0000 (17:58 -0700)]
Make set_reference control API work in VP9

Moved the API patch from NextGenv2. An example was included.
To try it, for example, run the following command:
$ examples/vpx_cx_set_ref vp9 352 288 in.yuv out.ivf 4 30

Change-Id: I4cf8f23b86d7ebd85ffd2630dcfbd799c0b88101

8 years agovp8/common/reconintra4x4.c: add missing include
James Zern [Fri, 1 Jul 2016 23:17:04 +0000 (16:17 -0700)]
vp8/common/reconintra4x4.c: add missing include

quiets -Wmissing-prototypes warning

BUG=b/29584271

Change-Id: I806e3475ebee579dce0073dd1784a7c2899e7de0

8 years agoMerge "Revert "libyuv: update to 2f101fdb""
James Bankoski [Fri, 1 Jul 2016 19:14:53 +0000 (19:14 +0000)]
Merge "Revert "libyuv: update to 2f101fdb""

8 years agoRevert "libyuv: update to 2f101fdb"
James Bankoski [Fri, 1 Jul 2016 19:08:04 +0000 (19:08 +0000)]
Revert "libyuv: update to 2f101fdb"

Compile failures on linux platform.

BUG=webm:1253

This reverts commit aa81375d73ee33d382e7f717c519db6159e497ee.

Change-Id: Ibab2c4827bc21518dc03c6e9716b5015cff56fc7

8 years agoMerge changes I59a11921,I296a0b81,I397d7753
Johann Koenig [Fri, 1 Jul 2016 18:13:40 +0000 (18:13 +0000)]
Merge changes I59a11921,I296a0b81,I397d7753

* changes:
  configure: remove x86inc.asm distinction
  test: remove x86inc.asm distinction
  vpx_dsp: remove x86inc.asm distinction

8 years agoMerge "convolve_test: fix byte offsets in hbd build"
James Zern [Fri, 1 Jul 2016 01:54:29 +0000 (01:54 +0000)]
Merge "convolve_test: fix byte offsets in hbd build"

8 years agoMerge "vp9 postproc: Bug fix and code clean."
Jacky Chen [Thu, 30 Jun 2016 21:59:43 +0000 (21:59 +0000)]
Merge "vp9 postproc: Bug fix and code clean."

8 years agoMerge "libyuv: update to 2f101fdb"
James Bankoski [Thu, 30 Jun 2016 19:11:30 +0000 (19:11 +0000)]
Merge "libyuv: update to 2f101fdb"

8 years agoconfigure: remove x86inc.asm distinction
Johann [Thu, 30 Jun 2016 01:37:33 +0000 (18:37 -0700)]
configure: remove x86inc.asm distinction

BUG=b:29583530

Change-Id: I59a1192142e89a6a36b906f65a491a734e603617

8 years agotest: remove x86inc.asm distinction
Johann [Thu, 30 Jun 2016 01:24:40 +0000 (18:24 -0700)]
test: remove x86inc.asm distinction

BUG=b:29583530

Change-Id: I296a0b81755e3086bc0a40cb126d0200ff03c095

8 years agoMerge "vp9: remove x86inc.asm distinction"
Johann Koenig [Thu, 30 Jun 2016 17:42:17 +0000 (17:42 +0000)]
Merge "vp9: remove x86inc.asm distinction"

8 years agoMerge "Require x86inc.asm"
Johann Koenig [Thu, 30 Jun 2016 17:41:33 +0000 (17:41 +0000)]
Merge "Require x86inc.asm"

8 years agoMerge "Fix error in get_ul_intra_threshold() for 10/12 bit."
Paul Wilkins [Thu, 30 Jun 2016 16:26:14 +0000 (16:26 +0000)]
Merge "Fix error in get_ul_intra_threshold() for 10/12 bit."

8 years agoMerge "Fix error in get_smooth_intra_threshold() for 10/12 bit."
Paul Wilkins [Thu, 30 Jun 2016 16:25:54 +0000 (16:25 +0000)]
Merge "Fix error in get_smooth_intra_threshold() for 10/12 bit."

8 years agolibyuv: update to 2f101fdb
Jim Bankoski [Wed, 29 Jun 2016 23:18:01 +0000 (16:18 -0700)]
libyuv: update to 2f101fdb

Fixes color issue when scaling without breaking mingw.

BUG=https://bugs.chromium.org/p/libyuv/issues/detail?id=605
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1252

Change-Id: Ifba747feb0c6a08f2b353b820a24c6c145d440ad

8 years agoFix error in get_ul_intra_threshold() for 10/12 bit.
paulwilkins [Thu, 30 Jun 2016 12:38:57 +0000 (13:38 +0100)]
Fix error in get_ul_intra_threshold() for 10/12 bit.

The scaling of the threshold for 10 and 12 bit here appears
to be in the wrong direction. For 10 and 12 bit we expect sse
values to be higher and hence the threshold used should be
scaled up not down.

Change-Id: I2678116652b539aef48100e0f22873edd4f5a786

8 years agoFix error in get_smooth_intra_threshold() for 10/12 bit.
paulwilkins [Thu, 30 Jun 2016 12:31:39 +0000 (13:31 +0100)]
Fix error in get_smooth_intra_threshold() for 10/12 bit.

This function seems to scale the threshold for testing an
SSE value in the wrong direction for 10 and 12 bit inputs.

Also for a true SSE the scalings should probably be << 4 and 8

Change-Id: Iba8047b3f70d04aa46d9688a824f3d49c1c58e90

8 years agoMerge "vp9: Change the scheme for modeling rd for 32x32 on newmv_last mode."
Jacky Chen [Thu, 30 Jun 2016 05:59:46 +0000 (05:59 +0000)]
Merge "vp9: Change the scheme for modeling rd for 32x32 on newmv_last mode."

8 years agoconvolve_test: fix byte offsets in hbd build
James Zern [Thu, 30 Jun 2016 03:37:12 +0000 (20:37 -0700)]
convolve_test: fix byte offsets in hbd build

CONVERT_TO_BYTEPTR(x) was corrected in:
003a9d2 Port metric computation changes from nextgenv2
to use the more common (x) within the expansion. offsets should occur
after converting the pointer to the desired type.

+ factorized some common expressions

Change-Id: I171c3faaa5606d098e984baa9aa74bb36042f57f

8 years agovpx_dsp: remove x86inc.asm distinction
Johann [Thu, 30 Jun 2016 01:15:49 +0000 (18:15 -0700)]
vpx_dsp: remove x86inc.asm distinction

BUG=b:29583530

Change-Id: I397d77536b0d3cee0a92cdfe8b76bc4e434d0720

8 years agovp9: remove x86inc.asm distinction
Johann [Thu, 30 Jun 2016 01:07:17 +0000 (18:07 -0700)]
vp9: remove x86inc.asm distinction

BUG=b:29583530

Change-Id: I952da3fc0d4716dec897be0d2e9806af6612722b

8 years agoRequire x86inc.asm
Johann [Thu, 30 Jun 2016 01:03:27 +0000 (18:03 -0700)]
Require x86inc.asm

Force enable x86inc.asm when building for x86. Previously there were
compatibility issues so a flag was added to simplify disabling this
code.

The known issues have been resolved and x86inc.asm is the preferred
abstraction layer (over x86_abi_support.asm).

BUG=b:29583530

Change-Id: Ib935e97b37ffb22d7af72ba0f04564ae6280f1fd

8 years agoconfigure: restore vs_version variable
James Zern [Wed, 29 Jun 2016 23:57:28 +0000 (16:57 -0700)]
configure: restore vs_version variable

inadvertently lost in the final patchset of:
078dff7 configure: remove old visual studio support (<2010)

this prevents an empty CONFIG_VS_VERSION and avoids make failure

Change-Id: I529d52eca59329e2715309efd63d80f0e1fed462

8 years agovp9: Change the scheme for modeling rd for 32x32 on newmv_last mode.
JackyChen [Wed, 29 Jun 2016 23:22:12 +0000 (16:22 -0700)]
vp9: Change the scheme for modeling rd for 32x32 on newmv_last mode.

For real time CBR mode, use model_rd_for_sb_y for 32x32 if the mode is
newmv last, which is less aggressive in skipping transform and
quantization, to avoid quality regression in some conditions.

Change-Id: Ifa30be587f2a8a4a7f182a172de6ce277c0f8556

8 years agoMerge "Revert "libyuv: update to b8ddb5a2""
James Bankoski [Wed, 29 Jun 2016 23:20:25 +0000 (23:20 +0000)]
Merge "Revert "libyuv: update to b8ddb5a2""

8 years agoRevert "libyuv: update to b8ddb5a2"
James Bankoski [Wed, 29 Jun 2016 23:05:51 +0000 (23:05 +0000)]
Revert "libyuv: update to b8ddb5a2"

This reverts commit b8f83282f8506ad3d839440341bbe683df7d2cf6.

Update was to wrong version and still has:

BUG=webm:1252

Change-Id: I80f3a7c0581ab5e2dd1a84f7840e51d7c362afac

8 years agoMerge changes I9433d858,Iafd05637,If08ce6ca
James Zern [Wed, 29 Jun 2016 23:07:15 +0000 (23:07 +0000)]
Merge changes I9433d858,Iafd05637,If08ce6ca

* changes:
  tests: remove redundant round() definition
  remove visual studio < 2010 workarounds
  configure: remove old visual studio support (<2010)

8 years agoMerge "Remove effectless initialization"
Yaowu Xu [Wed, 29 Jun 2016 22:51:14 +0000 (22:51 +0000)]
Merge "Remove effectless initialization"

8 years agotests: remove redundant round() definition
James Zern [Tue, 28 Jun 2016 03:43:04 +0000 (20:43 -0700)]
tests: remove redundant round() definition

use vpx_ports/msvc.h for compatibility

BUG=b/29583530

Change-Id: I9433d8586cd0b790e7f4d697304298feafe801f1

8 years agoMerge "Prevent negative variance"
Yaowu Xu [Wed, 29 Jun 2016 20:53:36 +0000 (20:53 +0000)]
Merge "Prevent negative variance"

8 years agoUpdate vpx subpixel 1d filter ssse3 asm
Linfeng Zhang [Thu, 9 Jun 2016 20:46:09 +0000 (13:46 -0700)]
Update vpx subpixel 1d filter ssse3 asm

Speed test shows the new vertical filters have degradation on Celeron
Chromebook. Added "X86_SUBPIX_VFILTER_PREFER_SLOW_CELERON" to control
the vertical filters activated code. Now just simply active the code
without degradation on Celeron. Later there should be 2 set of vertical
filters ssse3 functions, and let jump table to choose based on CPU type.

Change-Id: Iba2f1f2fe059a9d142c396d03a6b8d2d3b981e87

8 years agoPrevent negative variance
Yaowu Xu [Wed, 29 Jun 2016 18:08:17 +0000 (11:08 -0700)]
Prevent negative variance

Due to rounding, hbd variance may become negative. This commit put in
check and clamp of negative values to 0.

Change-Id: I610d9c8aa2d4eebe7bc5f2c5624a9e3cadad4c94

8 years agoMerge "libyuv: update to b8ddb5a2"
James Bankoski [Wed, 29 Jun 2016 17:58:39 +0000 (17:58 +0000)]
Merge "libyuv: update to b8ddb5a2"

8 years agolibyuv: update to b8ddb5a2
Jim Bankoski [Tue, 28 Jun 2016 14:26:07 +0000 (07:26 -0700)]
libyuv: update to b8ddb5a2

Fixes color issue when scaling without breaking mingw.

BUG=https://bugs.chromium.org/p/libyuv/issues/detail?id=605
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1252

Change-Id: I3920c5664def7ae7a23f60fb160d26d23bc86a27

8 years agoAdd experimental spatial de-noise filter on key frames.
paulwilkins [Wed, 3 Feb 2016 15:37:32 +0000 (15:37 +0000)]
Add experimental spatial de-noise filter on key frames.

For forced key frames in particular this helps to make them
blend better with the surrounding frames where noise tends
to be suppressed by a combination of quantization and alt
ref filtering.

Currently disabled by default under and IFDEF flag pending
wider testing.

Change-Id: I971b5cc2b2a4b9e1f11fe06c67ef073f01b25056

8 years agoMerge "VP9: handle_inter_mode()... Use interp_filter"
Scott LaVarnway [Wed, 29 Jun 2016 11:41:51 +0000 (11:41 +0000)]
Merge "VP9: handle_inter_mode()... Use interp_filter"

8 years agoremove visual studio < 2010 workarounds
James Zern [Tue, 28 Jun 2016 03:29:01 +0000 (20:29 -0700)]
remove visual studio < 2010 workarounds

BUG=b/29583530

Change-Id: Iafd05637eb65f4da54a9c857e79204a77646858a

8 years agoconfigure: remove old visual studio support (<2010)
James Zern [Tue, 28 Jun 2016 03:08:12 +0000 (20:08 -0700)]
configure: remove old visual studio support (<2010)

BUG=b/29583530

Change-Id: If08ce6ca352f377ac4db6b9b1909b507bba6d872

8 years agovp9 postproc: Bug fix and code clean.
jackychen [Tue, 28 Jun 2016 22:38:18 +0000 (15:38 -0700)]
vp9 postproc: Bug fix and code clean.

Bug fix: The crash is caused by not allocating buffer for prev_mip in
postproc_state and prev_mip in postproc_state is only used for MFQE,
ohter postproc modules, deblocking and etc., should not use it.

BUG=webm:1251

Change-Id: I3120d2f50603b4a2d400e92d583960a513953a28

8 years agoVP9: handle_inter_mode()... Use interp_filter
Scott LaVarnway [Tue, 28 Jun 2016 21:09:59 +0000 (14:09 -0700)]
VP9: handle_inter_mode()... Use interp_filter

only if above/left is inter.

Change-Id: I0cc1f926425c021c84536df8271e9ee5f3f87caf

8 years agoMerge "vp9: Increase thr_var for 32x32 blocks in var-based partitioning."
Jacky Chen [Tue, 28 Jun 2016 20:54:06 +0000 (20:54 +0000)]
Merge "vp9: Increase thr_var for 32x32 blocks in var-based partitioning."

8 years agoMerge "vp9: Move chroma sensitivity check out from choose_partitioning."
Jacky Chen [Tue, 28 Jun 2016 20:53:23 +0000 (20:53 +0000)]
Merge "vp9: Move chroma sensitivity check out from choose_partitioning."

8 years agoRemove effectless initialization
Yaowu Xu [Tue, 28 Jun 2016 19:28:45 +0000 (12:28 -0700)]
Remove effectless initialization

Change-Id: Iec117841a7ecf6f99d2b718057d8646e221c5c64

8 years agoMerge "*.asm: normalize label format"
James Zern [Tue, 28 Jun 2016 19:22:10 +0000 (19:22 +0000)]
Merge "*.asm: normalize label format"

8 years agovp9: Move chroma sensitivity check out from choose_partitioning.
jackychen [Mon, 27 Jun 2016 21:08:34 +0000 (14:08 -0700)]
vp9: Move chroma sensitivity check out from choose_partitioning.

Change-Id: Ie78185a30cac4d1841be3708bd23e6505d3733b6

8 years agoMerge "psnr.c: use int64_t for sum of differences"
Yaowu Xu [Tue, 28 Jun 2016 16:55:44 +0000 (16:55 +0000)]
Merge "psnr.c: use int64_t for sum of differences"

8 years agopsnr.c: use int64_t for sum of differences
Yaowu Xu [Tue, 28 Jun 2016 16:53:11 +0000 (09:53 -0700)]
psnr.c: use int64_t for sum of differences

Since the values can be negative.

Change-Id: Idda69e9fb47bb34696aeb20170341a0191c5d85e

8 years agoMerge "mips added p6600 cpu support"
Parag Salasakar [Tue, 28 Jun 2016 08:45:01 +0000 (08:45 +0000)]
Merge "mips added p6600 cpu support"

8 years ago*.asm: normalize label format
James Zern [Wed, 22 Jun 2016 19:18:49 +0000 (12:18 -0700)]
*.asm: normalize label format

add a trailing ':', though it's optional with the tools we support, it's
more common to use it to mark a label. this also quiets the
orphan-labels warning with nasm/yasm.

BUG=b/29583530

Change-Id: I46e95255e12026dd542d9838e2dd3fbddf7b56e2

8 years agoMerge "Revert "libyuv: update to 1b3e4aee47""
James Bankoski [Mon, 27 Jun 2016 22:59:11 +0000 (22:59 +0000)]
Merge "Revert "libyuv: update to 1b3e4aee47""

8 years agoRevert "libyuv: update to 1b3e4aee47"
James Bankoski [Mon, 27 Jun 2016 22:25:24 +0000 (22:25 +0000)]
Revert "libyuv: update to 1b3e4aee47"

This reverts commit 0c6caf187c59e5d6bdabd8596c1910c6866da7aa.

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

Fails mingw_64 builds.

Change-Id: I83e7204bf1be48b499dc32b2597693b95ec49d06

8 years agovp9: Increase thr_var for 32x32 blocks in var-based partitioning.
jackychen [Thu, 23 Jun 2016 16:40:49 +0000 (09:40 -0700)]
vp9: Increase thr_var for 32x32 blocks in var-based partitioning.

For real-time mode, increase variance threshold for 32x32 blocks in
var-based partitioning for resolution >= 720p, so that it is more
likely to stay at 32x32 for high resolution which accelerates the
encoding speed with little/no PSNR drop.

PSNR effect on different speed settings:
speed 8 rtc: 0.02 overall PSNR drop, 0.285% SSIM drop
speed 7 rtc: 0.196% overall PSNR increase, 0.066% SSIM increase
speed 5 rtc_derf: no effect.

Speed up:
gips_motion_WHD, 1mbps: 2.5% faster on speed 7, 2.6% faster on speed8
gips_stat_WHD, 1mbps: 4.6% faster on speed 7, 5.6% faster on speed8

Change-Id: Ie7c33c4d2dd7d09294917e031357fc5476c3a4bb

8 years agoMerge "libyuv: update to 1b3e4aee47"
James Bankoski [Mon, 27 Jun 2016 19:32:50 +0000 (19:32 +0000)]
Merge "libyuv: update to 1b3e4aee47"

8 years agoMerge "Port metric computation changes from nextgenv2"
Yaowu Xu [Mon, 27 Jun 2016 19:18:00 +0000 (19:18 +0000)]
Merge "Port metric computation changes from nextgenv2"

8 years agoimprove vpx_filter_block1d* based on replace paddsw+psrlw to pmulhrsw
Min Chen [Sat, 25 Jun 2016 01:56:28 +0000 (20:56 -0500)]
improve vpx_filter_block1d* based on replace paddsw+psrlw to pmulhrsw

Change-Id: I14c0c2e54d0b0584df88e9a3f0a256ec096bea6e

8 years agomips added p6600 cpu support
Parag Salasakar [Mon, 27 Jun 2016 07:32:55 +0000 (13:02 +0530)]
mips added p6600 cpu support

Removed -funroll-loops

Change-Id: I6684bcac62902c10f945a6dcc4ed803203fcd829

8 years agoFix ubsan warnings: vp9/encoder/vp9_pickmode.c
Yaowu Xu [Mon, 20 Jun 2016 17:42:56 +0000 (10:42 -0700)]
Fix ubsan warnings: vp9/encoder/vp9_pickmode.c

This commit fixes a number of integer out of range issue in HBD build.

BUG=webm:1219

Change-Id: Ib4192dc74a500e1b86c37a399114c7f6d4ed5185

8 years agoMerge "s/UINT32_MAX/UINT_MAX/"
James Zern [Sat, 25 Jun 2016 21:09:55 +0000 (21:09 +0000)]
Merge "s/UINT32_MAX/UINT_MAX/"

8 years agos/UINT32_MAX/UINT_MAX/
James Zern [Sat, 25 Jun 2016 17:58:38 +0000 (10:58 -0700)]
s/UINT32_MAX/UINT_MAX/

provides better toolchain compatibility

Change-Id: I8561a6de668a68ff54fe3886a4ee6300f0ae9c04

8 years agovp9_pickmode: revert rd modeling change for hbd
James Zern [Sat, 25 Jun 2016 18:13:02 +0000 (11:13 -0700)]
vp9_pickmode: revert rd modeling change for hbd

Avoids a segfault in high-bitdepth builds.
This restores the condition to its state prior to:
7991241 vp9: Change the scheme for modeling rd for bsize 32x32.

BUG=webm:1250

Change-Id: I6183d5b34cb89dfbf27b7bb589812148a72cd7de

8 years agoRevert "Update vpx subpixel 1d filter ssse3 asm"
James Zern [Sat, 25 Jun 2016 18:26:27 +0000 (11:26 -0700)]
Revert "Update vpx subpixel 1d filter ssse3 asm"

This reverts commit 1517fb74fd40eaab67246e8fb81d5c321bb33b06.

Fixes a segfault in windows x64 builds.

Change-Id: I6a6959cd7e64a28376849a9f2b11fc852a7c1fbe

8 years agoMerge "vp9: Change the scheme for modeling rd for bsize 32x32."
Jacky Chen [Sat, 25 Jun 2016 00:43:40 +0000 (00:43 +0000)]
Merge "vp9: Change the scheme for modeling rd for bsize 32x32."

8 years agoMerge "datarate_test,DatarateTestLarge: normalize bits type"
James Zern [Sat, 25 Jun 2016 00:36:05 +0000 (00:36 +0000)]
Merge "datarate_test,DatarateTestLarge: normalize bits type"

8 years agoMerge "vp9: Code clean, move low temp var logic out of choose_partitioning."
Jacky Chen [Fri, 24 Jun 2016 22:00:49 +0000 (22:00 +0000)]
Merge "vp9: Code clean, move low temp var logic out of choose_partitioning."

8 years agolibyuv: update to 1b3e4aee47
Jim Bankoski [Fri, 24 Jun 2016 21:37:13 +0000 (14:37 -0700)]
libyuv: update to 1b3e4aee47

Color issue when scaling.   https://codereview.chromium.org/2084533006/

Change-Id: I84d74346f754c02a5b770b87b6e0b6885d03bb20

8 years agoMerge "cosmetics: Beautify whitespaces and line wrapping"
James Zern [Fri, 24 Jun 2016 21:51:01 +0000 (21:51 +0000)]
Merge "cosmetics: Beautify whitespaces and line wrapping"

8 years agoMerge "cosmetics: Change few types to their posix version"
James Zern [Fri, 24 Jun 2016 21:50:45 +0000 (21:50 +0000)]
Merge "cosmetics: Change few types to their posix version"

8 years agoMerge "cosmetics: Make few conditions clearer"
James Zern [Fri, 24 Jun 2016 21:50:32 +0000 (21:50 +0000)]
Merge "cosmetics: Make few conditions clearer"

8 years agoPort metric computation changes from nextgenv2
Yaowu Xu [Fri, 24 Jun 2016 19:44:23 +0000 (12:44 -0700)]
Port metric computation changes from nextgenv2

Change-Id: I4aceffcdf7af59ffeb51984f0345c3a4c7e76a9f

8 years agovp9: Code clean, move low temp var logic out of choose_partitioning.
jackychen [Fri, 24 Jun 2016 17:42:00 +0000 (10:42 -0700)]
vp9: Code clean, move low temp var logic out of choose_partitioning.

Change-Id: I7093e74131e0964471c9993c1e972b4617c4731d

8 years agovp9: Change the scheme for modeling rd for bsize 32x32.
jackychen [Fri, 24 Jun 2016 16:39:27 +0000 (09:39 -0700)]
vp9: Change the scheme for modeling rd for bsize 32x32.

For real-time CBR mode, use model_rd_for_sb_y_large instead of
model_rd_for_sb_y for 32x32 block. In the former model, transform
might be skipped more aggressively in some condtions, which speeds
up encoding time with only a little PSNR/SSIM drop on rtc test set.
No obvious visual quality regression.

PSNR effect on different speed settings:
speed 8 rtc:  0.129% overall PSNR drop, 0.137% SSIM drop
speed 7 rtc:  0.135% overall PSNR drop, 0.062% SSIM drop
speed 5 rtc_derf: 0.105% overall PSNR drop, 0.095% SSIM drop

Speed up:
gips_motion_WHD, 1mbps: 3.29% faster on speed 7, 2.56% faster on speed8
gips_stat_WHD, 1mbps: 2.17% faster on speed 7, 1.62% faster on speed8

BUG=webm:1250

Change-Id: I818babce5b8549b4b1a7c3978df8591bffde7173