]>
granicus.if.org Git - libvpx/log
Johann Koenig [Fri, 14 Apr 2017 04:10:55 +0000 (04:10 +0000)]
Merge "vpx_comp_avg_pred: sse2 optimization"
Marco Paniconi [Fri, 14 Apr 2017 00:45:41 +0000 (00:45 +0000)]
Merge "vp9: Avoid encoder loopfilter for non-reference frames."
Marco [Thu, 13 Apr 2017 00:06:03 +0000 (17:06 -0700)]
vp9: 1 pass VBR: Fix to rate control at low min-q.
Fix to avoid getting stuck at very low Q even
though content is changing, which can happen for --min-q=0.
Fix is to more aggressively increase active_worst_quality
when detecting significant rate_deviation at very low Q.
Change will only affect 1 pass VBR for --min-q < 4, so no
change in ytlive metrics for --min-q >= 4.
Change-Id: I4dd77dd7c08a30a4390da0ff2c8bda6fccfa76d7
Marco [Tue, 11 Apr 2017 23:17:18 +0000 (16:17 -0700)]
vp9: Avoid encoder loopfilter for non-reference frames.
Useful for SVC, where the top layer enhancement frames may
not update any reference buffers, as is the case for the
patterns in the 1 pass CBR SVC when #temporal_layers > 1.
~3% encoder speedup for SVC patterns with temporal layers
in 1 pass CBR mode.
Updated the SVC datarate tests for the mismatch frames.
Set the frame-dropper off in some tests with #temporal_layers > 1
so we can correctly set #mismatch frames. Adjusted rate target
threshold for tests where frame-dropper was turned off.
Change-Id: Ia0c142f02100be0fed61cd2049691be9c59d6793
Johann [Thu, 23 Mar 2017 21:54:48 +0000 (14:54 -0700)]
vpx_comp_avg_pred: sse2 optimization
Provides over 15x speedup for width > 8.
Due to smaller loads and shifting for width == 8 it gets about 8x
speedup.
For width == 4 it's only about 4x speedup because there is a lot of
shuffling and shifting to get the data properly situated.
BUG=webm:1390
Change-Id: Ice0b3dbbf007be3d9509786a61e7f35e94bdffa8
Yunqing Wang [Mon, 10 Apr 2017 17:57:41 +0000 (10:57 -0700)]
Fix an integer overflow in vp9_mcomp.c
The MV unit test revealed an integer overflow issue in vp9_mcomp.c.
This was caused if the MV was very large. In mv_err_cost(), when
mv->row = 8184, mv->col = 8184 and ref_mv is 0, mv_cost = 34363
and error_per_bit = 132412, causing the overflow.
BUG=webm:1406
Change-Id: I35f8299f22f9bee39cd9153d7b00d0993838845e
Jerome Jiang [Tue, 11 Apr 2017 00:45:20 +0000 (00:45 +0000)]
Merge "vp9: speed >= 8: Adjust speed settings on ARM."
Jerome Jiang [Mon, 10 Apr 2017 20:55:35 +0000 (13:55 -0700)]
vp9: speed >= 8: Adjust speed settings on ARM.
Set adaptive_rd_thresh to 2 when simple block yrd is not used.
Fix regression caused by computing y sad without
int_pro_motion_estimation on low res motion clips.
Overall 0.07% quality loss on rtc_derf.
Change only affects low res on speed 8.
Change-Id: Ic6a188a56529f1034d6431005fb4b0e24e8a7e27
Marco [Mon, 10 Apr 2017 21:56:46 +0000 (14:56 -0700)]
vp9: 1 pass CBR: avoid nonrd_pick_partition on segment.
For speed 5, 1 pass CBR: Don't use the nonrd_pick_partition
on the segment, rather use choose_partitioning followed by
nonrd_select_partition (as is done on base segment).
Little/no quality loss on RTC and RTC_derf (< 0.3%),
speedup of at least 5%.
Change-Id: I5273d5f950e60adf5e437b4ca8c4f63964641e83
Marco Paniconi [Fri, 7 Apr 2017 17:13:21 +0000 (17:13 +0000)]
Merge "vp9: Fix to noise estimation for temporal denoising."
Yunqing Wang [Fri, 7 Apr 2017 16:46:22 +0000 (16:46 +0000)]
Merge "VP9 motion vector unit test"
Marco [Thu, 6 Apr 2017 23:35:01 +0000 (16:35 -0700)]
vp9: Fix to noise estimation for temporal denoising.
If the noise estimation is avoided due to large motion,
the last_source for denoising should still be updated.
Change-Id: I67155ea7dbe9ac2785978e64a27bdafd7d57aac0
Marco [Fri, 7 Apr 2017 15:52:54 +0000 (08:52 -0700)]
vp9: Adjust consec_zeromv threshold for aq-mode=3.
To reduce refresh on partial super-blocks on boundary,
for noisy input. Reduces some artifacts on noisy input.
Change-Id: I10b5808a296874e08c7f378b3df58466591d8dbe
Edit
James Zern [Fri, 7 Apr 2017 07:32:14 +0000 (07:32 +0000)]
Merge changes from topic 'Wshorten'
* changes:
configure: enable -Wshorten-64-to-32 for hbd
vp9_encodeframe: resolve -Wshorten-64-to-32 in hbd
Resolve -Wshorten-64-to-32 in highbd variance.
Jerome Jiang [Fri, 7 Apr 2017 03:34:54 +0000 (03:34 +0000)]
Merge "Fix compile warnings with enable-internal-stats flag."
Jerome Jiang [Thu, 6 Apr 2017 20:07:53 +0000 (13:07 -0700)]
Fix compile warnings with enable-internal-stats flag.
BUG=webm:1402
Change-Id: Ibe9ecb1b559a4b989f6ccedbd097e369f6edde1e
Marco [Thu, 6 Apr 2017 17:25:55 +0000 (10:25 -0700)]
vp9; Move the denoising condition for speed 5.
Move the condition for effectively disabling the denoising
for speed 5 into the vp9_denoiser_denoise().
This is cleaner, and also moving the condition into vp9_denoiser_denoise
will keep the denoiser buffer updated with the current source.
This allows for more consistent behavior if speed is changed midstream.
Change-Id: Ia001f591c56e454bf724c3ae73c024badb183ef8
Jerome Jiang [Thu, 6 Apr 2017 02:57:16 +0000 (02:57 +0000)]
Merge "vp9: speed 8: Compute y sad without int_pro_motion_estimation."
Jerome Jiang [Thu, 6 Apr 2017 02:57:07 +0000 (02:57 +0000)]
Merge "Refactor: Clean memory allocation for copy partition."
Yunqing Wang [Fri, 31 Mar 2017 17:39:57 +0000 (10:39 -0700)]
VP9 motion vector unit test
To prevent the motion vector out of range bug, added a motion vector unit
test in VP9. In the 4k video encoding, always forced to use extreme motion
vectors and also encouraged to use INTER modes. In the decoding, checked if
the motion vector was valid, and also checked the encoder/decoder mismatch.
The tests showed that this unit test could reveal the issue we saw before.
Change-Id: I0a880bd847dad8a13f7fd2012faf6868b02fa3b4
James Zern [Wed, 5 Apr 2017 04:08:51 +0000 (21:08 -0700)]
configure: enable -Wshorten-64-to-32 for hbd
Change-Id: I4041f3fc4aabc7a2251c44c75a477b659284c3cf
James Zern [Wed, 5 Apr 2017 04:04:18 +0000 (21:04 -0700)]
vp9_encodeframe: resolve -Wshorten-64-to-32 in hbd
vp9_high_get_sby_perpixel_variance the variance operated on in is
already in 32-bits
Change-Id: I97006eb9c08dbd0f88ee35e1a1ca205737508296
James Zern [Wed, 5 Apr 2017 03:37:17 +0000 (20:37 -0700)]
Resolve -Wshorten-64-to-32 in highbd variance.
For 8-bit the subtrahend is small enough to fit into uint32_t.
This is the same that was done for:
c0241664a Resolve -Wshorten-64-to-32 in variance.
For 10/12-bit apply:
63a37d16f Prevent negative variance
Change-Id: Iab35e3f3f269035e17c711bd6cc01272c3137e1d
Jerome Jiang [Wed, 5 Apr 2017 00:47:03 +0000 (17:47 -0700)]
vp9: speed 8: Compute y sad without int_pro_motion_estimation.
Little change in overall PSNR in rtc. 2-4% speedup on VGA on ARM.
Change-Id: I3395806d7afd456deacd4077c330adca13ab0645
Marco Paniconi [Thu, 6 Apr 2017 00:25:44 +0000 (00:25 +0000)]
Merge "vp9: Temporal denoising: avoid denoising for speed <= 5."
Marco [Wed, 5 Apr 2017 23:38:33 +0000 (16:38 -0700)]
vp9: Temporal denoising: avoid denoising for speed <= 5.
Temporal denoiser runs in non-rd pickmode, so it is only used
for speed >= 5. Regression exists for speed 5, due to use of
reference_partition (which use non-rd pickmode for partitioning).
Avoid denoising for now at speed 5.
Change-Id: I74a74d2e1404d7cfd33dcf4ec06dd2e503256cf0
Jerome Jiang [Fri, 31 Mar 2017 21:24:03 +0000 (14:24 -0700)]
Refactor: Clean memory allocation for copy partition.
Move the memory allocation from setting speed features.
Change-Id: I2e89dfaeb46daee63effe5a5df62feed732aa990
Linfeng Zhang [Wed, 5 Apr 2017 21:41:35 +0000 (14:41 -0700)]
Update 32x32 high bitdepth idct NEON optimization
Preparation of CONVERT_TO_BYTEPTR/SHORTPTR clean up.
BUG=webm:1388
Change-Id: I928d30a5698023bb90888d783cf81c51ec183760
Jerome Jiang [Tue, 4 Apr 2017 23:28:27 +0000 (16:28 -0700)]
vp9: Remove legacy comments for avg_source_sad.
Change-Id: Ia6e8614535a097f17f37fc382cef8e22e03b70f6
Marco [Tue, 4 Apr 2017 16:53:13 +0000 (09:53 -0700)]
vp9: Adjust condition of golden update with cyclic refresh.
Base the low_content_frame metric on the motion vectors,
and adjust the logic for preventing golden update.
Small change in behavior: small positive gain (~0.2-1%) on clips
with high activity.
Change-Id: I0b861c8e9666cd82b45cde5ee57ee8a1e5ab453c
Marco [Wed, 29 Mar 2017 23:57:53 +0000 (16:57 -0700)]
vp9: 1 pass CBR: cleanup to cyclic refresh.
Code cleanup: merged two functions that were doing postencode
update for cylic refresh, remove some unused code and fix comments.
No change in behavior.
Change-Id: I9be0d7e346d34dec29bf4e5bb380a7bf81c8480a
Yunqing Wang [Mon, 3 Apr 2017 18:27:56 +0000 (18:27 +0000)]
Merge "Fix for out of range motion vector bug in sub-pel motion estimation"
Marco Paniconi [Mon, 3 Apr 2017 16:23:25 +0000 (16:23 +0000)]
Merge "vp9: SVC: Fix issue with artifact for svc-denoising."
Ranjit Kumar Tulabandu [Wed, 22 Mar 2017 14:08:59 +0000 (19:38 +0530)]
Fix for out of range motion vector bug in sub-pel motion estimation
BUG=webm:1397
(yunqingwang)
To verify that this patch wouldn't cause much performance change,
the Borg tests were run. Here was the result:
avg_psnr overall_psnr ssim
hdres: -0.002 0.006 0.013
midres: 0 0 0
lowres: 0 0 0
Change-Id: Iae395ae7b741e0513cf5bab9dcace110b792a67d
Yunqing Wang [Mon, 3 Apr 2017 15:59:50 +0000 (15:59 +0000)]
Merge "Enhance the row mt sync read to accept the sync_range greater than 1"
Yunqing Wang [Tue, 28 Mar 2017 18:27:31 +0000 (11:27 -0700)]
Enhance the row mt sync read to accept the sync_range greater than 1
The row mt sync read uses sync_range = 1, and wouldn't work if we want
to use a sync_range that is greater than 1. To make it work, this sync
read code is modified. Pass in col instead of col - 1 to make it
consistent with other row mt code in VP9, and then add 1 in "while"
codition.
Change-Id: I4a0e487190ac5d47b8216368da12d80fec779c1a
Marco [Fri, 31 Mar 2017 00:08:44 +0000 (17:08 -0700)]
vp9: SVC: Fix issue with artifact for svc-denoising.
Issue/bug happens for denoising with spatial layers, where
the golden (spatial) reference is used in pickmode, but
denoising is only done wrt to last (temporal).
Fix is to make sure set_ref_ptrs is set before build predictors
in denoiser.
Change-Id: I793cf441341edf7c4a88b8ab1e1b22b3cb0eb508
James Zern [Thu, 30 Mar 2017 19:07:43 +0000 (19:07 +0000)]
Merge changes from topic 'rm-dec-frame-parallel'
* changes:
vpxdec: silently ignore -frame-parallel
vp9: make VPX_CODEC_USE_FRAME_THREADING a no-op
James Zern [Thu, 30 Mar 2017 06:31:53 +0000 (23:31 -0700)]
vpxdec: silently ignore -frame-parallel
BUG=webm:1395
Change-Id: Ibf47cc931e51b71e49067c6d7b7a39ab57c11c96
James Zern [Thu, 30 Mar 2017 06:30:11 +0000 (23:30 -0700)]
vp9: make VPX_CODEC_USE_FRAME_THREADING a no-op
this is unmaintained and due to be removed
BUG=webm:1395
Change-Id: Iaffa6aa057c820fd1a182b93ebb45d4286e1306e
James Zern [Thu, 30 Mar 2017 05:51:22 +0000 (22:51 -0700)]
rtcd,unit tests: fix ppc64 build
match ppc* in rtcd to ensure vsx is included
Change-Id: I331a5d35e7160eeb69ebd14b98ba03ec5be6c600
Marco [Wed, 29 Mar 2017 21:01:57 +0000 (14:01 -0700)]
vp9: SVC: fix to allow output of denoised result.
Change-Id: Iaf55cfb5e9621d074eb33d6a32f184e4777968f8
Marco [Wed, 29 Mar 2017 16:13:56 +0000 (09:13 -0700)]
vp9: 1 pass SVC: Modify condition for intra-mode search.
Temporary override to condition for disallowing intra-search in SVC,
since golden (spatial) reference is currently suppressed due to
artifact issue.
Change-Id: I28ed7fdddc9fcdbcc0a4175a247a3ecc94c11767
James Zern [Wed, 29 Mar 2017 02:41:07 +0000 (02:41 +0000)]
Merge "rate_hist: add parameter validation"
James Zern [Wed, 29 Mar 2017 02:39:21 +0000 (02:39 +0000)]
Merge changes from topic 'sync-highbd-intrapred'
* changes:
intrapred: sync highbd_d135_predictor w/d135_
intrapred: specialize highbd 4x4 predictors
intrapred: rename d63f to d63e
remove CONFIG_MISC_FIXES
James Zern [Wed, 29 Mar 2017 01:56:57 +0000 (01:56 +0000)]
Merge ".mailmap: add an additional entry for Yaowu Xu"
Johann Koenig [Tue, 28 Mar 2017 21:50:00 +0000 (21:50 +0000)]
Merge "vpx_comp_avg_pred: add test"
Johann [Thu, 23 Mar 2017 20:04:28 +0000 (13:04 -0700)]
vpx_comp_avg_pred: add test
BUG=webm:1389
Change-Id: I23cd65f1939db026958ccb5d70b8c5cc9aa5bc51
Marco [Fri, 24 Mar 2017 18:31:19 +0000 (11:31 -0700)]
vp9: Speed >= 8: avoid chrome check under some condition.
For non-rd variance partition, avoid the chrome check
unless y_sad is below some threshold.
Small decrease in avgPSNR (~0.3) on RTC set.
Small/negligible decrease on RTC_derf.
Change-Id: I7af44235af514058ccf9a4f10bb737da9d720866
Marco [Thu, 23 Mar 2017 21:37:47 +0000 (14:37 -0700)]
vp9: 1 pass: Move source sad computation into encodeframe loop.
Refactor to split the 1 passs source sad computation into scene
detection (currently used for VBR and screen-content mode), and
superblock based source sad computation (used in non-rd CBR mode).
This allows the source sad computation for CBR mode to be
multi-threaded.
No change in compression.
Change-Id: I112f2918613ccbd37c1771d852606d3af18c1388
James Zern [Tue, 21 Mar 2017 03:24:30 +0000 (20:24 -0700)]
intrapred: sync highbd_d135_predictor w/d135_
previously:
05437805f intrapred/d135: flatten border results before storing
BUG=webm:1316
Change-Id: I3b8bd89117ad7f2f4560b57f7c148da781e86f85
James Zern [Sat, 25 Mar 2017 02:24:39 +0000 (19:24 -0700)]
intrapred: specialize highbd 4x4 predictors
d207/d63/d45/d117/d135/d153
~9-45% better depending on the predictor on 32-bit ARM, similar range on
x86-64
this matches the non-highbitdepth implementation
BUG=webm:1316
Change-Id: Iddebdf7c58c6f31c47cae04da95c6e5318200e4c
James Zern [Sat, 25 Mar 2017 02:22:41 +0000 (19:22 -0700)]
intrapred: rename d63f to d63e
this is consistent with he/ve/d45e
Change-Id: I75641ae5667430b0ecd370db86fff6e666cb577d
James Zern [Sat, 25 Mar 2017 01:56:15 +0000 (18:56 -0700)]
remove CONFIG_MISC_FIXES
this belonged to vp10 with the changes now migrated to av1.
Change-Id: Ie30ead3e7b71f465bc14136e1b6f156ea978c43f
Marco [Thu, 23 Mar 2017 21:32:43 +0000 (14:32 -0700)]
vp9: Fix to condition on using source_sad for 1 pass real-time.
Make the source_sad feature work properly for cases of VBR or
screen_content with SVC.
Added unittest for SVC with screen-content on.
Change-Id: Iba5254fd8833fb11da521e00cc1317ec81d3f89b
James Zern [Thu, 23 Mar 2017 21:47:07 +0000 (14:47 -0700)]
rate_hist: add parameter validation
tolerate a NULL hist being passed as a result of invalid parameters
passed to init_rate_histogram(). this fixes a divide by zero in
init_rate_histogram() with an invalid fps.
BUG=webm:1383
Change-Id: Id203e0f3b18d67a4a09aaf206abcce4708f966ec
Johann Koenig [Thu, 23 Mar 2017 18:38:35 +0000 (18:38 +0000)]
Merge "vp9 temporal filter: additional test"
Alex Converse [Thu, 23 Mar 2017 18:05:13 +0000 (18:05 +0000)]
Merge changes Ie989e60c,Ifc110b12
* changes:
Backport "Optimize the use case of token_cost table" to VP9
Drop vp9_get_token_extracost
Marco Paniconi [Thu, 23 Mar 2017 14:17:48 +0000 (14:17 +0000)]
Merge "vp9: Non-rd partition: avoid unneeded call to chrome_check"
Kaustubh Raste [Thu, 23 Mar 2017 07:44:16 +0000 (07:44 +0000)]
Merge "Fix mips msa fwd xform mismatch"
Marco [Thu, 23 Mar 2017 05:36:19 +0000 (22:36 -0700)]
vp9: Non-rd partition: avoid unneeded call to chrome_check
Since y_sad is not computed yet (on the early exit due to source_sad),
no need to check for setting color_sensitiviy.
Only affects speed >=8. No change in behavior.
Change-Id: I3a6f2d20fed38d8b8ec51b75bcacf9a21f2db916
James Zern [Thu, 23 Mar 2017 00:53:21 +0000 (00:53 +0000)]
Merge "vp9_rdopt: correct size to vpx_sum_squares_2d_i16"
Marco Paniconi [Wed, 22 Mar 2017 22:56:17 +0000 (22:56 +0000)]
Merge "vp9: Adjust some speed settings for speed 8."
Marco [Wed, 22 Mar 2017 19:15:06 +0000 (12:15 -0700)]
vp9: Adjust some speed settings for speed 8.
Allow for simple_block_rd for VGA resoln, and reduce
adaptive_rd_thresh to 1.
On average no loss on RTC set, ~4% speedup on mac.
Change-Id: Ib549c4061c853776062b5e34040f839d470fbebc
Jerome Jiang [Wed, 22 Mar 2017 22:02:24 +0000 (22:02 +0000)]
Merge "vp9: Enable adaptive_rd_threshold for row mt for realtime speed 8."
Johann [Wed, 22 Mar 2017 18:04:20 +0000 (11:04 -0700)]
vp9 temporal filter: additional test
Change tests to reflect use. Input sizes will be 8 or 16 (but not
necessarily square).
filter_weight is capped at 2 and filter_strength at 6
Speed test, disabled by default.
Change-Id: Idfde9d6c4b7d93aaf0e641b0f4862c15e2a2af7a
Johann Koenig [Wed, 22 Mar 2017 19:36:40 +0000 (19:36 +0000)]
Merge "vp9 temporal filter: add const to function prototype"
James Zern [Wed, 22 Mar 2017 19:30:11 +0000 (19:30 +0000)]
Merge "idct_neon: prefix non-static functions w/'vpx_'"
James Zern [Wed, 22 Mar 2017 06:29:12 +0000 (23:29 -0700)]
vp9_rdopt: correct size to vpx_sum_squares_2d_i16
the current implementations expect pixel size, not the block type
BUG=webm:1392
Change-Id: Ib91e9f30a1f56e13566b1fb76f089dae9bb50cdc
James Zern [Tue, 21 Mar 2017 05:46:53 +0000 (22:46 -0700)]
idct_neon: prefix non-static functions w/'vpx_'
Change-Id: I94fcdeae18468e6ef0cb7119b8142d982a048031
Johann [Wed, 22 Mar 2017 17:15:22 +0000 (10:15 -0700)]
vp9 temporal filter: add const to function prototype
The input frames are not modified.
Change-Id: Ideb810e3c5afeb4dbdc4c7d54024c43a8129ad39
Kaustubh Raste [Wed, 22 Mar 2017 08:31:03 +0000 (14:01 +0530)]
Fix mips msa fwd xform mismatch
Change-Id: I32a6df11463144aa1a562256ee7d57a41fd678d6
Jerome Jiang [Tue, 14 Mar 2017 20:45:20 +0000 (13:45 -0700)]
vp9: Enable adaptive_rd_threshold for row mt for realtime speed 8.
Change it to row based array to avoid the slow down cause by sync.
row-mt on, speed 8, 2 threads: ~4% speedup for VGA on ARM benefited
from adaptive_rd_threshold.
Change-Id: I887e65a53af20a6c4f48d293daaee09dab3512cf
Marco Paniconi [Tue, 21 Mar 2017 23:44:05 +0000 (23:44 +0000)]
Merge "vp9: Modify datarate tests to cover denoising with multi-threading."
Jerome Jiang [Tue, 21 Mar 2017 23:27:48 +0000 (23:27 +0000)]
Merge "Fix the data race caused by vp9 denoiser."
Marco [Tue, 21 Mar 2017 05:15:13 +0000 (22:15 -0700)]
vp9: Modify datarate tests to cover denoising with multi-threading.
Change-Id: I6ed48a630edf9923c25a05deaca50e0afec43918
Jerome Jiang [Tue, 21 Mar 2017 22:33:42 +0000 (15:33 -0700)]
Fix the data race caused by vp9 denoiser.
BUG=webm:1391
Change-Id: I9669ae62fe9c695d4c6f9973094cb0f39bed51c7
Yi Luo [Tue, 21 Mar 2017 22:32:20 +0000 (22:32 +0000)]
Merge "Make butterfly_self() signature consistent with butterfly()"
Yunqing Wang [Tue, 21 Mar 2017 16:47:55 +0000 (09:47 -0700)]
Code refactoring in the partition search
Computed the partition search early termination score in a separate
function.
Change-Id: I1894b517ff179a38b1c05e054d373ac4b7f4cbb4
Yi Luo [Tue, 21 Mar 2017 00:18:10 +0000 (17:18 -0700)]
Make butterfly_self() signature consistent with butterfly()
- Refer to patch:
48fca113d inv_txfm_ssse3,butterfly: fix win32 abi
compatibility.
- Change four butterfly() calls to butterfly_self(), to simplify the
operations.
Change-Id: Ib2a8cfe6cddcaf0a59e6e6270d8380055ea42ef3
James Zern [Tue, 21 Mar 2017 05:39:40 +0000 (22:39 -0700)]
.mailmap: add an additional entry for Yaowu Xu
Change-Id: I26b928848a7e72ff5ca25001ed6991c95f5992a5
James Zern [Tue, 21 Mar 2017 03:27:35 +0000 (03:27 +0000)]
Merge "Add vpx_highbd_idct32x32_1024_add_neon()"
James Zern [Tue, 21 Mar 2017 03:02:50 +0000 (03:02 +0000)]
Merge "Add vpx_highbd_idct32x32_34_add_neon()"
Marco Paniconi [Tue, 21 Mar 2017 00:17:35 +0000 (00:17 +0000)]
Merge "vp9: Nonrd variance partition: improve split to 16x16."
Yunqing Wang [Mon, 20 Mar 2017 23:20:12 +0000 (23:20 +0000)]
Merge "Record the sum of tx block eobs in the partition block"
Marco [Mon, 20 Mar 2017 16:16:23 +0000 (09:16 -0700)]
vp9: Nonrd variance partition: improve split to 16x16.
Add additional condition to split to 16x16, for resolutions <= 360p,
reduces dragging artifact near moving boundary.
Small/no change on RTC metrics.
Change-Id: I314694f2166435d918f74e7ab42f002b07f40dae
Marco Paniconi [Mon, 20 Mar 2017 21:35:11 +0000 (21:35 +0000)]
Merge "vp9: Use sb content measure to bias against golden."
Marco [Thu, 16 Mar 2017 22:55:33 +0000 (15:55 -0700)]
vp9: Use sb content measure to bias against golden.
For each superblock, keep track of how far from current frame
was the last significant content change, and use that (along
with GF distance), to turnoff GF search in non-rd pickmode.
Only enabled for speed >= 8.
avgPNSR on RTC/RTC_derf down by ~0.9/1.2.
Speedup on mac: ~3-5%.
Speedup on arm: 3.6% for VGA and 4.4% for HD.
Change-Id: Ic3f3d6a2af650aca6ba0064d2b1db8d48c035ac7
Johann Koenig [Mon, 20 Mar 2017 19:05:54 +0000 (19:05 +0000)]
Merge "temporal filter test: update types"
Yunqing Wang [Thu, 16 Mar 2017 22:45:07 +0000 (15:45 -0700)]
Record the sum of tx block eobs in the partition block
The sum of tx bloxk eobs is needed in the machine learning based partition
early termination. The eobs are first accumulated during tx search, and
then the value associated with the best tx_size is copied to ctx for later
use.
After the sum of eobs are calculated correctly, re-enabled
ml_partition_search_early_termination speed feature.
Re-did the quality/speed test to check the impact of the fix.
1. Borg test BDRATE result:
4k set: PSNR: +0.183%; SSIM: +0.100%;
hdres set: PSNR: +0.168%; SSIM: +0.256%;
midres set: PSNR: +0.186%; SSIM: +0.326%;
2.Average speed gain result:
4k clips: 21%;
hd clips: 26%;
midres clips: 15%.
The result is in line with the original result.
Change-Id: I4209a95c89be03b4cbfb6a95b16885f89feddbda
Jingning Han [Fri, 17 Mar 2017 19:34:54 +0000 (12:34 -0700)]
Backport "Optimize the use case of token_cost table" to VP9
cherry picked from nextgenv2
90ea281f29df747282e56d3068a3ddbdde30cdd0
Change-Id: Ie989e60c6479ac3251cadaac9c7e795ccba52f4e
Alex Converse [Fri, 17 Mar 2017 23:24:45 +0000 (16:24 -0700)]
Drop vp9_get_token_extracost
vp9_get_token_cost does the same thing with one fewer lookup.
Change-Id: Ifc110b12403cb1a04a3f91357ab435c67b4815d6
James Zern [Fri, 17 Mar 2017 21:48:20 +0000 (21:48 +0000)]
Merge "inv_txfm_sse2: clear conversion warning in hbd build"
Johann [Fri, 17 Mar 2017 20:19:45 +0000 (13:19 -0700)]
temporal filter test: update types
Use 'int' for w/h since it is that way everywhere else.
Pass Buffer pointers
Change-Id: I9eef6890af657baba171c6bcfcc85fc976173399
Johann Koenig [Fri, 17 Mar 2017 18:18:05 +0000 (18:18 +0000)]
Merge "test: add vp9_temporal_filter_apply test"
Alex Converse [Fri, 17 Mar 2017 16:18:20 +0000 (16:18 +0000)]
Merge "vp9_optimize_b: Combine extrabits cost with token lookup"
James Zern [Fri, 17 Mar 2017 08:16:38 +0000 (01:16 -0700)]
inv_txfm_sse2: clear conversion warning in hbd build
tran_high -> tran_low in return from dct_const_round_shift()
Change-Id: I2fe06c4b604823b1d1fe40a487017c3c2819a440
Linfeng Zhang [Wed, 15 Mar 2017 18:31:35 +0000 (11:31 -0700)]
Add vpx_highbd_idct32x32_1024_add_neon()
BUG=webm:1301
Change-Id: Ib90af0c1712e56b301d0e981dbe9a641e15e36ca
Linfeng Zhang [Tue, 14 Mar 2017 21:07:25 +0000 (14:07 -0700)]
Add vpx_highbd_idct32x32_34_add_neon()
BUG=webm:1301
Change-Id: I74dd16c6c64e7bb71aa991cedccddf0663ef5e06
James Zern [Fri, 17 Mar 2017 07:26:52 +0000 (07:26 +0000)]
Merge "Add vpx_highbd_idct32x32_135_add_neon()"