platform/upstream/libvpx.git
7 years agovp9_rdopt: declare 'c' closer to use
Johann [Tue, 31 Jan 2017 23:35:20 +0000 (15:35 -0800)]
vp9_rdopt: declare 'c' closer to use

Clears up static clang analysis warning regarding a dead store. Only
declare 'c' when it will be used.

Change-Id: I1ac0fc7f94bc44da63938c63cd1efcd6b95e0eb3

7 years agoMake satd unit test support all bit-depth settings
Jingning Han [Fri, 27 Jan 2017 18:46:53 +0000 (10:46 -0800)]
Make satd unit test support all bit-depth settings

Turn on satd unit test for c function in both regular and high
bit-depth settings.

Change-Id: I4b0c56addfb84964ede0da3ab760fe0ee640cfd0

7 years agoUnify the hadamard transform unit test for bit-depth settings
Jingning Han [Fri, 27 Jan 2017 18:38:58 +0000 (10:38 -0800)]
Unify the hadamard transform unit test for bit-depth settings

Unify the 8x8 and 16x16 Hadamard unit test system for both 8-bit
and high bit-depth settings.

Change-Id: I53373c1d43f3ced514ad1e53e03f0fb9b25d9ead

7 years agoFix real-time compression regression in hbd mode
Jingning Han [Thu, 26 Jan 2017 23:00:04 +0000 (15:00 -0800)]
Fix real-time compression regression in hbd mode

This commit resolves the compression performance regression in
real-time encoding setting when high bit-depth mode is enabled.

The current solution temporarily disables the SIMD implementations
of vpx_satd, hadamard8x8, and hadamard16x16 in high bit-depth mode.

The commit makes the coding results bit-wise identical between
regular coding pipeline and high bit-depth at profile 0.

BUG=webm:1365

Change-Id: Icfb900821733749685370460a1a5a7e07f76f4bf

7 years agoMerge "Use Buffer class for post proc tests"
Johann Koenig [Tue, 31 Jan 2017 15:28:28 +0000 (15:28 +0000)]
Merge "Use Buffer class for post proc tests"

7 years agoAdd mips msa vpx_minmax_8x8 function
Kaustubh Raste [Tue, 31 Jan 2017 04:30:43 +0000 (10:00 +0530)]
Add mips msa vpx_minmax_8x8 function

average improvement ~4x-5x

Change-Id: I83aee9977534fddb8a9b80d31af646c0b6b1a8c3

7 years agoMerge "Add mips msa vpx_vector_var function"
Kaustubh Raste [Tue, 31 Jan 2017 02:34:51 +0000 (02:34 +0000)]
Merge "Add mips msa vpx_vector_var function"

7 years agovp9: Modify bsize condition for using model_rd_large for speed 7.
Marco [Mon, 30 Jan 2017 19:12:49 +0000 (11:12 -0800)]
vp9: Modify bsize condition for using model_rd_large for speed 7.

In non-rd pickmode: Allow speed 7 to also use larger block size in
model_rd. Small change in behavior for speed 7.

Change-Id: I8c5523e424308e8f0bc71b3f6324dec42a464cc8

7 years agoMerge "Disable multi-threading in first pass for SVC encoding"
Yunqing Wang [Sat, 28 Jan 2017 19:29:01 +0000 (19:29 +0000)]
Merge "Disable multi-threading in first pass for SVC encoding"

7 years agoAdd mips msa vpx_vector_var function
Kaustubh Raste [Fri, 27 Jan 2017 09:22:51 +0000 (14:52 +0530)]
Add mips msa vpx_vector_var function

average improvement ~4x-5x

Change-Id: I2f63ef83d816052ca8dc42421e7e9d42f7a7af6b

7 years agoMerge "vp9: Fix to pick_filter_level for highbitdepth build."
Marco Paniconi [Fri, 27 Jan 2017 22:47:44 +0000 (22:47 +0000)]
Merge "vp9: Fix to pick_filter_level for highbitdepth build."

7 years agoMerge "Add macOS Sierra support in configure"
Jerome Jiang [Fri, 27 Jan 2017 21:15:52 +0000 (21:15 +0000)]
Merge "Add macOS Sierra support in configure"

7 years agovp9: Fix to pick_filter_level for highbitdepth build.
Marco [Fri, 27 Jan 2017 18:42:29 +0000 (10:42 -0800)]
vp9: Fix to pick_filter_level for highbitdepth build.

Change-Id: I53b3fa8bfc0a0717eb1b730c29f2b70060b1b1b7

7 years agoAdd macOS Sierra support in configure
Jerome Jiang [Fri, 27 Jan 2017 01:53:00 +0000 (17:53 -0800)]
Add macOS Sierra support in configure

BUG=webm:1367

Change-Id: I3000b6d9f93ec49ca86d08151348d33d86bf0034

7 years agoDisable multi-threading in first pass for SVC encoding
Ranjit Kumar Tulabandu [Fri, 27 Jan 2017 13:37:45 +0000 (19:07 +0530)]
Disable multi-threading in first pass for SVC encoding

BUG=webm:1366

Change-Id: I204ef8496884ba7c4debe64f23f50d298b4090c3

7 years agoMerge "vp9: Modify bsize condition for using model_rd_large."
Marco Paniconi [Fri, 27 Jan 2017 15:15:36 +0000 (15:15 +0000)]
Merge "vp9: Modify bsize condition for using model_rd_large."

7 years agoMerge "vp9: Fixes for usage of skin_map for high bit depth."
Marco Paniconi [Fri, 27 Jan 2017 15:15:15 +0000 (15:15 +0000)]
Merge "vp9: Fixes for usage of skin_map for high bit depth."

7 years agovp9: Modify bsize condition for using model_rd_large.
Marco [Fri, 27 Jan 2017 04:01:41 +0000 (20:01 -0800)]
vp9: Modify bsize condition for using model_rd_large.

In non-rd pickmode: small change in behavior for speed 6 and 7.
Remove condition on HIGHBITDEPTH flag.

Change-Id: I360a13fcc313d72612fe9b918162ef4bb278cdea

7 years agoAdd mips msa vpx Integer projection row/col functions
Kaustubh Raste [Fri, 27 Jan 2017 05:41:42 +0000 (11:11 +0530)]
Add mips msa vpx Integer projection row/col functions

average improvement ~4x-5x

Change-Id: I17c41383250282b39f5ecae0197ef1df7de20801

7 years agoMerge "Add mips msa vpx satd function"
Kaustubh Raste [Fri, 27 Jan 2017 04:08:51 +0000 (04:08 +0000)]
Merge "Add mips msa vpx satd function"

7 years agovp9: Fixes for usage of skin_map for high bit depth.
Marco [Thu, 26 Jan 2017 22:09:57 +0000 (14:09 -0800)]
vp9: Fixes for usage of skin_map for high bit depth.

Also avoid noise_estimation and source_sad if use_highbitdepth is set.

Change-Id: I5fea396b8f8380ea377045d99ba22a52b92daa46

7 years agoUse Buffer class for post proc tests
Johann [Sat, 10 Dec 2016 00:51:01 +0000 (16:51 -0800)]
Use Buffer class for post proc tests

Add Buffer features for:
Setting the buffer to the output of an ACMRandom function.
Copying a buffer.
Comparing two buffers.
Printing two buffers.

Change-Id: Ib53fb602451a3abdcee279ea2b65b51fbc02d3df

7 years agoMerge "vp9: Refactor copy partitioning to reduce duplication."
Jerome Jiang [Thu, 26 Jan 2017 17:46:10 +0000 (17:46 +0000)]
Merge "vp9: Refactor copy partitioning to reduce duplication."

7 years agovp9: Refactor copy partitioning to reduce duplication.
Jerome Jiang [Wed, 25 Jan 2017 19:31:05 +0000 (11:31 -0800)]
vp9: Refactor copy partitioning to reduce duplication.

Change-Id: Ia1b3c118adec5eccbd2900c8e4b9ea6b1e3e9b7c

7 years agoMerge "Remove marco MVC in mcomp.c"
Yunqing Wang [Thu, 26 Jan 2017 00:32:54 +0000 (00:32 +0000)]
Merge "Remove marco MVC in mcomp.c"

7 years agoMerge "Fix an overflow warning in optimize_b()"
Hui Su [Wed, 25 Jan 2017 22:49:29 +0000 (22:49 +0000)]
Merge "Fix an overflow warning in optimize_b()"

7 years agovp9-denoiser: Modify skip denoising condition for small blocks.
Marco [Wed, 25 Jan 2017 19:39:02 +0000 (11:39 -0800)]
vp9-denoiser: Modify skip denoising condition for small blocks.

Skip denoising for blocks < 16x16, and for block = 16x16
skip denoising for low noise levels and width > 480 for now.
Allow for some speed-up in denoiser.

Change-Id: Ib46cefe4741962d145fa08775defea3a9c928567

7 years agoFix an overflow warning in optimize_b()
hui su [Mon, 23 Jan 2017 19:25:31 +0000 (11:25 -0800)]
Fix an overflow warning in optimize_b()

BUG=webm:1361

Change-Id: Ib840bf3b39f7b3c8c017d3488a83434e9a0f45f5

7 years agoMerge "vp9: Adjust threshold for y sad used in copying partition."
Jerome Jiang [Wed, 25 Jan 2017 17:54:14 +0000 (17:54 +0000)]
Merge "vp9: Adjust threshold for y sad used in copying partition."

7 years agoMerge "Initialize errorperbit and sabperbit in ARNR filtering"
Yunqing Wang [Wed, 25 Jan 2017 16:43:02 +0000 (16:43 +0000)]
Merge "Initialize errorperbit and sabperbit in ARNR filtering"

7 years agoMerge "Multi-threading of first pass stats collection"
Yunqing Wang [Wed, 25 Jan 2017 16:40:32 +0000 (16:40 +0000)]
Merge "Multi-threading of first pass stats collection"

7 years agovp9: Adjust threshold for y sad used in copying partition.
Jerome Jiang [Wed, 25 Jan 2017 01:20:05 +0000 (17:20 -0800)]
vp9: Adjust threshold for y sad used in copying partition.

Visual quality improvement is observed for noisy clips. Little effects
on speed tests on Nexus 6.

Change-Id: Ib38e04002220708c34102de7b5c36e9940775d89

7 years agoMulti-threading of first pass stats collection
Ranjit Kumar Tulabandu [Tue, 27 Dec 2016 13:15:43 +0000 (18:45 +0530)]
Multi-threading of first pass stats collection

(yunqingwang)
1. Rebased the patch. Incorporated recent first pass changes.
2. Turned on the first pass unit test.

Change-Id: Ia2f7ba8152d0b6dd6bf8efb9dfaf505ba7d8edee

7 years agovp9: Adjust some parameters in aq-mode=3 mode.
Marco [Tue, 24 Jan 2017 17:58:05 +0000 (09:58 -0800)]
vp9: Adjust some parameters in aq-mode=3 mode.

Increase the qp-delta, mainly for low resolutions,
excluding case of very low bitrates.

avgPSNR/SSSIM gain of ~3-5% on rtc_derf set.
Small change on rtc set.

Change-Id: Ice03d04bd0340404d1957666ef154fd64fed0606

7 years agoMerge "vp9: Copy partition using avg_source_sad."
Jerome Jiang [Tue, 24 Jan 2017 20:58:09 +0000 (20:58 +0000)]
Merge "vp9: Copy partition using avg_source_sad."

7 years agovp9: Copy partition using avg_source_sad.
Jerome Jiang [Mon, 23 Jan 2017 20:10:01 +0000 (12:10 -0800)]
vp9: Copy partition using avg_source_sad.

Affecting only speed 8.
Speed tests on Nexus 6 show 4% faster for QVGA and 2.4% faster for VGA.
Little/negligible quality regression observed on both rtc and rtc_derf sets.

Change-Id: I337f301a2db49a568d18ba7623160f7678399ae1

7 years agoMerge "Add the multi-threaded first pass encoder unit test"
Yunqing Wang [Tue, 24 Jan 2017 17:14:07 +0000 (17:14 +0000)]
Merge "Add the multi-threaded first pass encoder unit test"

7 years agoInitialize errorperbit and sabperbit in ARNR filtering
Ranjit Kumar Tulabandu [Wed, 11 Jan 2017 13:29:11 +0000 (18:59 +0530)]
Initialize errorperbit and sabperbit in ARNR filtering

(Yunqing)
This patch added the missing initialization in temporal filter.
Borg test BDRate results:
PSNR: -0.019%(lowres); -0.013%(hdres);
SSIM: -0.001%(lowres); -0.010%(hdres).
Other q values gave comparable but no better results.

Change-Id: I7ad0c18b39e6f558342688e2fe1e12fdb133ce9b

7 years agoAdd mips msa vpx satd function
Kaustubh Raste [Tue, 24 Jan 2017 05:14:22 +0000 (10:44 +0530)]
Add mips msa vpx satd function

average improvement ~4x-5x

Change-Id: If8683d636fe2606d4ca1038e28185bca53bbe244

7 years agoMerge "vp9: Adjust the threshold to set avg_source_sad_sb flag."
Jerome Jiang [Tue, 24 Jan 2017 03:43:11 +0000 (03:43 +0000)]
Merge "vp9: Adjust the threshold to set avg_source_sad_sb flag."

7 years agoRemove marco MVC in mcomp.c
Yunqing Wang [Tue, 24 Jan 2017 00:57:34 +0000 (16:57 -0800)]
Remove marco MVC in mcomp.c

Removed MVC so that mv_err_cost() is always called while calculating
the mv cost.

Change-Id: I28123e05fbfc2352128e266c985d2ab093940071

7 years agovp9: Adjust the threshold to set avg_source_sad_sb flag.
Jerome Jiang [Mon, 23 Jan 2017 23:58:15 +0000 (15:58 -0800)]
vp9: Adjust the threshold to set avg_source_sad_sb flag.

Affect only speed 8. Small/Negligible regression on rtc set.

Change-Id: I67a6b6b4008a22ed798bd980336d95bb799f64b4

7 years agoPartialIDctTest: reduce number of RunQuantCheck iterations
Johann [Mon, 23 Jan 2017 21:30:37 +0000 (13:30 -0800)]
PartialIDctTest: reduce number of RunQuantCheck iterations

This currently runs 1000 * 1000 = one *million* times which is quite
unnecessary. It's one of the slowest items in Jenkins and takes over an
hour for each of the larger transforms.

Change-Id: I01653b5e610683e1a2d778ec60cf5065562ab8db

7 years agovp9: Non-rd pickmode: fix to add ARF mode entries to THR_MODES.
Marco [Mon, 23 Jan 2017 18:53:34 +0000 (10:53 -0800)]
vp9: Non-rd pickmode: fix to add ARF mode entries to THR_MODES.

BUG=webm:1359

Change-Id: Ie0c66efa2e19d1ec9c744d14e3fa8f1e6214cdd6

7 years agovp9: Small threshold adjustment to unittest BasicRateTargeting444
Marco [Sun, 22 Jan 2017 02:12:45 +0000 (18:12 -0800)]
vp9: Small threshold adjustment to unittest BasicRateTargeting444

Due to recent change to speed >=7 from commit:219cdab.

Change-Id: I366e7750ec91119881050ff6c05849504c7959e8

7 years agoMerge "Add mips msa vpx hadamard functions"
Kaustubh Raste [Sat, 21 Jan 2017 03:16:38 +0000 (03:16 +0000)]
Merge "Add mips msa vpx hadamard functions"

7 years agoMerge "vp9: Add feature to use block source_sad for realtime mode."
Jerome Jiang [Fri, 20 Jan 2017 20:35:07 +0000 (20:35 +0000)]
Merge "vp9: Add feature to use block source_sad for realtime mode."

7 years agovp9: Add feature to use block source_sad for realtime mode.
Marco [Tue, 17 Jan 2017 18:39:26 +0000 (10:39 -0800)]
vp9: Add feature to use block source_sad for realtime mode.

Only for speed >= 7, and affects skipping of intra modes.
Threshold is set low for now, needs to be tuned.
Small/no difference in metrics on rtc clips.

Change-Id: If9bdbd43f08d1f80407cdd2e9e5e96780dcd2424

7 years agoAdd the multi-threaded first pass encoder unit test
Yunqing Wang [Fri, 20 Jan 2017 17:15:15 +0000 (09:15 -0800)]
Add the multi-threaded first pass encoder unit test

Added the multi-threaded first pass encoder unit test in VP9. The test is
to check if the new multi-threaded first pass encoder(namely, new-mt = 1)
still generates matching stats. In the unit test, the new-mt mode will be
turned on once the multi-threaded first pass implementation is checked in.

Change-Id: Ic21bb1a55c454f024cfd2b397a4c148cfe638218

7 years agotools_common.h: add missing ';' in generic branch
James Zern [Thu, 19 Jan 2017 23:09:20 +0000 (15:09 -0800)]
tools_common.h: add missing ';' in generic branch

missed in:
380a26112 Fix compile warnings for target=armv7-android-gcc

Change-Id: I2820fff00858a19f7dcf6e0fff189d455b7d640f

7 years agovp9: Modify usage of force_skip under low temporal variance in non-rd pickmode.
Marco [Fri, 13 Jan 2017 23:13:36 +0000 (15:13 -0800)]
vp9: Modify usage of force_skip under low temporal variance in non-rd pickmode.

For short_circuit set to level 1, skip newmv for 64x64 blocks if the
low temporal variance flag is set. Also modify threshold for 64x64 split
in variance partitioning.

Overall speed-up on noisy clips of 2-4%.
Only affect speed >= 7.

Change-Id: I384b3772007e84de6f8707e480d2ddf1fe1f907d

7 years agoAdd mips msa vpx hadamard functions
Kaustubh Raste [Thu, 19 Jan 2017 09:14:03 +0000 (14:44 +0530)]
Add mips msa vpx hadamard functions

average improvement ~4x-5x

Change-Id: I167132d894c04fa85dda8dde7906ff9c61b3a65d

7 years agovp9: Stop copying partition every a fixed number of frames.
Jerome Jiang [Fri, 13 Jan 2017 22:20:59 +0000 (14:20 -0800)]
vp9: Stop copying partition every a fixed number of frames.

Avoid quality loss when copying partition of superblock with large motions.
Maximum consecutively copied frames can be set (currently 5).

Change-Id: I11c30575514f02194c0f001444cf4021609e5049

7 years agoMerge "Add CSV per-frame stats to vpxdec."
Peter Boström [Wed, 18 Jan 2017 16:32:34 +0000 (16:32 +0000)]
Merge "Add CSV per-frame stats to vpxdec."

7 years agoMerge "vp9_cx_iface,encoder_encode: check validate_img return"
James Zern [Wed, 18 Jan 2017 07:36:53 +0000 (07:36 +0000)]
Merge "vp9_cx_iface,encoder_encode: check validate_img return"

7 years agovp9: Disable partition copy when resizing is enabled.
Jerome Jiang [Wed, 18 Jan 2017 02:18:39 +0000 (18:18 -0800)]
vp9: Disable partition copy when resizing is enabled.

Change-Id: I4fa3262e0f1c4018604c954b020ec5d1e3d1465c

7 years agoMerge "vp9: Set low variance flag when partition is copied."
Jerome Jiang [Tue, 17 Jan 2017 21:02:52 +0000 (21:02 +0000)]
Merge "vp9: Set low variance flag when partition is copied."

7 years agovp9: Set low variance flag when partition is copied.
Jerome Jiang [Fri, 13 Jan 2017 19:28:27 +0000 (11:28 -0800)]
vp9: Set low variance flag when partition is copied.

Also set the flag to 1 when exit early choosing 64x64 block
such that skipping new mv for golden works in these scenerios.

Change the size of prev_segment_id to the number of superblocks
to save memory.

Borg test shows quality regression of 0.012% on average PSNR
and 0.035% on SSIM.

Change-Id: I5014224c8617d439d35c66ece3fed9ae30b31d23

7 years agoMerge "Cygwin x86_64 support."
Johann Koenig [Tue, 17 Jan 2017 17:45:54 +0000 (17:45 +0000)]
Merge "Cygwin x86_64 support."

7 years agoCygwin x86_64 support.
Moriyoshi Koizumi [Mon, 16 Jan 2017 10:27:00 +0000 (19:27 +0900)]
Cygwin x86_64 support.

This should have been taken into account at 64347a10

Change-Id: Ie8e3ad7cbaab3e5799e04bd50f2639390b0a2428

7 years agoAdd per-frame SSIM/PSNR stats to tools/tiny_ssim.
Peter Boström [Tue, 17 Jan 2017 15:47:50 +0000 (10:47 -0500)]
Add per-frame SSIM/PSNR stats to tools/tiny_ssim.

Adds an optional output framestats.csv file that prints comparions
per-frame instead of averaged over the entire clip. It prints
per-channel and combined metrics for SSIM and PSNR.

Change-Id: Id28dfade27bc5775b59a9d83cfe8b37d1d52b686

7 years agovp9_cx_iface,encoder_encode: check validate_img return
James Zern [Sat, 14 Jan 2017 00:53:03 +0000 (16:53 -0800)]
vp9_cx_iface,encoder_encode: check validate_img return

before calling vp9_apply_encoding_flags() which may crash if the
resolution was invalid. this is the same change as:
c0523090b vp8e_encode: check validate_config return

BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1315288

Change-Id: Icd2aab322422e83d3a778fca6d7789e5000239d7

7 years agovp9: Add speed feature flag for computing average source sad.
Marco [Fri, 13 Jan 2017 19:21:33 +0000 (11:21 -0800)]
vp9: Add speed feature flag for computing average source sad.

If enabled will compute source_sad for every superblock on every frame,
prior to encoding. Off by default, only on for speed=8 when
copy_partition is set.

Change-Id: Iab7903180a23dad369135e8234b7f896f20e1231

7 years agoMerge "vp9: Adjust threshold for copy partiton, for speed=8."
Marco Paniconi [Fri, 13 Jan 2017 19:07:56 +0000 (19:07 +0000)]
Merge "vp9: Adjust threshold for copy partiton, for speed=8."

7 years agovp9: Adjust threshold for copy partiton, for speed=8.
Marco [Fri, 13 Jan 2017 18:27:51 +0000 (10:27 -0800)]
vp9: Adjust threshold for copy partiton, for speed=8.

Change-Id: I4799cb2b67d911ee385e6d6992c61633ca77e69d

7 years agoMerge "Rework 8x8 transpose SSSE3 for avg computation"
Jingning Han [Fri, 13 Jan 2017 18:25:16 +0000 (18:25 +0000)]
Merge "Rework 8x8 transpose SSSE3 for avg computation"

7 years agoMerge "Rework 8x8 transpose SSSE3 for inverse 2D-DCT"
Jingning Han [Fri, 13 Jan 2017 18:25:09 +0000 (18:25 +0000)]
Merge "Rework 8x8 transpose SSSE3 for inverse 2D-DCT"

7 years agoAdd CSV per-frame stats to vpxdec.
Peter Boström [Fri, 13 Jan 2017 12:56:43 +0000 (07:56 -0500)]
Add CSV per-frame stats to vpxdec.

Used with --framestats=file.csv. Currently prints raw codec QP (not
internal 0-63 range) and bytes per frame.

Change-Id: Ifbb90129c218dda869eaf5b810bad12a32ebd82d

7 years agoMerge "vp9: Update threshold for partition copy."
Marco Paniconi [Fri, 13 Jan 2017 06:22:52 +0000 (06:22 +0000)]
Merge "vp9: Update threshold for partition copy."

7 years agovp9: Update threshold for partition copy.
Jerome Jiang [Fri, 13 Jan 2017 01:59:22 +0000 (17:59 -0800)]
vp9: Update threshold for partition copy.

Avoid many visual artifacts. Compression quality is improved by more
than 1%. Encode speed is about 4% for QVGA and 6% for VGA faster on
android.

Change-Id: I4dd0a81429ddf7efdef1e80a191da5fb8de8e8af

7 years agoMerge remote-tracking branch 'origin/longtailedduck'
Johann [Thu, 12 Jan 2017 23:40:14 +0000 (15:40 -0800)]
Merge remote-tracking branch 'origin/longtailedduck'

7 years agoRework 8x8 transpose SSSE3 for avg computation
Jingning Han [Thu, 12 Jan 2017 23:15:14 +0000 (15:15 -0800)]
Rework 8x8 transpose SSSE3 for avg computation

Use same transpose process as inv_txfm_sse2 does.

Change-Id: I2db05f0b254628a11f621c4c09abb89501ba6d3c

7 years agoRework 8x8 transpose SSSE3 for inverse 2D-DCT
Jingning Han [Thu, 12 Jan 2017 23:06:30 +0000 (15:06 -0800)]
Rework 8x8 transpose SSSE3 for inverse 2D-DCT

Use same transpose process as inv_txfm_sse2 does.

Change-Id: Ic4827825bd174cba57a0a80e19bf458a648e7d94

7 years agoAdd decoder getters for the last quantizer.
Peter Boström [Thu, 12 Jan 2017 20:21:15 +0000 (15:21 -0500)]
Add decoder getters for the last quantizer.

To be used for frame stats output of vpxdec.

Change-Id: I0739a01bd3635c4b3fedd58f3e27363ce8fb1b1e

7 years agoRelease v1.6.1 Long Tailed Duck v1.6.1
Johann [Fri, 30 Dec 2016 00:31:22 +0000 (16:31 -0800)]
Release v1.6.1 Long Tailed Duck

Change-Id: If27447472417c7ed34238295427ddb9da0561725

7 years agoMerge "vp9: Make the denoiser work with spatial SVC."
Marco Paniconi [Thu, 12 Jan 2017 17:54:41 +0000 (17:54 +0000)]
Merge "vp9: Make the denoiser work with spatial SVC."

7 years agoMerge "Create a class for buffers used in tests"
Johann Koenig [Thu, 12 Jan 2017 01:02:58 +0000 (01:02 +0000)]
Merge "Create a class for buffers used in tests"

7 years agoMerge "Add Y,U,V channel metrics and unweighted metrics."
Peter Boström [Wed, 11 Jan 2017 21:05:47 +0000 (21:05 +0000)]
Merge "Add Y,U,V channel metrics and unweighted metrics."

7 years agoMerge "vp9: Turn on the partition copy for speed 8. Tune threshold."
Jerome Jiang [Wed, 11 Jan 2017 20:50:42 +0000 (20:50 +0000)]
Merge "vp9: Turn on the partition copy for speed 8. Tune threshold."

7 years agoMerge "arm idct16x16: remove extra config guards"
Johann Koenig [Wed, 11 Jan 2017 20:22:27 +0000 (20:22 +0000)]
Merge "arm idct16x16: remove extra config guards"

7 years agoAdd Y,U,V channel metrics and unweighted metrics.
Peter Boström [Wed, 11 Jan 2017 17:28:03 +0000 (12:28 -0500)]
Add Y,U,V channel metrics and unweighted metrics.

Renames SSIM to VpxSSIM as an upscaled weighted SSIM metric, then prints
Y, U and V channels unweighted as well as a weighted but not scaled SSIM
score that's 8/1/1 parts Y/U/V (same as VpxSSIM).

Change-Id: Iff800cc8f145314eeb1a9b4af1e11a25bec095ca

7 years agoMerge "Rework forward 8x8 2D-DCT ssse3 implementation"
Jingning Han [Wed, 11 Jan 2017 19:28:39 +0000 (19:28 +0000)]
Merge "Rework forward 8x8 2D-DCT ssse3 implementation"

7 years agovp9: Turn on the partition copy for speed 8. Tune threshold.
Jerome Jiang [Tue, 10 Jan 2017 20:43:22 +0000 (12:43 -0800)]
vp9: Turn on the partition copy for speed 8. Tune threshold.

For speed 8, it speeds up the encoding on android by 6% for QVGA and
7.4% for VGA with the new threshold. Overall PSNR is improved by 0.667
for rtc.

Change-Id: I4a644560b32c0b5b4e9f49ffb953d000413a3732

7 years agoarm idct16x16: remove extra config guards
Johann [Wed, 11 Jan 2017 18:17:14 +0000 (10:17 -0800)]
arm idct16x16: remove extra config guards

This file is guarded by HAVE_NEON_ASM in the .mk file now.

Change-Id: I513a621c234aa90ad52e426c8ed494d8a7d4b74a

7 years agoCreate a class for buffers used in tests
Johann [Mon, 24 Oct 2016 19:17:51 +0000 (12:17 -0700)]
Create a class for buffers used in tests

Demonstrate its use with the IDCT test.

Change-Id: Idf87fe048847c180f13818fd4df916ba4500134b

7 years agoAdd "Large" label to VP9 target level tests
hui su [Wed, 11 Jan 2017 00:37:59 +0000 (16:37 -0800)]
Add "Large" label to VP9 target level tests

Also reduce the number of test frames.

Change-Id: Iea6fa93ca6b924535aef7bf8b388db4d0ec84c08

7 years agovp9: Make the denoiser work with spatial SVC.
Marco [Wed, 21 Dec 2016 22:33:21 +0000 (14:33 -0800)]
vp9: Make the denoiser work with spatial SVC.

If enabled denoiser will only denoise the top spatial layer for now.

Added unittest for SVC with denoising.

Change-Id: Ifa373771c4ecfa208615eb163cc38f1c22c6664b

7 years agoRework forward 8x8 2D-DCT ssse3 implementation
Jingning Han [Mon, 9 Jan 2017 22:00:29 +0000 (14:00 -0800)]
Rework forward 8x8 2D-DCT ssse3 implementation

This commit reworks the SSSE3 implementation of the forward 8x8
2D-DCT. It uses a cyclic rotation approach to the temporary xmm
registers. It reduces the average cycles from 158 to 154. The SSE2
version uses 169 cycles.

Change-Id: I1b79b9642aae0ed3fb3cefb5b70246e6de5d5caa

7 years agovp9: 1 pass cbr: Adjustments to usage of gf_cbr_boost and aq=3 mode.
Marco [Tue, 10 Jan 2017 00:38:49 +0000 (16:38 -0800)]
vp9: 1 pass cbr: Adjustments to usage of gf_cbr_boost and aq=3 mode.

When aq=3 mode is on and the gf_cbr_boost is set: make sure golden frame
is always refreshed, and don't incorporate segement cost in qp setting
on the boosted golden frame.

Better performance on RTC set with gf_cbr_boost on,
for example with gf_cbr_boost=50, gains from ~0.5-3%.

Change-Id: Ie811f5e4d444ff3320bd6e2c1745b2c4c09a8460

7 years agoMerge "vp9: Set less aggresive short_circuit_low_temp_var for HD at speed 8."
Jerome Jiang [Tue, 10 Jan 2017 00:51:09 +0000 (00:51 +0000)]
Merge "vp9: Set less aggresive short_circuit_low_temp_var for HD at speed 8."

7 years agovp9: Set less aggresive short_circuit_low_temp_var for HD at speed 8.
Jerome Jiang [Mon, 9 Jan 2017 23:04:13 +0000 (15:04 -0800)]
vp9: Set less aggresive short_circuit_low_temp_var for HD at speed 8.

Quality improved by 1.866 and 0.386 for two noisy clips (dark720p and
marcooffice720p), respectively.

Change-Id: Ib33a7672ae9ca53da156208f7cd13f07b5543e44

7 years agoMerge "Fix compile warnings for target=armv7-android-gcc"
Jerome Jiang [Mon, 9 Jan 2017 23:53:41 +0000 (23:53 +0000)]
Merge "Fix compile warnings for target=armv7-android-gcc"

7 years agoMerge "Refine 8-bit 16x16 idct NEON intrinsics"
James Zern [Mon, 9 Jan 2017 23:52:29 +0000 (23:52 +0000)]
Merge "Refine 8-bit 16x16 idct NEON intrinsics"

7 years agoMerge "vp9: 1 pass cbr: Fix to qp clamping when gf_cbr_boost_pct is used."
Marco Paniconi [Mon, 9 Jan 2017 23:30:32 +0000 (23:30 +0000)]
Merge "vp9: 1 pass cbr: Fix to qp clamping when gf_cbr_boost_pct is used."

7 years agovp9: Fix comment in speed features.
Marco [Mon, 9 Jan 2017 21:03:50 +0000 (13:03 -0800)]
vp9: Fix comment in speed features.

Change-Id: I65d79c06b152922d725bf559adaa508f91cd5766

7 years agovp9: 1 pass cbr: Fix to qp clamping when gf_cbr_boost_pct is used.
Marco [Mon, 9 Jan 2017 20:46:01 +0000 (12:46 -0800)]
vp9: 1 pass cbr: Fix to qp clamping when gf_cbr_boost_pct is used.

Avoid the qp-clamping on gf/alt frame if gf_cbr_boost_pct is set.

Change only affect CBR mode when  gf_cbr_boost_pct is set.

Change-Id: I0655ed4f2b047c8ed1ed33a070c17960ad776704

7 years agoMerge "postproc: vpx_mbpost_proc_down_neon"
Johann Koenig [Mon, 9 Jan 2017 19:53:15 +0000 (19:53 +0000)]
Merge "postproc: vpx_mbpost_proc_down_neon"

7 years agoMerge "Add mips dspr2 partial idct tests"
Johann Koenig [Mon, 9 Jan 2017 19:49:02 +0000 (19:49 +0000)]
Merge "Add mips dspr2 partial idct tests"

7 years agoMerge "Fix mips dspr2 idct32x32 functions for large coefficient input"
Johann Koenig [Mon, 9 Jan 2017 19:47:47 +0000 (19:47 +0000)]
Merge "Fix mips dspr2 idct32x32 functions for large coefficient input"

7 years agoMerge "Fix mips dspr2 idct16x16 functions for large coefficient input"
Johann Koenig [Mon, 9 Jan 2017 19:47:00 +0000 (19:47 +0000)]
Merge "Fix mips dspr2 idct16x16 functions for large coefficient input"