Page MenuHomeSolus

Update rav1e to 0.4.0
ClosedPublic

Authored by aleksvor on Wed, Jan 13, 3:25 PM.

Details

Summary

Summarized changelog:

  • Improvements:
    • Enable open partitions on frame boundaries (2% improvement to coding efficiency).
    • Enable deblocking in loop filter rate-distortion optimization (0.5% to 1.5% improvement to coding efficiency).
    • Add monochrome support.
    • Improve 4:2:2 support (37% reduction in encoding time, 0.8% to 5% improvement to coding efficiency).
    • Support arbitrary-SAR anamorphic video.
    • Enforce a frame limit of 1 in still picture mode.
    • Update non-broken motion estimation predictors (0.28% improvement to coding efficiency).
    • Substantially rework initial motion estimation (9% reduction in encoding time).
    • Optimise predictors for multipass motion estimation (0.3% to 0.4% improvement to coding efficiency).
    • Optimize chroma quantizer offsets for 4:4:4 sampling.
    • Merge new dav1d assembly code for x86.
    • Add high bit depth AVX2 assembly (9% to 31% reduction in encoding time for 10-bit video).
  • Bug fixes:
    • Fix intra edge filter desyncs with 4:2:2 and 4:4:4 input.
    • Fix loop restoration filter with 4:2:2 and 4:4:4 input.
    • Avoid a buffer underflow condition in CDEF pad_into_tmp16().
    • Properly validate minimum RDO lookahead frames value.
  • Changes:
    • Update speed presets:
      • Enable full SGR search for levels 0-4 instead of 0-8.
      • Enable fine directional prediction for all speed levels.
      • Enable reduced transform type search for levels 6-10 instead of 5-10.
      • Disable transform type RDO for inter frames.
    • Refactor CDEF to allow easier importation of dav1d CDEF assembly, as well as simplifying interaction between loop filters.
    • Remove leftover code ported from libaom.
    • Remove unused diamond motion estimation.

Full changelog here.

Test Plan

Transcoded H264 video to AV1 with FFmpeg and librav1e. Checked metadata in MediaInfo and tested playback in mpv and VLC.

Diff Detail

Repository
R5010 rav1e
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

aleksvor created this revision.Wed, Jan 13, 3:25 PM
aleksvor requested review of this revision.Wed, Jan 13, 3:25 PM
aleksvor edited the test plan for this revision. (Show Details)Wed, Jan 13, 3:27 PM
JoshStrobl accepted this revision.Thu, Jan 14, 8:52 PM
JoshStrobl added a subscriber: JoshStrobl.

Improve 4:2:2 support (37% reduction in encoding time, 0.8% to 5% improvement to coding efficiency).

Very nice!

This revision is now accepted and ready to land.Thu, Jan 14, 8:52 PM
This revision was automatically updated to reflect the committed changes.