Skip to content

Releases: xiph/rav1e

Weekly pre-release

18 May 01:27

Choose a tag to compare

Weekly pre-release Pre-release
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.

yuv-ms-ssim-611-crowd_run
yuv-ms-ssim-611-mordor_gameplay
yuv-ms-ssim-611-townday

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.

subjective-chilli_pepper_10sec
subjective-crowd_run_10sec
subjective-tractor_10sec

Weekly pre-release

11 May 21:29

Choose a tag to compare

Weekly pre-release Pre-release
Pre-release
p20210511

Fix current clippy lints

Weekly pre-release

04 May 21:30
f54b23b

Choose a tag to compare

Weekly pre-release Pre-release
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

27 Apr 21:31
b91f83f

Choose a tag to compare

Weekly pre-release Pre-release
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

20 Apr 21:31

Choose a tag to compare

Weekly pre-release Pre-release
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

13 Apr 21:34

Choose a tag to compare

Weekly pre-release Pre-release
Pre-release
p20210413

CI: Update to libaom3 for both travis and GitHub Actions

Weekly pre-release

06 Apr 21:32

Choose a tag to compare

Weekly pre-release Pre-release
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

31 Mar 22:52

Choose a tag to compare

  • Avoid a crash for 1pixel videos
  • Make write_color_config() spec compliant
  • Fix an intermittent test failure
  • Make sure Intel AVX512 support works
  • Update v_frame to 0.2.1

Weekly pre-release

30 Mar 21:31

Choose a tag to compare

Weekly pre-release Pre-release
Pre-release
Change the alignment to 512

Fixes #2705.

Weekly pre-release

23 Mar 21:30

Choose a tag to compare

Weekly pre-release Pre-release
Pre-release
p20210323

Move the tiling info logging outside the internals