Tags: rust-av/rav1e
Tags
Use SSE for cdef_dist blocks overlapping boundary
Use spatial weights when substituting SSE for cdef_dist.
AWCY results at default preset on subset1:
PSNR Y | PSNR Cb | PSNR Cr | CIEDE2000 | SSIM | MS-SSIM | PSNR-HVS Y
0.0045 | -0.2649 | -0.2223 | -0.0184 | -0.0241 | -0.0368 | -0.0103
PSNR-HVS Cb | PSNR-HVS Cr | PSNR-HVS | VMAF | VMAF-NEG
-0.2228 | -0.2664 | -0.0142 | -0.0725 | -0.0506
Use reduced precision in PDF sort This fixes an underflow bug triggered when the counter is larger than the previous value. Fixes xiph#2780. PSNR Y | PSNR Cb | PSNR Cr | CIEDE2000 | SSIM | MS-SSIM 0.0029 | 0.1181 | 0.0019 | 0.0017 | 0.0059 | 0.0158 PSNR-HVS Y | PSNR-HVS Cb | PSNR-HVS Cr | PSNR-HVS | VMAF | VMAF-NEG -0.0040 | 0.1020 | 0.0126 | -0.0006 | 0.0959 | 0.0822
Simplify `adaptive_scenecut` by not collecting into a Vec for `*_over… ( xiph#2797) * Simplify `adaptive_scenecut` by not collecting into a Vec for `*_over_tr` The variables `back_over_tr` and `forward_over_tr` (which have now been renamed to be suffixed with `_count`) were previously initialized by performing an allocation (through the use of `.collect_vec()`) of the filtered values, even though only the *length* of the `Vec` was actually used. We now get the length directly by using `.count()`, which does not perform any allocations, and allows the compiler to make use of SIMD instructions. Additionally, the previous code essentially did this (simplified for example): `x != 0 && x > 1` (where `x` is a `usize`). This has been simplified to just `x > 1`. * Further simplification Do not check if `back_over_tr_count` and `back_deque` are both greater than one, as just checking `back_over_tr_count` is sufficient
PreviousNext