]>
granicus.if.org Git - libvpx/log
Angie Chiang [Fri, 4 Dec 2015 23:38:35 +0000 (23:38 +0000)]
Merge "comment out range_check of fdct in dct.c"
Jian Zhou [Fri, 4 Dec 2015 21:43:10 +0000 (21:43 +0000)]
Merge changes Ie48229c2,Ib9f18468,I0c90e7c1
* changes:
Speed up h_predictor_16x16
Speed up h_predictor_8x8
MMX in intra 8x8 prediction replaced with SSE2
Jian Zhou [Thu, 26 Nov 2015 01:12:20 +0000 (17:12 -0800)]
Speed up h_predictor_16x16
Relocate the function from SSSE3 to SSE2, Unroll loop from 8 to 4,
and reduce mem access to left.
Speed up by >20% in ./test_intra_pred_speed.
Change-Id: Ie48229c2e32404706b722442942c84983bda74cc
Jian Zhou [Wed, 25 Nov 2015 20:28:39 +0000 (12:28 -0800)]
Speed up h_predictor_8x8
Relocate the function from SSSE3 to SSE2, Unroll loop from 4 to 2,
and reduce mem access to left.
Speed up by >20% in ./test_intra_pred_speed.
Change-Id: Ib9f1846819783b6e05e2a310c930eb844b2b4d2e
Marco Paniconi [Fri, 4 Dec 2015 19:21:26 +0000 (19:21 +0000)]
Merge "Non-rd partition: Use force split on 16x16 for low resolutions."
Angie Chiang [Thu, 3 Dec 2015 00:09:56 +0000 (16:09 -0800)]
comment out range_check of fdct in dct.c
The range_check is not used because the bit range
in fdct# is not correct. Since we are going to merge in a new version
of fdct# from nextgenv2, we won't fix the incorrect bit range now.
Change-Id: I54f27a6507f27bf475af302b4dbedc71c5385118
Jian Zhou [Fri, 4 Dec 2015 18:50:58 +0000 (18:50 +0000)]
Merge "MMX in intra 4x4 prediction replaced with SSE2"
Marco [Thu, 3 Dec 2015 01:15:41 +0000 (17:15 -0800)]
Non-rd partition: Use force split on 16x16 for low resolutions.
For low resolutions, whem 4x4downsample is used for variance,
use the same force split (that is used for 8x8downsample) for 16x16 blocks.
No change in metrics. Small improvement visually.
Change-Id: I915b9895902d0b9a41e75d37fee1bf3714d2366d
Paul Wilkins [Fri, 4 Dec 2015 10:33:55 +0000 (10:33 +0000)]
Merge "Fix bug when overlaying middle arfs in multi-arf groups."
Jian Zhou [Fri, 4 Dec 2015 02:11:06 +0000 (18:11 -0800)]
MMX in intra 8x8 prediction replaced with SSE2
8x8 Intra predictor implemented with MMX is replaced with SSE2.
Change-Id: I0c90e7c1e1e6942489ac2bfe58903b728aac7a52
Jian Zhou [Fri, 4 Dec 2015 00:39:42 +0000 (16:39 -0800)]
MMX in intra 4x4 prediction replaced with SSE2
4x4 Intra predictor implemented with MMX is replaced with SSE2.
Change-Id: Id57da2a7c38832d0356bc998790fc1989d39eafc
Marco Paniconi [Fri, 4 Dec 2015 00:24:49 +0000 (00:24 +0000)]
Merge "vp9-noise estimate: Move level setting to a function."
Marco Paniconi [Thu, 3 Dec 2015 23:52:46 +0000 (23:52 +0000)]
Merge "vp9-denoiser: Increase threshold for mode re-evaluation."
Marco [Thu, 3 Dec 2015 21:47:27 +0000 (13:47 -0800)]
vp9-denoiser: Increase threshold for mode re-evaluation.
Change-Id: I57a15aec1cb2d6638f5211d30c2c9f15fb62494f
Marco [Thu, 3 Dec 2015 21:08:37 +0000 (13:08 -0800)]
vp9-noise estimate: Move level setting to a function.
This is so we may update level at any time (e.g., to be used
for setting thresholds in variance-based partition).
Change-Id: I32caad2271b8e03017a531f9ea456a6dbb9d49c7
hui su [Thu, 3 Dec 2015 20:30:47 +0000 (12:30 -0800)]
Remove palette from VP10
Store it in nextgenv2 for now.
Change-Id: Iab0af0e15246758e3b6e8bde4a74b13c410576fc
paulwilkins [Thu, 3 Dec 2015 12:09:47 +0000 (12:09 +0000)]
Fix bug when overlaying middle arfs in multi-arf groups.
Do not reset the alt ref active flag when overlaying the middle
arf(s) of a multi arf group.
Change-Id: Ia55a55a376973f3fd17161429fd2afb07b4df31f
Jian Zhou [Wed, 2 Dec 2015 18:49:00 +0000 (18:49 +0000)]
Merge "SSE2 speed up of h_predictor_4x4"
Debargha Mukherjee [Tue, 1 Dec 2015 23:12:06 +0000 (15:12 -0800)]
Fix a spatial svc test crash
Fixes crash in 2pass spatial svc test that was introduced in:
https://chromium-review.googlesource.com/#/c/313571/6
Change-Id: Iab3e8225a8d159cd33f5849dffe6802e25038047
Debargha Mukherjee [Tue, 1 Dec 2015 21:20:02 +0000 (13:20 -0800)]
Fix a spatial svc assert failure
Fixes spatial svc rc assert failure introdcued in:
https://chromium-review.googlesource.com/#/c/312959/1
Change-Id: I6096bfbc484859d71a5fb55e6a3248a31885af61
Debargha Mukherjee [Tue, 1 Dec 2015 21:24:46 +0000 (21:24 +0000)]
Merge "Spatial SVC crash fix"
Debargha Mukherjee [Tue, 1 Dec 2015 18:40:10 +0000 (10:40 -0800)]
Fix a spatial svc bug related to scaling
Fixes bug introduced in
https://chromium-review.googlesource.com/#/c/299482/5
Change-Id: If542c1a917380465dd9bc4ce5e32b0adbb20e340
Marco [Mon, 30 Nov 2015 23:34:57 +0000 (15:34 -0800)]
Condition use of minmax in variance partition on speed setting.
For non-rd variance partition: only allow minmax computation
(which currently has no arm-neon optimization) for speeds < 8.
Performance loss is small: On RTC set with speed 8, few clips lose ~2/3%,
average loss is < 1%.
Change-Id: Ia9414f4d0b77dc83c3e73ca8de5d903f64b425ce
Scott LaVarnway [Mon, 30 Nov 2015 23:28:27 +0000 (23:28 +0000)]
Merge "VPX: x86 asm version of vpx_idct32x32_1024_add()"
Marco Paniconi [Mon, 30 Nov 2015 19:00:39 +0000 (19:00 +0000)]
Merge "vp9 denoiser: Fix to re-evaluate mode selection."
Jian Zhou [Tue, 24 Nov 2015 20:16:05 +0000 (12:16 -0800)]
SSE2 speed up of h_predictor_4x4
Relocate h_predictor_4x4 from SSSE3 to SSE2 with XMM registers.
Speed up by ~25% in ./test_intra_pred_speed.
Change-Id: I64e14c13b482a471449be3559bfb0da45cf88d9d
Marco [Mon, 30 Nov 2015 16:51:25 +0000 (08:51 -0800)]
vp9: Update to noise estimation for denoising.
Change initial state of noise level, and only update
denoiser with noise level when estimate is done.
Change-Id: If44090d29949d3e4927e855d88241634cdb395dc
Marco [Mon, 30 Nov 2015 16:57:49 +0000 (08:57 -0800)]
vp9 denoiser: Fix to re-evaluate mode selection.
This fix allows to enable reuse_inter_pred.
Change-Id: I53f2bf1163bb0036ffb6df92117a86debdca11d1
Scott LaVarnway [Wed, 25 Nov 2015 18:11:29 +0000 (10:11 -0800)]
VPX: x86 asm version of vpx_idct32x32_1024_add()
Change-Id: I3ba4ede553e068bf116dce59d1317347988b3542
Marco Paniconi [Wed, 25 Nov 2015 04:24:00 +0000 (04:24 +0000)]
Merge "vp9 denoiser: Re-evaluate ZEROMV after denoiser filtering."
Jian Zhou [Wed, 25 Nov 2015 02:34:07 +0000 (02:34 +0000)]
Merge "Speed up tm_predictor_8x8"
James Zern [Wed, 25 Nov 2015 02:19:47 +0000 (02:19 +0000)]
Merge "configure: simplify x86 asm dependencies"
James Zern [Wed, 25 Nov 2015 01:48:53 +0000 (01:48 +0000)]
Merge changes Iaf8cbe95,I6748183d,I2a49811d
* changes:
add vp9_satd_neon
fix vp9_satd_sse2
vp9_satd: return an int
Marco [Fri, 13 Nov 2015 23:58:42 +0000 (15:58 -0800)]
vp9 denoiser: Re-evaluate ZEROMV after denoiser filtering.
For denoising, and for noise level above threshold, re-evaluate
ZEROMV for mode selection after denoising.
Current change only does this check if selected best mode (before denoising)
was intra.
Change-Id: I4b1435b68d26c78f7597b995ee7bff0ddd5f9511
Debargha Mukherjee [Wed, 25 Nov 2015 00:40:27 +0000 (16:40 -0800)]
Spatial SVC crash fix
Fixes a spatial_svc breakage introduced in
https://chromium-review.googlesource.com/#/c/305228/3.
Change-Id: I7f2cecbdca980addb85d5e58b58b5454f4730ada
James Zern [Fri, 20 Nov 2015 07:39:10 +0000 (23:39 -0800)]
add vp9_satd_neon
~60-65% faster at the function level across block sizes
Change-Id: Iaf8cbe95731c43fdcbf68256e44284ba51a93893
Jian Zhou [Fri, 20 Nov 2015 02:57:36 +0000 (18:57 -0800)]
Speed up tm_predictor_8x8
Left neighbor read from memory only once.
Speed up by ~20% in ./test_intra_pred_speed.
Change-Id: Ia1388630df6fed0dce9a6eeded6cb855bbc43505
Marco [Tue, 24 Nov 2015 23:56:59 +0000 (15:56 -0800)]
vp9-denoiser: Fix to reset frame_stats.
zeromv_lastref_sse was not reset.
Change-Id: I23c12e804d63dc7dc18514f6efe71de1d1acbd6a
Marco Paniconi [Tue, 24 Nov 2015 19:14:35 +0000 (19:14 +0000)]
Merge "vp9 non-rd pickmode: Fix logic in reference masking."
Alex Converse [Tue, 24 Nov 2015 18:33:45 +0000 (18:33 +0000)]
Merge "bitreader/writer: Change shift to signed"
Alex Converse [Tue, 24 Nov 2015 18:24:32 +0000 (18:24 +0000)]
Merge "Deduplicate some high bit depth tables"
Marco [Tue, 24 Nov 2015 00:37:12 +0000 (16:37 -0800)]
vp9 non-rd pickmode: Fix logic in reference masking.
This change makes sure last reference with zero mv
is always checked for mode selection.
No change in metrics.
Change-Id: Iaf01877bf34272b966c78bfe18daad882a0a419e
Scott LaVarnway [Mon, 23 Nov 2015 23:37:13 +0000 (23:37 +0000)]
Merge "VPX: Removed unnecessary pmulhrsw in IDCT32X32_34"
Scott LaVarnway [Mon, 23 Nov 2015 23:36:46 +0000 (23:36 +0000)]
Merge "VP9: Only zero counts when !frame_parallel_decoding_mode (2)"
Scott LaVarnway [Mon, 23 Nov 2015 22:42:15 +0000 (14:42 -0800)]
VP9: Only zero counts when !frame_parallel_decoding_mode (2)
The counts are never used when frame_parallel_decoding_mode
is set.
Change-Id: I293aa68abadcdd30973adacb9f5f5a3aecf8daa2
Marco [Fri, 20 Nov 2015 18:12:11 +0000 (10:12 -0800)]
vp9-svc: Fix to allow setting qp-max/min per spatial and temporal layer.
Change-Id: Ic0ec32c1d7f7c08c9f956592dccbfd9060b1f624
Scott LaVarnway [Mon, 23 Nov 2015 18:24:09 +0000 (10:24 -0800)]
VPX: Removed unnecessary pmulhrsw in IDCT32X32_34
and fixed macro name.
Change-Id: I306b98a2b4ec80b130ae80290b4cd9c7a5363311
James Zern [Sat, 21 Nov 2015 06:24:11 +0000 (22:24 -0800)]
Revert "Speed up h_predictor_4x4"
This reverts commit
d76032ae87e535be5b924d9e88bbd67189380534 .
breaks 32-bit builds
Change-Id: If6266ec2a405b5a21d615112f0f37e8a71193858
James Zern [Sat, 21 Nov 2015 01:40:11 +0000 (01:40 +0000)]
Merge "Use Interlocked calls in win32 once() implementation."
James Zern [Sat, 21 Nov 2015 01:12:42 +0000 (01:12 +0000)]
Merge "Speed up h_predictor_4x4"
Marco [Thu, 19 Nov 2015 01:04:15 +0000 (17:04 -0800)]
vp9 denoiser: Bias to last reference for temporal filter.
Change-Id: I6a360a12e8da8cdcb8a779647512591612d64f31
James Zern [Fri, 20 Nov 2015 04:04:16 +0000 (20:04 -0800)]
fix vp9_satd_sse2
accumulate satd in 32-bits
+ add unit test
Change-Id: I6748183df3662ddb9d635f9641f9586f2fd38ad5
James Zern [Thu, 19 Nov 2015 07:17:27 +0000 (23:17 -0800)]
vp9_satd: return an int
the final sum may use up to 26 bits
+ add a unit test
+ disable the sse2 as the result will rollover; this will be fixed in a
future commit
Change-Id: I2a49811dfaa06abfd9fa1e1e65ed7cd68e4c97ce
Marco Paniconi [Fri, 20 Nov 2015 18:29:15 +0000 (18:29 +0000)]
Merge "vp9-svc: Fix the setting of is_key_frame."
Alex Converse [Fri, 20 Nov 2015 17:42:05 +0000 (17:42 +0000)]
Merge "Fix a signed shift overflow in vpx_rb_read_inv_signed_literal."
Alex Converse [Fri, 20 Nov 2015 17:41:58 +0000 (17:41 +0000)]
Merge "Fix unsigned overflow in rd_variance_adjustment."
Marco [Fri, 20 Nov 2015 16:44:19 +0000 (08:44 -0800)]
vp9-svc: Fix the setting of is_key_frame.
Change on affects 1 pass CBR.
On key frame, temporal layer_id is reset to 0 for 1 pass CBR,
but since "layer" is reset, the svc.layer_context[layer].is_key_frame
was not correspondingly set properly.
Change-Id: I08f6da0a55ac7429ccfbaddfb7be14479e43543b
Scott LaVarnway [Fri, 20 Nov 2015 15:11:00 +0000 (15:11 +0000)]
Merge "VPX: x86 asm version of vpx_idct32x32_34_add()"
Alex Converse [Thu, 19 Nov 2015 23:07:55 +0000 (15:07 -0800)]
bitreader/writer: Change shift to signed
Silences several legal but suspicious unsigned overflows found with
clang -fsanitize=integer.
Change-Id: I69399751492a183167932b0a10751c433c32ca7b
Alex Converse [Thu, 19 Nov 2015 23:04:20 +0000 (15:04 -0800)]
Fix a signed shift overflow in vpx_rb_read_inv_signed_literal.
Found with clang -fsanitize=integer
Change-Id: I17cb2166c06ff463abfaf9b0e6bc749d0d6fdf94
Alex Converse [Thu, 19 Nov 2015 22:53:51 +0000 (14:53 -0800)]
Fix unsigned overflow in rd_variance_adjustment.
Found with clang -fsanitize=integer
Change-Id: I2538e7483cb2d5f06bceecbd3326bdd88bfecfa1
Jian Zhou [Thu, 19 Nov 2015 19:34:22 +0000 (11:34 -0800)]
Speed up h_predictor_4x4
Modify h_predictor_4x4 with XMM registers.
Speed up by ~25% in ./test_intra_pred_speed.
Change-Id: Id01c34c48e75b9d56dfc2e93af12cf0c0326a279
Paul Wilkins [Thu, 19 Nov 2015 16:13:43 +0000 (16:13 +0000)]
Merge "Changes to best quality settings."
Jian Zhou [Thu, 19 Nov 2015 02:32:48 +0000 (02:32 +0000)]
Merge "Speed up tm_predictor_4x4"
Jian Zhou [Sat, 14 Nov 2015 02:42:48 +0000 (18:42 -0800)]
Speed up tm_predictor_4x4
tm_predictor_4x4 is implemented with SSE2 using XMM registers.
Speed up by ~25% in ./test_intra_pred_speed.
Change-Id: I25074b78d476a2cb17f81cf654bdfd80df2070e0
Marco [Wed, 18 Nov 2015 22:29:25 +0000 (14:29 -0800)]
vp9-svc: Fix to key frame counter for spatial layers.
Existing condition only applied to temporal layers.
Change-Id: Icef20a59d0afc61d4e14dea01aff4786fa9e41ae
Paul Wilkins [Wed, 18 Nov 2015 11:10:13 +0000 (11:10 +0000)]
Merge "Changes to exhaustive motion search."
Scott LaVarnway [Wed, 18 Nov 2015 01:42:24 +0000 (17:42 -0800)]
VPX: x86 asm version of vpx_idct32x32_34_add()
Change-Id: Ic81f38998fb1b8d33f5a5d7424c2c41002786cef
James Zern [Wed, 18 Nov 2015 00:14:05 +0000 (16:14 -0800)]
configure: simplify x86 asm dependencies
--disable-XXX has the effect of disabling all extensions above it, e.g.,
--disable-ssse3 disables ssse3-avx2.
Change-Id: If02b44ca71ee12e4acb12010db8593a7989f2a9d
Zoe Liu [Tue, 10 Nov 2015 01:21:11 +0000 (17:21 -0800)]
Fixed a few sanity checks.
Change-Id: Ieec4a7be5945dc6de192e2d8292ab978baf47f53
(cherry picked from commit
2096296421c7fa56abb49470c0fbe7c4337b8a71 )
paulwilkins [Tue, 17 Nov 2015 16:20:20 +0000 (16:20 +0000)]
Changes to best quality settings.
Small changes to the best quality default speed trade off.
Some speedup settings are worth while even for best quality as they
have only a very small impact on quality but a significant impact on
encode time.
These changes give as much as a further 50-60% increase in encode
speed for my test animations clip with minimal impact on quality.
For this sequence these changes improve the best quality encode speed
to about the same level as good quality speed 0 in Q3 2015 whilst
retaining the large quality gain of over 1 db
For many natural videos though the quality difference from good 0
to best is much smaller.
Change-Id: I28b3840009d77e129817a78a7c41e29cb03e1132
jackychen [Sat, 14 Nov 2015 00:02:43 +0000 (16:02 -0800)]
Enable resize test(down&up) by changing the bitrate.
Change-Id: I5a4f1f7b9de20fbfc28cb743dcd29c0eeca736f8
Ralph Giles [Fri, 13 Nov 2015 20:56:34 +0000 (12:56 -0800)]
Use Interlocked calls in win32 once() implementation.
This is simpler than the previous scheme, which tried to allocate
the CRITICAL_SECTION struct in a thread-safe manner before it
could use it to run the wrapped function in a thread-safe manner.
Change-Id: I172e5544e5f16403a3a0e5e2b9104b1292a0d786
Marco [Fri, 13 Nov 2015 16:09:17 +0000 (08:09 -0800)]
Reduce sampling time for noise estimate.
Change-Id: I46abd85e2187b8f4c2846416a23fab26d9b9f67d
Marco [Fri, 13 Nov 2015 14:20:41 +0000 (06:20 -0800)]
Fix resize internal test.
Temporary fix to make sure it always passes.
Change-Id: I56a0529986ad7049b6090f871c14e9e06d573d5f
Marco Paniconi [Fri, 13 Nov 2015 14:09:19 +0000 (14:09 +0000)]
Merge "VP9 noise estimation: add frame level motion metrics and adjust thresholds."
paulwilkins [Wed, 14 Oct 2015 09:38:49 +0000 (10:38 +0100)]
Changes to exhaustive motion search.
This change alters the nature and use of exhaustive motion search.
Firstly any exhaustive search is preceded by a normal step search.
The exhaustive search is only carried out if the distortion resulting
from the step search is above a threshold value.
Secondly the simple +/- 64 exhaustive search is replaced by a
multi stage mesh based search where each stage has a range
and step/interval size. Subsequent stages use the best position from
the previous stage as the center of the search but use a reduced range
and interval size.
For example:
stage 1: Range +/- 64 interval 4
stage 2: Range +/- 32 interval 2
stage 3: Range +/- 15 interval 1
This process, especially when it follows on from a normal step
search, has shown itself to be almost as effective as a full range
exhaustive search with step 1 but greatly lowers the computational
complexity such that it can be used in some cases for speeds 0-2.
This patch also removes a double exhaustive search for sub 8x8 blocks
which also contained a bug (the two searches used different distortion
metrics).
For best quality in my test animation sequence this patch has almost
no impact on quality but improves encode speed by more than 5X.
Restricted use in good quality speeds 0-2 yields significant quality gains
on the animation test of 0.2 - 0.5 db with only a small impact on encode
speed. On most clips though the quality gain and speed impact are small.
Change-Id: Id22967a840e996e1db273f6ac4ff03f4f52d49aa
JackyChen [Fri, 13 Nov 2015 02:36:17 +0000 (18:36 -0800)]
VP9 noise estimation: add frame level motion metrics and adjust thresholds.
Change-Id: Ia1aba00603b32cee6835951d3d8f740937cf20f4
James Zern [Fri, 13 Nov 2015 06:49:00 +0000 (06:49 +0000)]
Merge "libs.mk, testdata: rm redundant test of LIBVPX_TEST_DATA"
James Zern [Fri, 13 Nov 2015 06:29:20 +0000 (06:29 +0000)]
Merge "Add AVX vectorized vp9_diamond_search_sad"
Marco [Fri, 13 Nov 2015 00:52:45 +0000 (16:52 -0800)]
Adjust variance threshold for 16x16 split at low resolutions.
Change-Id: I635e37f81237e9703d7d9a11ed76a043f4ec6eb0
Marco Paniconi [Fri, 13 Nov 2015 00:13:32 +0000 (00:13 +0000)]
Revert "Update to noise estimation."
This reverts commit
6b79a1e3e0dfc265f43445b8181aa95e1c02deac .
Change-Id: I5a4923ca8a6de842855ce0725e92567ccbed6fb7
Marco [Thu, 12 Nov 2015 17:06:12 +0000 (09:06 -0800)]
Update to noise estimation.
Add frame level global check and adjust some parameters.
Change-Id: I42103394f2d329781195d94ce6cbb5b3383eea17
Marco Paniconi [Thu, 12 Nov 2015 06:08:38 +0000 (06:08 +0000)]
Merge "Non-rd partition: reduce variance threshold low resolutions."
Marco Paniconi [Thu, 12 Nov 2015 06:06:51 +0000 (06:06 +0000)]
Merge "Adjust varianace threshold for high noise condition."
Marco [Thu, 12 Nov 2015 02:21:20 +0000 (18:21 -0800)]
Adjust motion threshold to limit cyclic refresh.
Change-Id: Icfca27a567eb8929c312c6315856ee130d982a04
Marco [Thu, 12 Nov 2015 02:05:11 +0000 (18:05 -0800)]
Adjust varianace threshold for high noise condition.
Change-Id: I91c722e480328ff95b8c57614d8176ccaceb2539
Marco Paniconi [Wed, 11 Nov 2015 20:40:29 +0000 (20:40 +0000)]
Merge "vp9 denoiser: Add another noise level to denoising."
James Zern [Wed, 11 Nov 2015 20:39:12 +0000 (20:39 +0000)]
Merge "Revert "VPX: x86 asm version of vpx_idct32x32_34_add()""
Marco [Wed, 11 Nov 2015 18:09:40 +0000 (10:09 -0800)]
vp9 denoiser: Add another noise level to denoising.
Change-Id: Idc755ab54e4f78bb7d75bc97634c451804edad99
James Zern [Wed, 11 Nov 2015 19:11:37 +0000 (11:11 -0800)]
Revert "VPX: x86 asm version of vpx_idct32x32_34_add()"
This reverts commit
9aeaa2016e7470c4e316d90da33d883098eed6f4 .
This causes some test vectors to fail.
Change-Id: I3659a2068404ec5a0591fba5c88b1bec0c9059a4
James Zern [Wed, 11 Nov 2015 19:09:42 +0000 (11:09 -0800)]
Revert "VP9: Only zero counts when !frame_parallel_decoding_mode"
This reverts commit
380a5519cca999f54b17f37b709996a11f3204ea .
This causes an assertion failure in debug_check_frame_counts() which
probably isn't valid with this change; leaving the investigation for
later now.
Change-Id: Ieda5ca811ed2fa50a0cc6935919a8d10dca996e0
Geza Lore [Wed, 28 Oct 2015 14:35:04 +0000 (14:35 +0000)]
Add AVX vectorized vp9_diamond_search_sad
This function now has an AVX intrinsics version which is about 80%
faster compared to the C implementation. This provides a 2-4% total
speed-up for encode, depending on encoding parameters. The function
utilizes 3 properties of the cost function lookup table, constructed
in 'cal_nmvjointsadcost' and 'cal_nmvsadcosts'.
For the joint cost:
- mvjointsadcost[1] == mvjointsadcost[2] == mvjointsadcost[3]
For the component costs:
- For all i: mvsadcost[0][i] == mvsadcost[1][i]
(equal per component cost)
- For all i: mvsadcost[0][i] == mvsadcost[0][-i]
(Cost function is even)
These must hold, otherwise the AVX version of the function cannot be used.
Change-Id: I6c2791d43022822a9e6ab43cd124a773946d0bdc
James Zern [Wed, 11 Nov 2015 01:54:51 +0000 (17:54 -0800)]
libs.mk, testdata: rm redundant test of LIBVPX_TEST_DATA
the return value of enabled, which may be empty, is handled by the for
loop. this avoids making an unnecessarily long command line which may
fail in certain cases.
Change-Id: Ib88ecbbe2c0f6d7debb600b4caed4884497263b1
Marco [Tue, 10 Nov 2015 23:41:39 +0000 (15:41 -0800)]
Non-rd partition: reduce variance threshold low resolutions.
Change-Id: I06306905d187948a92f839357df5d21413823808
Marco Paniconi [Tue, 10 Nov 2015 23:10:31 +0000 (23:10 +0000)]
Merge "Add bias to zero/small motion for noisy source."
James Zern [Tue, 10 Nov 2015 22:35:12 +0000 (22:35 +0000)]
Merge "convolve_copy_sse2: replace SSE w/SSE2 code"
Scott LaVarnway [Tue, 10 Nov 2015 21:40:11 +0000 (21:40 +0000)]
Merge "VPX: x86 asm version of vpx_idct32x32_34_add()"
Scott LaVarnway [Tue, 10 Nov 2015 19:54:56 +0000 (11:54 -0800)]
VPX: x86 asm version of vpx_idct32x32_34_add()
Change-Id: I8a933c63b7fbf3c65e2c06dbdca9646cadd0b7cb
Marco [Mon, 9 Nov 2015 21:36:56 +0000 (13:36 -0800)]
Add bias to zero/small motion for noisy source.
Change is only for real-time mode, speed >= 5, and non-screen content mode.
Add bias to zero/low motion for big blocks, if noise estimation
is enabled and noise level is above threshold.
Change-Id: I3a0a4608ede6aa535bda6eca528d20f8aba738e7