platform/upstream/libvpx.git
8 years agopostproc - move filling of noise buffer to vpx_dsp.
Jim Bankoski [Wed, 13 Jul 2016 14:35:25 +0000 (07:35 -0700)]
postproc - move filling of noise buffer to vpx_dsp.

Change-Id: I63ba35dc0ae9286c9812367a531e01d79a4c1635

8 years agovp9_postproc.c missing extern.
Jim Bankoski [Wed, 13 Jul 2016 00:47:49 +0000 (17:47 -0700)]
vp9_postproc.c missing extern.

BUG=webm:1256

Change-Id: I5271e71bc53cce033fb906040643dcdd5ccb2381

8 years agoMerge changes from topic 'webp-thread-update'
James Zern [Wed, 13 Jul 2016 00:08:05 +0000 (00:08 +0000)]
Merge changes from topic 'webp-thread-update'

* changes:
  vpx_thread: use CreateThread for windows phone
  vpx_thread: use WaitForSingleObjectEx if available
  vpx_thread: use InitializeCriticalSectionEx if available
  vpx_thread: use native windows cond var if available
  vpx_thread.[hc]: update webp source reference

8 years agoMerge "vp9 svc: Reuse scaled_temp in two stage downscaling."
Jacky Chen [Tue, 12 Jul 2016 17:59:09 +0000 (17:59 +0000)]
Merge "vp9 svc: Reuse scaled_temp in two stage downscaling."

8 years agovp9 svc: Reuse scaled_temp in two stage downscaling.
JackyChen [Tue, 12 Jul 2016 00:06:10 +0000 (17:06 -0700)]
vp9 svc: Reuse scaled_temp in two stage downscaling.

This change eliminates redundant computation in the two stage
downscaling, which saves ~1% encoding time in 3-layer svc encoding.

Change-Id: Ib4b218811b68499a740af1f9b7b5a5445e28d671

8 years agodeblock filter : moved from vp8 code branch
Jim Bankoski [Fri, 8 Jul 2016 17:06:54 +0000 (10:06 -0700)]
deblock filter : moved from vp8 code branch

The deblocking filters used in vp8 have been moved to vpx_dsp for
use by both vp8 and vp9.

Change-Id: I5209d76edafc894b550f751fc76d3aa6799b392d

8 years agoMerge "remove *debugmodes.c from the default build"
James Zern [Mon, 11 Jul 2016 23:49:29 +0000 (23:49 +0000)]
Merge "remove *debugmodes.c from the default build"

8 years agoMerge "vp9_rd_pick_intra_mode_sb(): set interp_filter to"
Scott LaVarnway [Mon, 11 Jul 2016 22:31:05 +0000 (22:31 +0000)]
Merge "vp9_rd_pick_intra_mode_sb(): set interp_filter to"

8 years agovp9_rd_pick_intra_mode_sb(): set interp_filter to
Scott LaVarnway [Sat, 9 Jul 2016 16:47:34 +0000 (09:47 -0700)]
vp9_rd_pick_intra_mode_sb(): set interp_filter to

SWITCHABLE_FILTERS.  This is a partial fix for the build
issues with Change 357240.

Change-Id: I4e507c196175bae729a4f1397878ec8776b0146c

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 agovpx_thread: use CreateThread for windows phone
James Zern [Fri, 1 Jul 2016 21:38:14 +0000 (14:38 -0700)]
vpx_thread: use CreateThread for windows phone

BUG=b/29583578

original webp change:

commit d2afe974f9d751de144ef09d31255aea13b442c0
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 20:41:26 2015 -0800

    thread: use CreateThread for windows phone

    _beginthreadex is unavailable for winrt/uwp

    Change-Id: Ie7412a568278ac67f0047f1764e2521193d74d4d

100644 blob 93f7622797f05f6acc1126e8296c481d276e4047 src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

Change-Id: Iade8fff6367b45534986c77ebe61abeb45bce0f8

8 years agovpx_thread: use WaitForSingleObjectEx if available
James Zern [Fri, 1 Jul 2016 21:34:09 +0000 (14:34 -0700)]
vpx_thread: use WaitForSingleObjectEx if available

BUG=b/29583578

original webp change:

commit 0fd0e12bfe83f16ce4f1c038b251ccbc13c62ac2
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 20:40:26 2015 -0800

    thread: use WaitForSingleObjectEx if available

    Windows XP and up

    Change-Id: Ie1a46a82722b8624437c8aba0aa4566a4b0b3f57

100644 blob d58f74e5523dbc985fc531cf5f0833f1e9157cf0 src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

Change-Id: If165c38b378c6e0c55e17a1b071efd3ec3e7dcdd

8 years agovpx_thread: use InitializeCriticalSectionEx if available
James Zern [Fri, 1 Jul 2016 21:31:23 +0000 (14:31 -0700)]
vpx_thread: use InitializeCriticalSectionEx if available

BUG=b/29583578

original webp change:

commit 63fadc9ffacc77d4617526a50c696d21d558a70b
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 20:38:46 2015 -0800

    thread: use InitializeCriticalSectionEx if available

    Windows Vista / Server 2008 and up

    Change-Id: I32c5b4e5384d614c5a821ef511293ff014c67966

100644 blob f84207d89b3a6bb98bfe8f3fa55cad72dfd061ff src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

Change-Id: I9ce49b3a86857267e504cd8ceab503b7b441d614

8 years agovpx_thread: use native windows cond var if available
James Zern [Fri, 1 Jul 2016 21:29:04 +0000 (14:29 -0700)]
vpx_thread: use native windows cond var if available

BUG=b/29583578

original webp change:

commit 110ad5835ecd66995d0e7f66dca1b90dea595f5a
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 19:49:58 2015 -0800

    thread: use native windows cond var if available

    Vista / Server 2008 and up. no speed difference observed.

    Change-Id: Ice19704777cb679b290dc107a751a0f36dd0c0a9

100644 blob 4fc372b7bc6980a9ed3618c8cce5b67ed7b0f412 src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

Change-Id: Iede7ae8a7184e4b17a4050b33956918fc84e15b5

8 years agovpx_thread.[hc]: update webp source reference
James Zern [Fri, 1 Jul 2016 21:25:45 +0000 (14:25 -0700)]
vpx_thread.[hc]: update webp source reference

+ drop the blob hash, the updated reference will be updated in the
commit message

BUG=b/29583578

Change-Id: Ifabbe52a2f07ac29e1881f5c8a62d7f3eb3c2c04

8 years agoremove *debugmodes.c from the default build
James Zern [Sat, 2 Jul 2016 01:16:15 +0000 (18:16 -0700)]
remove *debugmodes.c from the default build

these are debug-only modules that can be added in manually when needed.
leave a reference in vp8_common.mk / vp9_common.mk for easy addition.

quiets -Wmissing-prototypes warning

BUG=b/29584271

Change-Id: Ifc8637d877edfbd562b34dc5c540428bba7951fc

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