platform/upstream/libvpx.git
4 years agoFix saturation issue in vp9_quantize_fp_neon
Jerome Jiang [Thu, 1 Aug 2019 17:48:35 +0000 (10:48 -0700)]
Fix saturation issue in vp9_quantize_fp_neon

Change-Id: I7850a5c5aea3633e50e9a2efc8116b9e16383a8f

5 years agoMerge "Add vp9_non_greedy_mv.c/h"
Angie Chiang [Wed, 24 Jul 2019 21:01:42 +0000 (21:01 +0000)]
Merge "Add vp9_non_greedy_mv.c/h"

5 years agoMerge "vp9-rtc: Add intra speed feature for speed >= 8"
Marco Paniconi [Tue, 23 Jul 2019 18:29:48 +0000 (18:29 +0000)]
Merge "vp9-rtc: Add intra speed feature for speed >= 8"

5 years agoMerge "Add Horn & Schunck Estimator"
Dan Zhu [Tue, 23 Jul 2019 18:16:37 +0000 (18:16 +0000)]
Merge "Add Horn & Schunck Estimator"

5 years agoMerge "Add Exhaust Search (Neighbor Constrain) Estimator"
Dan Zhu [Tue, 23 Jul 2019 18:16:24 +0000 (18:16 +0000)]
Merge "Add Exhaust Search (Neighbor Constrain) Estimator"

5 years agoMerge "Add Ground Truth Estimator"
Dan Zhu [Tue, 23 Jul 2019 18:16:11 +0000 (18:16 +0000)]
Merge "Add Ground Truth Estimator"

5 years agoMerge "Based Class of Motion Field Estimators"
Dan Zhu [Tue, 23 Jul 2019 18:09:56 +0000 (18:09 +0000)]
Merge "Based Class of Motion Field Estimators"

5 years agoAdd Horn & Schunck Estimator
Dan Zhu [Thu, 18 Jul 2019 02:44:52 +0000 (19:44 -0700)]
Add Horn & Schunck Estimator

Add Matrix solver
Fix a little bug in MotionEST

Change-Id: I8513475646f4f02df31b245fa750483449de9407

5 years agoAdd Exhaust Search (Neighbor Constrain) Estimator
Dan Zhu [Thu, 18 Jul 2019 02:43:56 +0000 (19:43 -0700)]
Add Exhaust Search (Neighbor Constrain) Estimator

Change-Id: I1e306979a0d308285155c152837125fb2036091a

5 years agoAdd Ground Truth Estimator
Dan Zhu [Thu, 18 Jul 2019 02:36:32 +0000 (19:36 -0700)]
Add Ground Truth Estimator

Change-Id: Iec6c7e49a64610e33a77c7d5d772e6b063a0f1e0

5 years agoBased Class of Motion Field Estimators
Dan Zhu [Wed, 17 Jul 2019 22:20:27 +0000 (15:20 -0700)]
Based Class of Motion Field Estimators

Change-Id: Id01ce15273c0cab0cd61d064099d200708360265

5 years agovp9-rtc: Add intra speed feature for speed >= 8
Marco Paniconi [Mon, 22 Jul 2019 16:49:02 +0000 (09:49 -0700)]
vp9-rtc: Add intra speed feature for speed >= 8

Add intra speed feature to force DC only under intra mode
testing when source sad for superblock is not high.
Feature is only enable at speed >=8. With this feature
enabled at speed 8 we now allow for H/V intra check as
well for speed 8.

This helps to redude artifacts for speed 8, by allowing H/V mode
to be checked for blocks when the superblock has high
source sad/content change.

Change-Id: I0495ce96b4cc844e8c625b5183eef180dbaaaa72

5 years agoMerge "Remove unused fb_cb related fields from VP9_COMMON"
Wan-Teh Chang [Fri, 19 Jul 2019 15:45:55 +0000 (15:45 +0000)]
Merge "Remove unused fb_cb related fields from VP9_COMMON"

5 years agoAdd vp9_non_greedy_mv.c/h
Angie Chiang [Thu, 18 Jul 2019 22:08:02 +0000 (15:08 -0700)]
Add vp9_non_greedy_mv.c/h

Move vp9_nb_mvs_inconsistency to vp9_non_greedy_mv.c
This is to facilitate following SIMD optimizations.

Change-Id: I8eb8f820368928e0c4fb287e557cddf0bd2c763e

5 years agoMerge changes I3216c984,I70d40060
Angie Chiang [Thu, 18 Jul 2019 22:12:12 +0000 (22:12 +0000)]
Merge changes I3216c984,I70d40060

* changes:
  Make vp9_prepare_nb_full_mvs only return valid mvs
  Let vp9_nb_mvs_inconsistency call log2 just once

5 years agoRemove unused fb_cb related fields from VP9_COMMON
Wan-Teh Chang [Thu, 18 Jul 2019 21:37:32 +0000 (14:37 -0700)]
Remove unused fb_cb related fields from VP9_COMMON

Remove the cb_priv, get_fb_cb, release_fb_cb, and int_frame_buffers
fields from the VP9_COMMON struct. They are not being used.

Change-Id: I235194aa8b315cd8ec9405bbba5feb3bee69f7e0

5 years agoMake vp9_prepare_nb_full_mvs only return valid mvs
Angie Chiang [Wed, 17 Jul 2019 19:36:14 +0000 (12:36 -0700)]
Make vp9_prepare_nb_full_mvs only return valid mvs

In this case, vp9_nb_mvs_inconsistency doesn't need to check
whether each neighbor mv is valid or not.

non_greedy_mv encoding time is reduced by 1.5%

Change-Id: I3216c98481e777d5e0b917ea20ee39b7ca9c9d23

5 years agoLet vp9_nb_mvs_inconsistency call log2 just once
Angie Chiang [Wed, 17 Jul 2019 00:49:22 +0000 (17:49 -0700)]
Let vp9_nb_mvs_inconsistency call log2 just once

The bahavior of this function is to compute log2 of mv difference,
i.e. min log2(1 + row_diff * row_diff + col_diff * col_diff)
against available neghbor mvs.
Since the log2 is monotonic increasing, we can compute
min row_diff * row_diff + col_diff * col_diff first
then apply log2 in the end

non_greedy_mv encoding time is reduced by 1.5%

Change-Id: I70d40060e2621daec27229f1f6d9fea0286aa04e

5 years agoMerge "Fix comment typos."
Wan-Teh Chang [Wed, 17 Jul 2019 20:13:10 +0000 (20:13 +0000)]
Merge "Fix comment typos."

5 years agoFix comment typos.
Wan-Teh Chang [Wed, 17 Jul 2019 18:09:55 +0000 (11:09 -0700)]
Fix comment typos.

Fix comment typos in transpose_s16_4x4q() and transpose_u16_4x4q().

Change-Id: I21bcc1fb3fb880798e5a3927c3dbe81dd518c83b

5 years agoAdd vpx_sad32x32x8_c/avx2
Angie Chiang [Sun, 14 Jul 2019 16:20:58 +0000 (09:20 -0700)]
Add vpx_sad32x32x8_c/avx2

Change-Id: I4dbb7b6c8979c39eb6ffb97750e3cca0f4b7921f

5 years agoAdd unit test for vpx_sadMxNx8
Angie Chiang [Sun, 14 Jul 2019 15:59:18 +0000 (08:59 -0700)]
Add unit test for vpx_sadMxNx8

Change-Id: Ica85e3738708e2a6cc7388fd2cbf6a8840a540d5

5 years agoMerge remote-tracking branch 'origin/orpington'
Johann [Tue, 16 Jul 2019 18:35:06 +0000 (11:35 -0700)]
Merge remote-tracking branch 'origin/orpington'

BUG=webm:1624

Change-Id: I62e7154d95b3361d6184f0448430bed951f15044

5 years agoMerge "Limit active best quality of layered ARF frames"
Paul Wilkins [Tue, 16 Jul 2019 15:06:05 +0000 (15:06 +0000)]
Merge "Limit active best quality of layered ARF frames"

5 years agoRelease v1.8.1 Orpington Duck v1.8.1
Johann [Mon, 15 Jul 2019 21:55:33 +0000 (14:55 -0700)]
Release v1.8.1 Orpington Duck

BUG=webm:1624

Change-Id: Ibd63b64058e52448e0916939a3f85eb23c8161b6

5 years agoMerge changes I9288c88d,Ib1ac6f57,I02fac56a,Id6a8b117
Angie Chiang [Mon, 15 Jul 2019 18:40:10 +0000 (18:40 +0000)]
Merge changes I9288c88d,Ib1ac6f57,I02fac56a,Id6a8b117

* changes:
  Use sdx8f in exhaustive_mesh_search_single_step
  Sync the behavior of exhaustive_mesh_search
  Refactor exhaustive_mesh_search_new
  Simplify code in exhaustive_mesh_search_new

5 years agoMerge "Revert "Set up frame contexts based on frame type""
Yunqing Wang [Mon, 15 Jul 2019 18:31:09 +0000 (18:31 +0000)]
Merge "Revert "Set up frame contexts based on frame type""

5 years agoRevert "Set up frame contexts based on frame type"
Yunqing Wang [Mon, 15 Jul 2019 17:15:37 +0000 (17:15 +0000)]
Revert "Set up frame contexts based on frame type"

This reverts commit affd9921e405063ed7815f412b15e634c8c9cfca.

Reason for revert:  Quality regression
(VP9/EndToEndTestLarge.EndtoEndPSNRTest/195 failed)

BUG=webm:1635

Original change's description:
> Set up frame contexts based on frame type
>
> In single layer ARF case, use different frame
> contexts for KF, ARF/GF, LF, OVERLAY update types.
>
> Change-Id: Iebb7f9bb430e483dea1e75fc122b9b67645ce804

Change-Id: I98a4eaa6ec0ae6616ea5ad35d1580501b7422e1b

5 years agoUse sdx8f in exhaustive_mesh_search_single_step
Angie Chiang [Fri, 12 Jul 2019 23:15:55 +0000 (16:15 -0700)]
Use sdx8f in exhaustive_mesh_search_single_step

This speed up non_greedy_mv by 4%

Change-Id: I9288c88db56ea4201a7ec4493ca5c567d76af0f1

5 years agoSync the behavior of exhaustive_mesh_search
Angie Chiang [Thu, 11 Jul 2019 23:52:50 +0000 (16:52 -0700)]
Sync the behavior of exhaustive_mesh_search

Change-Id: Ib1ac6f57519eb4da93e7c75b0c26a372ffc5d524

5 years agoRefactor exhaustive_mesh_search_new
Angie Chiang [Thu, 11 Jul 2019 23:04:13 +0000 (16:04 -0700)]
Refactor exhaustive_mesh_search_new

Add the following two functions:
exhaustive_mesh_search_multi_step
exhaustive_mesh_search_single_step

Change-Id: I02fac56a815b091beab2203afce560d7d29aad44

5 years agoSimplify code in exhaustive_mesh_search_new
Angie Chiang [Thu, 11 Jul 2019 22:25:31 +0000 (15:25 -0700)]
Simplify code in exhaustive_mesh_search_new

Change-Id: Id6a8b117b066a56e9312f528ec8f417dd4b2a2d8

5 years agoMerge "Adjust the quality of boosted frames"
Yunqing Wang [Thu, 11 Jul 2019 15:07:55 +0000 (15:07 +0000)]
Merge "Adjust the quality of boosted frames"

5 years agoMerge "Set up frame contexts based on frame type"
Yunqing Wang [Thu, 11 Jul 2019 15:07:35 +0000 (15:07 +0000)]
Merge "Set up frame contexts based on frame type"

5 years agoMerge "Modify frame context index"
Yunqing Wang [Thu, 11 Jul 2019 15:07:17 +0000 (15:07 +0000)]
Merge "Modify frame context index"

5 years agovp9-rtc: Reduce color artifact for speed 8
Marco Paniconi [Wed, 10 Jul 2019 16:48:19 +0000 (09:48 -0700)]
vp9-rtc: Reduce color artifact for speed 8

Push the reduced chroma check to speed > 8.

Change-Id: I92dd0aa9933bb5417b1dc5eef8f805ee51e04ac9

5 years agovp9: Use mb_rows/cols from VP9_COMMON in postproc.
Jerome Jiang [Tue, 9 Jul 2019 23:46:24 +0000 (16:46 -0700)]
vp9: Use mb_rows/cols from VP9_COMMON in postproc.

When frame height is not divisible by 16, the calculation of mb_rows in
postproc was wrong.

Change-Id: I69d108f1b8facdd5650b5b7928a0033b268530d2

5 years agoMerge "Remove android_tools deps"
James Zern [Tue, 2 Jul 2019 18:46:30 +0000 (18:46 +0000)]
Merge "Remove android_tools deps"

5 years agoRemove android_tools deps
Yun Liu [Mon, 1 Jul 2019 21:44:28 +0000 (14:44 -0700)]
Remove android_tools deps

Bug: 428426
Change-Id: Ia3c31fe2b513ac995baad15c8376c590fd1104f7

5 years agovp9_cx_iface,encoder_encode: fix -Wclobbered for pts
James Zern [Sun, 30 Jun 2019 01:18:15 +0000 (18:18 -0700)]
vp9_cx_iface,encoder_encode: fix -Wclobbered for pts

Change-Id: Ia7fd4fedb0dcbb626d0e7f4951360e2462b518e2
(cherry picked from commit ae3c6e9ec7dbaad8ee507b1c531c54bdc0141e9f)

5 years agoMerge "vp9_cx_iface,encoder_encode: fix -Wclobbered for pts"
James Zern [Mon, 1 Jul 2019 22:17:46 +0000 (22:17 +0000)]
Merge "vp9_cx_iface,encoder_encode: fix -Wclobbered for pts"

5 years agovp9-rtc: Fix color artifacts for speed >= 8
Marco Paniconi [Mon, 1 Jul 2019 04:16:40 +0000 (21:16 -0700)]
vp9-rtc: Fix color artifacts for speed >= 8

Fix to avoid color artifacts observed for speed >= 8.
In model_rd_large in non_rd pickmode: always do the
transform skipping test for UV plane.

BUG=b/136198713

Change-Id: Idd91322fb898fe731846d8581b21010096f87680
(cherry picked from commit c33c7ca85fa7b28658f3b086d579a7fbbcf41dea)

5 years agovp9-rtc: Fix color artifacts for speed >= 8
Marco Paniconi [Mon, 1 Jul 2019 04:16:40 +0000 (21:16 -0700)]
vp9-rtc: Fix color artifacts for speed >= 8

Fix to avoid color artifacts observed for speed >= 8.
In model_rd_large in non_rd pickmode: always do the
transform skipping test for UV plane.

BUG=b/136198713

Change-Id: Idd91322fb898fe731846d8581b21010096f87680

5 years agoAdjust the quality of boosted frames
Ravi Chaudhary [Fri, 24 May 2019 05:57:06 +0000 (11:27 +0530)]
Adjust the quality of boosted frames

As the boosted frames, early in key frame interval,
are used as reference by many subsequent boosted frames,
boosted frames that are closer to the reference key frame
should be allocated with more target bits than the rest.
Similarly, the active best quality should be lower for
boosted frames early in the key interval and vice versa.
Hence, the bits allocation and active best quality are varied
based on their temporal position in the key frame interval.

Change-Id: I1362248560d074b9e209657a23ae73dda0b01d52

5 years agovp9_cx_iface,encoder_encode: fix -Wclobbered for pts
James Zern [Sun, 30 Jun 2019 01:18:15 +0000 (18:18 -0700)]
vp9_cx_iface,encoder_encode: fix -Wclobbered for pts

Change-Id: Ia7fd4fedb0dcbb626d0e7f4951360e2462b518e2

5 years agoadd flags for empty blocks
Dan Zhu [Fri, 28 Jun 2019 21:07:44 +0000 (14:07 -0700)]
add flags for empty blocks

Change-Id: Iedf3bdd87d203db5163d3cc47fcbef1fd002218f

5 years agoMerge changes I833c82fb,I05a39165,Ie044bb01,I565f477f
Angie Chiang [Fri, 28 Jun 2019 17:50:28 +0000 (17:50 +0000)]
Merge changes I833c82fb,I05a39165,Ie044bb01,I565f477f

* changes:
  Integerize vp9_full_pixel_diamond_new
  Integerize vp9_refining_search_sad_new
  Integerize diamond_search_sad_new()
  Refactor vp9_full_pixel_diamond_new

5 years agoMerge "vp9_encodeframe: quiet a few integer sanitizer warnings"
James Zern [Fri, 28 Jun 2019 02:52:20 +0000 (02:52 +0000)]
Merge "vp9_encodeframe: quiet a few integer sanitizer warnings"

5 years agovp9_encodeframe: quiet a few integer sanitizer warnings
James Zern [Thu, 27 Jun 2019 22:53:58 +0000 (15:53 -0700)]
vp9_encodeframe: quiet a few integer sanitizer warnings

implicit conversion from type 'int' of value -2 (32-bit, signed) to type
'uint8_t' (aka 'unsigned char') changed the value to 254 (8-bit,
unsigned)

BUG=webm:1615

Change-Id: I9b8f5a9df3211e344e91d67a45d321e7115f5d4a

5 years agotimestamp_test: enable TestMicrosecondTimebase
James Zern [Thu, 27 Jun 2019 22:21:23 +0000 (15:21 -0700)]
timestamp_test: enable TestMicrosecondTimebase

this doesn't cause any overflow issues after:
11de1b838 Fix timestamp overflow issues

BUG=webm:701,webm:1614

Change-Id: I7e1cbfa4264d1661eb9a5baa2b2111a0899360f2

5 years agoMerge "Change parameters for highbd tune=ssim"
Sai Deng [Thu, 27 Jun 2019 16:57:05 +0000 (16:57 +0000)]
Merge "Change parameters for highbd tune=ssim"

5 years agoIntegerize vp9_full_pixel_diamond_new
Angie Chiang [Wed, 26 Jun 2019 23:28:46 +0000 (16:28 -0700)]
Integerize vp9_full_pixel_diamond_new

Change-Id: I833c82fb910c8274b5a237e26fe0dcda7def9796

5 years agoIntegerize vp9_refining_search_sad_new
Angie Chiang [Wed, 26 Jun 2019 23:18:01 +0000 (16:18 -0700)]
Integerize vp9_refining_search_sad_new

Change-Id: I05a39165b9910262eca8fdf644ae982b80d309b4

5 years agoIntegerize diamond_search_sad_new()
Angie Chiang [Wed, 26 Jun 2019 23:02:00 +0000 (16:02 -0700)]
Integerize diamond_search_sad_new()

Change-Id: Ie044bb01e26d871bace309ae1f45aa880ea1de62

5 years agoRefactor vp9_full_pixel_diamond_new
Angie Chiang [Wed, 26 Jun 2019 22:46:43 +0000 (15:46 -0700)]
Refactor vp9_full_pixel_diamond_new

Remove redundant bestsme assignments

Change-Id: I565f477f51c2a13369ebd1532eed05115e774238

5 years agoRemove mv_dist/mv_cost from new mv search funcs
Angie Chiang [Tue, 25 Jun 2019 22:43:43 +0000 (15:43 -0700)]
Remove mv_dist/mv_cost from new mv search funcs

The functions are
diamond_search_sad_new()
vp9_full_pixel_diamond_new()
vp9_refining_search_sad_new()

Change-Id: Ied6fe98b8a1401c95f0488faf781c5cd5e8e0db6

5 years agoSpeed up diamond_search_sad_new
Angie Chiang [Tue, 25 Jun 2019 22:21:17 +0000 (15:21 -0700)]
Speed up diamond_search_sad_new

The percentage of encoding time spent on diamond_search_sad_new
reduces from 8% to 6%

Change-Id: I1be55b957475d780974cc2e721f8c2d4d266e916

5 years agoLet full_pixel_exhaustive_new return int64_t
Angie Chiang [Tue, 25 Jun 2019 21:35:24 +0000 (14:35 -0700)]
Let full_pixel_exhaustive_new return int64_t

Change-Id: I2c7cd7363a1b61b7aa7c35fd9f4e6b926b67418f

5 years agoscript to compact frames to y4m video
Dan Zhu [Thu, 20 Jun 2019 23:05:30 +0000 (16:05 -0700)]
script to compact frames to y4m video

Change-Id: I2d8c3ccf49c172a54181aeb2e2b8169bf5402456

5 years agoadd output of frame info
Dan Zhu [Thu, 20 Jun 2019 04:34:22 +0000 (21:34 -0700)]
add output of frame info

Change-Id: I70d750be13d9a654d1f21d7809d8d44c491ae477

5 years agoAdd Ray Tracing
Dan Zhu [Wed, 19 Jun 2019 17:54:23 +0000 (10:54 -0700)]
Add Ray Tracing

Add braces

Change-Id: I5355ccd8f745dfbd4fe3923a81aa3c9f8fda07b3

5 years agoChange parameters for highbd tune=ssim
sdeng [Wed, 12 Jun 2019 23:05:33 +0000 (16:05 -0700)]
Change parameters for highbd tune=ssim

With this CL:
             PSNR   SSIM    MS-SSIM
lowres_10bd  2.8    -5.6    -6.5
midres_10bd  2.6    -5.6    -6.3

Before this CL:
             PSNR   SSIM    MS-SSIM
lowres_10bd  6.1    -6.5    -7.7
midres_10bd  6.2    -6.0    -7.2

Change-Id: Iad0ad96d55ad140db00ce86c34ab85461cd963eb

5 years agoSet up frame contexts based on frame type
Deepa K G [Thu, 20 Jun 2019 13:00:41 +0000 (18:30 +0530)]
Set up frame contexts based on frame type

In single layer ARF case, use different frame
contexts for KF, ARF/GF, LF, OVERLAY update types.

Change-Id: Iebb7f9bb430e483dea1e75fc122b9b67645ce804

5 years agoModify frame context index
Deepa K G [Mon, 24 Jun 2019 07:04:28 +0000 (12:34 +0530)]
Modify frame context index

Used separate frame contexts for non-boosted frames.
Adjusted the frame context index grouping for boosted
frames.

Change-Id: I7f6f83f53d46f66a83a6806c2b568bd833ce940d

5 years agoAdd Scene module to manage other objects
Dan Zhu [Fri, 14 Jun 2019 18:42:01 +0000 (11:42 -0700)]
Add Scene module to manage other objects

and calculation

Add interpolation in the Scene

Delete Color interpolation

Build triangle mesh

Reconstruct the code of depth interpolation

Add new data structure Node for back linking

Change-Id: Ibb1e896a2e3623d4549d628539d81d79827ba684

5 years agoIntegerize exhaustive_mesh_search_new()
Angie Chiang [Fri, 21 Jun 2019 00:06:14 +0000 (17:06 -0700)]
Integerize exhaustive_mesh_search_new()

Change-Id: Ia87ed60f46384e7bb7c5f55e9e28c406562a6f19

5 years agoMake vp9_nb_mvs_inconsistency return int64_t
Angie Chiang [Thu, 20 Jun 2019 23:06:56 +0000 (16:06 -0700)]
Make vp9_nb_mvs_inconsistency return int64_t

Change-Id: I925156ed45e13a06c449c2fbff8a3c26baf8d835

5 years agoMake type of lambda int in TplDepFrame
Angie Chiang [Wed, 19 Jun 2019 23:25:00 +0000 (16:25 -0700)]
Make type of lambda int in TplDepFrame

Change-Id: I8fdf1ad4790201b1624c8408d92983aeb0b08302

5 years agoIntegerize log2_approximation()
Angie Chiang [Wed, 19 Jun 2019 21:51:26 +0000 (14:51 -0700)]
Integerize log2_approximation()

Change-Id: If645bf6a90f4bfb5a51ca0a78b88d1eb5bedbec2

5 years agovsx: disable on all builds
Johann [Thu, 20 Jun 2019 17:43:09 +0000 (10:43 -0700)]
vsx: disable on all builds

The previous change to disable some vsx functions did not clear
the test failures. Disable vsx by default until it is investigated
and fixed.

BUG=webm:1522

Change-Id: I8ba2e7261ea3eee5022832da7e4a22bf8daa0996

5 years agoMerge "vp8: Allow higher resolution to get periodic keyframe."
Jerome Jiang [Thu, 20 Jun 2019 17:20:54 +0000 (17:20 +0000)]
Merge "vp8: Allow higher resolution to get periodic keyframe."

5 years agoMerge "Change log2_fast to log2_approximation"
Angie Chiang [Thu, 20 Jun 2019 17:14:15 +0000 (17:14 +0000)]
Merge "Change log2_fast to log2_approximation"

5 years agoMerge "Start with q=active_best_quality for non-forced key frames"
Ravi Chaudhary [Thu, 20 Jun 2019 08:57:43 +0000 (08:57 +0000)]
Merge "Start with q=active_best_quality for non-forced key frames"

5 years agoStart with q=active_best_quality for non-forced key frames
Ravi Chaudhary [Wed, 22 May 2019 04:46:30 +0000 (10:16 +0530)]
Start with q=active_best_quality for non-forced key frames

Change-Id: I435d247ab4d1d160f12f5a3710e6cafb5cfd6610

5 years agovp8: Allow higher resolution to get periodic keyframe.
Jerome Jiang [Wed, 19 Jun 2019 22:26:05 +0000 (15:26 -0700)]
vp8: Allow higher resolution to get periodic keyframe.

BUG=webm:1632

Change-Id: Ib05a010245e77f9d502c3e7b8f488fca280ea544

5 years agoChange log2_fast to log2_approximation
Angie Chiang [Tue, 18 Jun 2019 22:33:23 +0000 (15:33 -0700)]
Change log2_fast to log2_approximation

This reduce non_greedy_mv encoding time by 8.9%

Use linear approximation for value >= 1024

BDRate increases slightly on hdres
lowres: -0.002
midres: 0.007
hdres: 0.057

Change-Id: I55fd5e0bf0ab2206a286e11974f701cc48084be8

5 years agoMerge "3D reconstruction tool build by Processing"
Dan Zhu [Wed, 19 Jun 2019 17:13:50 +0000 (17:13 +0000)]
Merge "3D reconstruction tool build by Processing"

5 years agoMerge "Implement log2_fast for vp9_nb_mvs_inconsistency"
Angie Chiang [Wed, 19 Jun 2019 16:45:15 +0000 (16:45 +0000)]
Merge "Implement log2_fast for vp9_nb_mvs_inconsistency"

5 years agoMerge "Fix timestamp overflow issues"
Yue Chen [Tue, 18 Jun 2019 23:39:09 +0000 (23:39 +0000)]
Merge "Fix timestamp overflow issues"

5 years agoImplement log2_fast for vp9_nb_mvs_inconsistency
Angie Chiang [Tue, 18 Jun 2019 16:53:25 +0000 (09:53 -0700)]
Implement log2_fast for vp9_nb_mvs_inconsistency

This speed up non_greedy_mv by 8.7%

Change-Id: Ia46e3e7c4d32ec364091fad26cc953c62963e526

5 years agoFix timestamp overflow issues
Yue Chen [Fri, 12 Apr 2019 22:30:05 +0000 (15:30 -0700)]
Fix timestamp overflow issues

- Save the initial user-specified timestamp and rebase all further
timestamps by this value. This makes libvpx internal timestamps to
always start from zero, regardless of the user's timestamps.
- Calculate reduced timestamp conversion ratio and use it to convert
user's timestamps to libvpx internal timestamps and back. The effect
of this is that integer overflow due to multiplication doesn't
happen for a much longer time.

BUG=webm:701

Change-Id: Ic6f5eacd9a7c21b95707d31ee2da77dc8ac7dccf

5 years agoMerge "Fix memory leak for vp8 multi-res encoder."
Jerome Jiang [Sat, 15 Jun 2019 00:34:40 +0000 (00:34 +0000)]
Merge "Fix memory leak for vp8 multi-res encoder."

5 years agovpx_dec_fuzzer: Remove fmemopen dependency
Harish Mahendrakar [Fri, 14 Jun 2019 18:08:36 +0000 (11:08 -0700)]
vpx_dec_fuzzer: Remove fmemopen dependency

fmemopen is not preferred during fuzzing.
Removed all file operations.

Removed need for allocating a different input buffer.
data buffer is appropriately incremented and passed directly to decoder
This will also test input being sent in an unaligned buffer to the library.

Removed read_frame function and did the required parsing inline.

Change-Id: I32829b0149dba9339f2e8bb4c0249a4987a630c7

5 years ago3D reconstruction tool build by Processing
Dan Zhu [Fri, 7 Jun 2019 21:54:30 +0000 (14:54 -0700)]
3D reconstruction tool build by Processing

(a java based language for data visualization)

add MotionField module

reformat the code by using newest clang-format version

add necessary comments

add new functions

move basic settings to setup

Change-Id: I64a6b2daec06037daa9e54c6b8d1eebe58aa6de0

5 years agoFix memory leak for vp8 multi-res encoder.
Jerome Jiang [Fri, 14 Jun 2019 16:50:30 +0000 (09:50 -0700)]
Fix memory leak for vp8 multi-res encoder.

BUG=webm:1630

Change-Id: I03e74e78aa0ead66eda7506e921b1774b5442ed5

5 years agoMerge "Use previous ARF as GOLDEN frame for the next GOP"
Deepa K G [Fri, 14 Jun 2019 06:49:43 +0000 (06:49 +0000)]
Merge "Use previous ARF as GOLDEN frame for the next GOP"

5 years agoMerge "ppc: disable vsx for small predictors"
Johann Koenig [Thu, 13 Jun 2019 22:06:22 +0000 (22:06 +0000)]
Merge "ppc: disable vsx for small predictors"

5 years agoppc: disable vsx for small predictors
Johann [Thu, 13 Jun 2019 18:29:09 +0000 (11:29 -0700)]
ppc: disable vsx for small predictors

These functions cause test failures when running the entire suite.

BUG=webm:1522

Change-Id: I2c1dc4923e9f149464f365ef63dc59621cfabf5a

5 years agoMerge "vpx_dec_fuzzer: Add -fsanitize=fuzzer-no-link"
Harish Mahendrakar [Thu, 13 Jun 2019 18:45:02 +0000 (18:45 +0000)]
Merge "vpx_dec_fuzzer: Add -fsanitize=fuzzer-no-link"

5 years agoMerge "ppc: disable vsx optimizations with hbd"
Johann Koenig [Thu, 13 Jun 2019 18:40:42 +0000 (18:40 +0000)]
Merge "ppc: disable vsx optimizations with hbd"

5 years agovpx_dec_fuzzer: Add -fsanitize=fuzzer-no-link
Harish Mahendrakar [Wed, 12 Jun 2019 22:14:15 +0000 (15:14 -0700)]
vpx_dec_fuzzer: Add -fsanitize=fuzzer-no-link

Updated build instructions for vpx_dec_fuzzer to include
-fsanitize=fuzzer-no-link while configuring library

Change-Id: Id158256aa1cfe3d847720e8558cb5998ad4fd777

5 years agoUse previous ARF as GOLDEN frame for the next GOP
Deepa K G [Tue, 9 Apr 2019 12:25:36 +0000 (17:55 +0530)]
Use previous ARF as GOLDEN frame for the next GOP

This patch uses ARF itself as the GOLDEN frame for the
next gf group instead of replacing it with the overlay
frame. By doing so, bits consumed by the overlay frame
will be reduced.

Change-Id: I909ceaa6d501c267d315614075913d45ad426c15

5 years agosse: remove unused HAVE_SSE files
Johann [Mon, 10 Jun 2019 22:08:40 +0000 (15:08 -0700)]
sse: remove unused HAVE_SSE files

There are no sse functions which use these files. Cleans up spurious
warnings when building with --disable-sse2

Change-Id: I04d84b8b7ecfe6da7d5d4df63840796c7b04c085

5 years agoppc: disable vsx optimizations with hbd
Johann [Mon, 10 Jun 2019 21:35:03 +0000 (14:35 -0700)]
ppc: disable vsx optimizations with hbd

vsx optimizations do not support 32 bit tran_low_t values.

BUG=webm:1563

Change-Id: I9e6348078f6e4855acfd381133eb840a435b7f81

5 years agoupdate libwebm to libwebm-1.0.0.27-361-g81de00c
James Zern [Fri, 7 Jun 2019 22:06:29 +0000 (15:06 -0700)]
update libwebm to libwebm-1.0.0.27-361-g81de00c

81de00c Check there is only one settings per ContentCompression
5623013 Fixes a double free in ContentEncoding
93b2ba0 mkvparser: quiet static analysis warnings

Change-Id: Ieaa562ef2f10075381bd856388e6b29f97ca2746

5 years agovp8: fix leak in vp8e_mr_alloc_mem
Jerome Jiang [Thu, 6 Jun 2019 22:38:13 +0000 (15:38 -0700)]
vp8: fix leak in vp8e_mr_alloc_mem

BUG=webm:1596

Change-Id: I09ba00a7b7ad331671a7a285a2ac5630d8b62199

5 years agoMerge "Update performance test results for tune=SSIM"
Sai Deng [Thu, 6 Jun 2019 15:50:14 +0000 (15:50 +0000)]
Merge "Update performance test results for tune=SSIM"

5 years agoMerge "Fix a bug in best RD cost updating"
Sai Deng [Thu, 6 Jun 2019 06:13:08 +0000 (06:13 +0000)]
Merge "Fix a bug in best RD cost updating"

5 years agoUpdate performance test results for tune=SSIM
sdeng [Thu, 6 Jun 2019 03:40:16 +0000 (20:40 -0700)]
Update performance test results for tune=SSIM

I made a mistake (used the outdated baseline) in the CL I
submitted earlier this week:
https://chromium-review.googlesource.com/c/webm/libvpx/+/1638854

The corrected results are following:
The additional gains/loss on top of the tune=ssim are:
Data Set   Overall PSNR   SSIM       MS-SSIM
 Lowres       3.490      -3.164      -2.267
 Midres       2.245      -2.270      -2.287
 HDres        2.562      -1.804      -1.681
Lowres_10bd   3.477      -2.399      -2.689
Midres_10bd   3.467      -1.534      -1.636

The overall gains/loss comparing to tune=psnr are:
Data Set   Overall PSNR   SSIM       MS-SSIM
 Lowres       6.127      -5.818      -4.783
 Midres       4.574      -5.383      -6.242
 HDres        4.908      -6.218      -7.106
Lowres_10bd   6.115      -6.212      -7.790
Midres_10bd   6.238      -6.064      -7.249

Change-Id: Iae72482f7b30f200e5021a98c920eed841d0972a

5 years agoFix a bug in best RD cost updating
sdeng [Tue, 4 Jun 2019 20:54:18 +0000 (13:54 -0700)]
Fix a bug in best RD cost updating

This CL fixed a bug that sometimes we calculate the best rd cost using
uninitialized rd_div. This CL also includes a small refactoring of
rd_pick_partition().

Speed change: (the smaller the better)
 Performance counter stats for './vpxenc park_joy_480p.y4m --limit=50
 -o output.webm':

with this CL:       297,086,181,136      instructions:u
without this CL:    299,285,835,104      instructions:u

Quality change: (negative is better)
          avg_psnr ovr_psnr  ssim
(low_res)  0.007     0.005  -0.002
(mid_res)  0.022     0.028   0.007
(hd_res)  -0.008    -0.003  -0.014

Change-Id: I8924d8426364304212bcef3aba13346783e6f1a8