Jian Zhou
aa2764abdd
MMX in intra 8x8 prediction replaced with SSE2
...
8x8 Intra predictor implemented with MMX is replaced with SSE2.
Change-Id: I0c90e7c1e1e6942489ac2bfe58903b728aac7a52
2015-12-03 18:11:06 -08:00
Jian Zhou
89a1efa4c4
MMX in intra 4x4 prediction replaced with SSE2
...
4x4 Intra predictor implemented with MMX is replaced with SSE2.
Change-Id: Id57da2a7c38832d0356bc998790fc1989d39eafc
2015-12-03 16:40:23 -08:00
Marco Paniconi
6202ce5ada
Merge "vp9-noise estimate: Move level setting to a function."
2015-12-04 00:24:49 +00:00
James Zern
2e693eb80e
vp8: fix loop filter level clamping
...
the loop filter level is transmitted as 6-bits + sign so needs to be clamped in
the delta + absolute case.
BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1224363
Change-Id: Icbdca4fdbf043466429bd5c9d59dbe913bf153bc
2015-12-03 16:18:48 -08:00
James Zern
ff3674a15e
vp8: fix quantizer clamping
...
the quantizer is transmitted as 7-bits + sign so needs to be clamped in
the delta + absolute case.
BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1224361
Change-Id: I9115f5d1d5cf7e0a1d149d79486d9d17de9b9639
2015-12-03 16:16:28 -08:00
Marco Paniconi
b38a7cd169
Merge "vp9-denoiser: Increase threshold for mode re-evaluation."
2015-12-03 23:52:46 +00:00
Marco
dd998adc7a
vp9-denoiser: Increase threshold for mode re-evaluation.
...
Change-Id: I57a15aec1cb2d6638f5211d30c2c9f15fb62494f
2015-12-03 13:48:35 -08:00
Marco
b12e353424
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
2015-12-03 13:11:49 -08:00
hui su
5d3327e891
Remove palette from VP10
...
Store it in nextgenv2 for now.
Change-Id: Iab0af0e15246758e3b6e8bde4a74b13c410576fc
2015-12-03 12:30:47 -08:00
paulwilkins
4a79503b3e
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
2015-12-03 15:19:02 +00:00
Jian Zhou
623e988add
Merge "SSE2 speed up of h_predictor_4x4"
2015-12-02 18:49:00 +00:00
Scott LaVarnway
f0b0b1fe62
VP9: Add ssse3 version of vpx_idct32x32_135_add()
...
Change-Id: I9a780131efaad28cf1ad233ae64c5c319a329727
2015-12-02 04:50:46 -08:00
Debargha Mukherjee
f70095076b
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
2015-12-01 17:17:51 -08:00
Debargha Mukherjee
7ceba7c26b
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
2015-12-01 14:24:50 -08:00
Debargha Mukherjee
01a2b40e95
Merge "Spatial SVC crash fix"
2015-12-01 21:24:46 +00:00
Debargha Mukherjee
d3409bad9a
Fix a spatial svc bug related to scaling
...
Fixes bug introduced in
https://chromium-review.googlesource.com/#/c/299482/5
Change-Id: If542c1a917380465dd9bc4ce5e32b0adbb20e340
2015-12-01 10:40:59 -08:00
Marco
1abf575f32
vp9 denoiser: Re-evaluate mode selection for golden reference.
...
Under certain denoising conditons, check for re-evaluation of
zero_last mode if best mode was golden reference.
Change-Id: Ic6cdfd175eef2f7d68606300c7173ab6654b3f6e
2015-12-01 09:39:01 -08:00
Jian Zhou
c7fae5d893
Speed up tm_predictor_16x16
...
Reduce mem access to left. Speed up by 10% in ./test_intra_pred_speed
with the same instruction size.
Change-Id: Ia33689d62476972cc82ebb06b50415aeccc95d15
2015-11-30 17:46:40 -08:00
Marco
f78b7daec4
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
2015-11-30 17:23:32 -08:00
Scott LaVarnway
2669e05949
Merge "VPX: x86 asm version of vpx_idct32x32_1024_add()"
2015-11-30 23:28:27 +00:00
Marco Paniconi
23831545a0
Merge "vp9 denoiser: Fix to re-evaluate mode selection."
2015-11-30 19:00:39 +00:00
Jian Zhou
9d29d76280
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
2015-11-30 10:08:05 -08:00
Marco
f1f74a4e6c
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
2015-11-30 10:03:20 -08:00
Marco
ad7e765319
vp9 denoiser: Fix to re-evaluate mode selection.
...
This fix allows to enable reuse_inter_pred.
Change-Id: I53f2bf1163bb0036ffb6df92117a86debdca11d1
2015-11-30 08:59:10 -08:00
Scott LaVarnway
0148e20c3c
VPX: x86 asm version of vpx_idct32x32_1024_add()
...
Change-Id: I3ba4ede553e068bf116dce59d1317347988b3542
2015-11-25 10:11:29 -08:00
James Zern
1138b986c9
test.mk: enable test_intra_pred_speed unconditionally
...
vpx_dsp is currently included in all configurations
Change-Id: If3253a87d27f3e1abc94fbfe76f978c1172f3762
2015-11-24 22:29:12 -08:00
Marco Paniconi
610b413d7b
Merge "vp9 denoiser: Re-evaluate ZEROMV after denoiser filtering."
2015-11-25 04:24:00 +00:00
Jian Zhou
901d20369a
Merge "Speed up tm_predictor_8x8"
2015-11-25 02:34:07 +00:00
James Zern
adb033b57b
Merge "configure: simplify x86 asm dependencies"
2015-11-25 02:19:47 +00:00
James Zern
fd51d90159
Merge changes Iaf8cbe95,I6748183d,I2a49811d
...
* changes:
add vp9_satd_neon
fix vp9_satd_sse2
vp9_satd: return an int
2015-11-25 01:48:53 +00:00
Marco
5b0ddb931d
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
2015-11-24 17:30:32 -08:00
Debargha Mukherjee
e807517a93
Spatial SVC crash fix
...
Fixes a spatial_svc breakage introduced in
https://chromium-review.googlesource.com/#/c/305228/3 .
Change-Id: I7f2cecbdca980addb85d5e58b58b5454f4730ada
2015-11-24 16:40:27 -08:00
Alex Converse
022c848b4d
Change highbd variance rounding to prevent negative variance.
...
Always round sum error and sum square error toward zero in variance
calculations. This prevents variance from becoming negative.
Avoiding rounding variance at all might be better but would be far
more invasive.
Change-Id: Icf24e0e75ff94952fc026ba6a4d26adf8d373f1c
2015-11-24 16:32:01 -08:00
James Zern
eb1d0f8d60
add vp9_satd_neon
...
~60-65% faster at the function level across block sizes
Change-Id: Iaf8cbe95731c43fdcbf68256e44284ba51a93893
2015-11-24 16:09:10 -08:00
Jian Zhou
f4621c5c8d
Speed up tm_predictor_8x8
...
Left neighbor read from memory only once.
Speed up by ~20% in ./test_intra_pred_speed.
Change-Id: Ia1388630df6fed0dce9a6eeded6cb855bbc43505
2015-11-24 16:07:06 -08:00
Marco
fbd245c598
vp9-denoiser: Fix to reset frame_stats.
...
zeromv_lastref_sse was not reset.
Change-Id: I23c12e804d63dc7dc18514f6efe71de1d1acbd6a
2015-11-24 15:58:28 -08:00
Marco Paniconi
e99e4a64e0
Merge "vp9 non-rd pickmode: Fix logic in reference masking."
2015-11-24 19:14:35 +00:00
Alex Converse
b84fa548fb
Merge "bitreader/writer: Change shift to signed"
2015-11-24 18:33:45 +00:00
Alex Converse
4b038ad2ef
Merge "Deduplicate some high bit depth tables"
2015-11-24 18:24:32 +00:00
Marco
eb43c8ebfc
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
2015-11-24 10:10:03 -08:00
Scott LaVarnway
b16a164c97
Merge "VPX: Removed unnecessary pmulhrsw in IDCT32X32_34"
2015-11-23 23:37:13 +00:00
Scott LaVarnway
26eb806342
Merge "VP9: Only zero counts when !frame_parallel_decoding_mode (2)"
2015-11-23 23:36:46 +00:00
Scott LaVarnway
2c3b737af6
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
2015-11-23 14:42:15 -08:00
Marco
b0027b96ae
vp9-svc: Fix to allow setting qp-max/min per spatial and temporal layer.
...
Change-Id: Ic0ec32c1d7f7c08c9f956592dccbfd9060b1f624
2015-11-23 10:46:34 -08:00
Scott LaVarnway
97e6cc6198
VPX: Removed unnecessary pmulhrsw in IDCT32X32_34
...
and fixed macro name.
Change-Id: I306b98a2b4ec80b130ae80290b4cd9c7a5363311
2015-11-23 10:24:09 -08:00
James Zern
16eba81f69
Revert "Speed up h_predictor_4x4"
...
This reverts commit d76032ae87e535be5b924d9e88bbd67189380534.
breaks 32-bit builds
Change-Id: If6266ec2a405b5a21d615112f0f37e8a71193858
2015-11-20 22:25:29 -08:00
James Zern
073dc71cd0
Merge "Use Interlocked calls in win32 once() implementation."
2015-11-21 01:40:11 +00:00
James Zern
1b10753ad7
Merge "Speed up h_predictor_4x4"
2015-11-21 01:12:42 +00:00
Marco
131c1600a9
vp9 denoiser: Bias to last reference for temporal filter.
...
Change-Id: I6a360a12e8da8cdcb8a779647512591612d64f31
2015-11-20 15:38:32 -08:00
James Zern
60760f710f
fix vp9_satd_sse2
...
accumulate satd in 32-bits
+ add unit test
Change-Id: I6748183df3662ddb9d635f9641f9586f2fd38ad5
2015-11-20 14:35:46 -08:00