Releases: xiph/rav1e
Releases · xiph/rav1e
Weekly pre-release
p20210518
The rav1e-ch.exe binary is for testing the channel API which is not yet stabilized.
This binary requires a CPU with AVX2 and FMA.
* Remove redundant early validation checks in the C-API
* x86: Fix writes past the intended area in AVX2 fguv
* x86: Make asm file names more consistent
* Revert mc16_avx2 to a pristine state
* x86: Add high bitdepth put_bilin AVX2 asm
* x86: Add high bitdepth prep_bilin AVX2 asm
* x86: Add high bitdepth put_8tap/prep_8tap AVX2 asm
* x86: Add high bitdepth avg AVX2 asm
* x86: Add high bitdepth w_avg AVX2 asm
* x86: Add high bitdepth mask AVX2 asm
* x86: Add high bitdepth w_mask_420 AVX2 asm
* x86: Add high bitdepth w_mask_422 AVX2 asm
* x86: Add high bitdepth w_mask_444 AVX2 asm
* Enable HBD put_bilin and prep_bilin functions
* x86: Add improved high bitdepth wiener AVX2 asm
* x86: Add high bitdepth (10-bit) sgr AVX2 asm
* x86: Add high bitdepth ipred_dc AVX2 asm
* x86: Add high bitdepth ipred_{h,v} AVX2 asm
* x86: Add high bitdepth ipred_paeth AVX2 asm
* x86: Add high bitdepth ipred_smooth AVX2 asm
* x86: Add high bitdepth ipred_cfl_dc AVX2 asm
* x86: Add high bitdepth blend AVX2 asm
* Move the x86-specific warp filter ordering to asm
* x86: Add high bitdepth warp8x8 AVX2 asm
* x86: Add high bitdepth ipred_filter AVX2 asm
* x86: Add high bitdepth ipred_cfl_ac_420 AVX2 asm
* x86: Add high bitdepth ipred_cfl_ac_422 AVX2 asm
* x86: Add high bitdepth pal_pred AVX2 asm
* x86: Add high bitdepth ipred_z1 AVX2 asm
* x86: Add high bitdepth ipred_z3 AVX2 asm
* x86: Add high bitdepth ipred_z2 AVX2 asm
* x86: Add cdef_dir asm improvements
* x86: Add high bitdepth cdef AVX2 asm
* x86: Add high bitdepth loopfilter AVX2 asm
* x86: Add high bitdepth (10-bit) itx AVX2 asm
* x86: Add high bitdepth filmgrain AVX2 asm
* x86: add 10/12-bpc AVX2 version of mc.emu_edge
* Enable 10-bit inverse transform ASM
* Enable 10-bit intra prediction ASM
* Only write frame CDEF params when intrabc disabled.
* CI: Add rav1e-ch.exe binary to pre-release deployment
* Pull check for allowed intrabc out of write_lrf().
* Make the SceneChange stage constructor use the EncoderConfig directly
* Save the aspect ratio
* Handle smaller than intended frame set
* Wire in the current scenechange
Submitted to MSU Video Codecs Comparison 2021 Part 1: FullHD, objective, results for open source encoders below.
Submitted to MSU Video Codecs Comparison 2021 Part 2: Subjective. "There are nine Pareto-optimal encoders: S266, Aurora AV1, QAVS3, Tencent V265, VVenC, rav1e, SVT-HEVC, xin26x (HEVC), and SIF Codec." Results for these and the reference encoder below.
Weekly pre-release
p20210511 Fix current clippy lints
Weekly pre-release
Create new speed level 1, drop level 4 Drop speed level 4 which requires 14.69% greater encoding time than speed 5 for very marginal gains: PSNR Y | PSNR Cb | PSNR Cr | CIEDE2000 | SSIM | MS-SSIM | PSNR-HVS Y | PSNR-HVS Cb | PSNR-HVS Cr | PSNR-HVS | VMAF | VMAF-NEG 0.0187 | -0.1219 | -0.2468 | -0.0744 | 0.0048 | -0.0100 | 0.0146 | -0.0276 | -0.1719 | 0.0107 | 0.0978 | 0.0966 Insert a new speed level with twice the encoding time of the prior speed 1 but very significant efficiency gains: PSNR Y | PSNR Cb | PSNR Cr | CIEDE2000 | SSIM | MS-SSIM | PSNR-HVS Y | PSNR-HVS Cb | PSNR-HVS Cr | PSNR-HVS | VMAF | VMAF-NEG -3.3335 | -5.9477 | -6.2786 | -4.4695 | -3.4404 | -3.3753 | -3.3563 | -5.9527 | -6.7053 | -3.4610 | -3.4325 | -3.4850 Likewise, the prior speed 0 has more than twice the encoding time of this new level and significant efficiency gains: PSNR Y | PSNR Cb | PSNR Cr | CIEDE2000 | SSIM | MS-SSIM | PSNR-HVS Y | PSNR-HVS Cb | PSNR-HVS Cr | PSNR-HVS | VMAF | VMAF-NEG -2.0265 | 0.8643 | 0.3991 | -1.2325 | -1.4498 | -1.3123 | -2.0252 | 2.0639 | 1.0175 | -1.9425 | -2.4707 | -2.2548 The new speed level 1 is equivalent to speed 0 with simple segment selection rather than a full search.
Weekly pre-release
Reconfigure speed level 2 to be level 3 with bottom-up partitioning The average encoding time increase is approximately 5% on objective-1-fast: PSNR Y | PSNR Cb | PSNR Cr | CIEDE2000 | SSIM | MS-SSIM | PSNR-HVS Y | PSNR-HVS Cb | PSNR-HVS Cr | PSNR-HVS | VMAF | VMAF-NEG -1.4287 | 0.2338 | -0.0450 | -0.8039 | -1.3400 | -1.2139 | -1.5199 | 0.2588 | -0.0137 | -1.4722 | -1.2587 | -1.1720 Note that after this change we no longer have a speed level with both top-down partitioning and 4x4 partitions.
Weekly pre-release
Change the naming to be more user-friendly And report that parallel gop encoding is disabled for multi-pass rate control.
Weekly pre-release
p20210413 CI: Update to libaom3 for both travis and GitHub Actions
Weekly pre-release
Replace symbol_with_update macros by const generics After using compile-time generics instead of dyn dispatch for writers, the #[always(inline)] on symbol_with_update causes it to be inline for the long tail of larger CDF sizes. This results in larger binary size, for no speed benefit. Converting to const generics and removing inline preserves the specialization for smaller CDF sizes and reduces binary size by 40KiB on x86_64. The code is also more clear and concise.
v0.4.1
Weekly pre-release
Change the alignment to 512 Fixes #2705.
Weekly pre-release
p20210323 Move the tiling info logging outside the internals