Age | Commit message (Collapse) | Author |
|
When referencing RTCD functions make sure the relevant
header file is included.
Change-Id: Ia0d7112d4aff9b4d8fa94648f0702371b7484031
https://code.google.com/p/webm/issues/detail?id=937
|
|
Prevent out of bounds access when attempting to increase frame size
Change-Id: I710c40c692802a72963c9680c2125da17f9060a9
|
|
Added unittest that triggers the crash without this fix.
Issue: https://code.google.com/p/webm/issues/detail?id=911
Change-Id: If5208ceb210c821891675fdf3d9951ab83d52ae6
|
|
Cast away remaining issues so that new ones don't get lost in the noise.
Change-Id: Iacd6999b0686ce80f9835730d68db6382690fa92
|
|
Change-Id: Icc7a816491897107764e4c936288e9000e6319b8
|
|
By using 0xff for a short it was not setting the high bits. When
comparing the output with vtst to find non-zero elements it was skipping
vaules which had no low bits set such as -512 / 0xFE00.
Using -8191 as the first element of coeff will generate this condition.
BUG=883
Change-Id: Ia1e10fb809d1e7866f28c56769fe703e6231a657
|
|
The obj_int_extract code is no longer worth maintaining. It creates
significant issues when adapting for different build systems and no
longer offers as significant of a performance benefit due to
improvements in intrinsics.
Source files will remain until the various third-party builds are updated.
The neon fast quantizer has been moved to intrinsics. The armv6 version
has been removed because so few remaining targets require it.
Compilers and processors have improved significantly since the
pack_tokens code was written. The assembly is no longer faster than the
C code.
pack_tokens were the only optimizations for the armv5te targets so the targets
will be removed after the test infrastructure has been updated.
BUG=710
Change-Id: Ic785b167cd9f95eeff31c7c76b7b736c07fb30eb
|
|
|
|
|
|
Check that the numerator is not zero. If it is, guess 30fps.
Fixes a clang IOC error in the quantize test. It's very unlikely for
this to occur in the wild because the setup in the quantize test is very
nonstandard.
Change-Id: Icdab7b81d4e168d3423e14db20787f960052e0c3
|
|
The intrinsics version of the pair quant is slower than running it
individually.
Change-Id: I7b4ea8599d4aab04be0a5a0c59b8b29a7fc283f4
|
|
Use intrinsics for neon quantization. Slight loss (<5%) of performance
compared to the assembly. Roughly 10x faster on arm64 because that was
running C code before.
Change-Id: I7cf5242d8f29b7eab5bca6a1c20c89c9fc9ca66d
|
|
-Use full bandwidth (when temporal layers is on) for checking switching.
-Normalize metric wrt num_blocks.
-Rounding fix to update of average noise level metric.
-Make default internal denoiser mode == kDenoiserOnYUV (in denoiser set_parameters()).
-Adjust some thresholds.
Change-Id: Ib827512b25a7bf1f66c76d3045f3a68ce56b1cd2
|
|
|
|
denoiser_sse2.c: fix typos in comment.
Change-Id: Ic0fb102331b0e533c058da3cab1fbc30de9a0070
|
|
Avoid unneeded computation of mse in process_denoise.
Change-Id: I3a538178f2d138750d0c38ea4dd05dbbc2b7df41
|
|
Fix to the noise level and bitrate threshold settings per resolution.
Change-Id: I25524b7f78afa1aeb76edef7be13c17bc8976508
|
|
And also fixes some style consistency issues.
Change-Id: I3dc6d44e17d2d6075dc9b02c4255a7395046c5e0
|
|
If the GOLDEN or ALTREF frame was last updated > x frames in the past,
don't use them for denoising (only consider LAST). Using an old reference
frame for denoising, e.g., if it is a long-term reference or the last key frame,
can cause some visible artifacts, in particular in the aggressive denoising mode.
Change-Id: I239c9fbb092c36cba7e95328f1fa67a58d6a7ed9
|
|
The version of gcc4.6 included with the Android NDK through r10b
fails to compile this function. Replace it with C code.
BUG=860
Change-Id: Ifcc0476664071aec46a171cdd5ad17305930986a
|
|
A left shift of negative value causes IOC runtime warnings, this
commit converts two such left shifts to multiply to avoid IOCs.
Change-Id: I8811428768d7135e6e16af4b3094d0341589a995
|
|
Allow for option to apply spatial blur for temporal
denoising, under the aggressive denoising mode.
Change-Id: I41c5fdc0b6cf32d8f8d1d4236b25fa5aa406e89e
|
|
Use the right return values - vadd_s64 returns int64x1_t, not
a normal int64_t.
Change-Id: Ife17213087c1dfb5faaa647f804d2fd140f3a0eb
|
|
Add vp8_mse16x16_neon.c
- vp8_mse16x16_neon
- vp8_get4x4sse_cs_neon
Change-Id: I108952f60a9ae50613f0ce3903c2c81df19d99d0
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
|
|
|
|
Change-Id: I4c35ed2de8b54751b69f4801454a1ccc35b500b0
|
|
This issue is found when the denoising mode is set to kDenoiserOnYUVAggressive.
Updated the C code to make it the same with SSE version.
I also changed several lines in VP9 denoiser for the code style.
Change-Id: I640d48cf946fe8c6a400e6e252107501d1e226d3
|
|
|
|
Add qp/bitrate condition, update some settings.
Change-Id: I1af0f102823a886393be063ad9d17d7564753cc7
|
|
Use generic C implementation instead of neon-specific code
Change-Id: Ib322b4ece9cdbd4de76a9eed3d2e9fd1d8542406
|
|
This function is called only when temporal denoising is enabled.
Change-Id: I25a036e3d628edd34410d6e6fe1f9e68a90a8e56
|
|
Parameter changes and modification to zero_last bias.
Change-Id: I50a408d47fde049c562bbe95075194cb0f17c31b
|
|
Change-Id: I7f3bc292b1b411e10586f0975143ae996ea78d1d
|
|
|
|
|
|
|
|
|
|
Change-Id: I6c1ccd88df7c39377d5f98f8533c0cabd53cf86f
|
|
Scale min_consec_zero_last wrt to #temporal layers,
and use full framerate as factor in noise metric.
Change-Id: Id0842b90164ce468d1236173c51965e7620c0e12
|
|
Add shortfdct_neon.c
- vp8_short_fdct4x4_neon
- vp8_short_fdct8x4_neon
Change-Id: I90152c803b484f5fab839473d632c50af0524e68
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
Add subtract_neon.c
- vp8_subtract_b_neon
- vp8_subtract_mby_neon
- vp8_subtract_mbuv_neon
Change-Id: If9a17a093478552e3e3276eeaa3f098b9021d08c
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
Add vp8_shortwalsh4x4_neon.c
- vp8_short_walsh4x4_neon
Change-Id: Ica5f584be608c9e636f62db14f563757e94be09b
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
Change-Id: Ic53b2fb69e6eee600ea222e4d06424a1bbca496c
|
|
|
|
On key frame, will always start with normal denoising mode,
but based on a computed noise metric (normalized mse on source diff)
may switch to aggressive mode (and back down again).
Change-Id: I20330b2dcf3056287be37223302b2cab5fc103eb
|
|
Modify zero_mv bias condition to include check that "closest" reference is last_frame.
This is needed for temporal layers, where the last_frame is not always the closest reference.
Also, constain zeromv_count to be for last_frame reference.
Change-Id: I7af54a809ebf01ef43b9933c9d4095b6cb189390
|
|
Exact fast quantize and inexact regular quantize are unused.
Change-Id: I5a81f5059c896c919f70038af7de04d63823d26d
|
|
|
|
Change-Id: Icb9918dd38d15061d62852e6a2d905e8ceb2c1ac
|