Releases: xiph/rav1e
Releases · xiph/rav1e
Weekly pre-release
Improvements
- Faster, around 20% more compared to the last pre-release
- More assembly optimizations from dav1d, mainly impacting AArch64
- Forward transform SIMD, to be accounted for the largest part of this week speedup
- Simplifications and refactoring in the Motion Estimation and Scene Change
- Optional serialization/deserialization of the encoding parameters through the feature
serialize
- Optional cli advanced commands to use it.
- The builds are now using the
dwarf
debug format for the targets that support it, before it was a mixture ofdwarf
andstabs
due to the nasm defaults.
Changes
- Segmentation support is now a tunable SpeedSetting and currently it is default off since it can produce desyncs.
Fixes
- #1903 - edge-of-frame miscomputation
- #1858 - desync on speed 0 and 1 when certain quantizers are selected
Known issues
- #1930 - segmentation encoding may cause desync
Weekly pre-release
Improvements
- Slightly faster.
- 60%-80% reduction in the resident set depending on the number of tiles in use. Now the resident set is nearly independent from the number of tiles in use.
Changes
- The CI now uses Github Actions
- The tags will be
p${isodate}
for prereleases andv{semver}
for releases.
Fixes
- Relax the y4m memory limit, now 8k content can be encoded again.
Known issues
Weekly pre-release
Improvements
- Faster (9.5% on 1080p content with 8 tiles).
- More Aarch64 assembly support
rdo-lookahead-frames
CLI option
Changes
- mp4 output removed to avoid circular dependencies.
Fixes
- Unbreak the desync_finder feature
Known issues
- #1858 `Tune PSNR may cause desyncs on 4k content"
Weekly pre-release
Improvements
- Faster (21-26% on 1080p content with 8 tiles).
- Tracing support via hawktracer
- Basic in-bitstream timing info support
- ASM building is parallel now.
Changes
- CDEF damping is adjusted based on quantizer
Fixes
- Builds cleanly on rust
1.40
Docs.rs
generation is working
Known issues
- #1858 `Tune PSNR may cause desyncs on 4k content"
v0.1.0: Made in Tokyo
First official release, published during the Video Dev Days 2019 in Tokyo.
Features
- Intra and inter frames
- 64x64 superblocks
- 4x4 to 64x64 RDO-selected square and 2:1/1:2 rectangular blocks
- DC, H, V, Paeth, smooth, and a subset of directional prediction modes
- DCT, (FLIP-)ADST and identity transforms (up to 64x64, 16x16 and 32x32 respectively)
- 8-, 10- and 12-bit depth color
- 4:2:0 (full support), 4:2:2 and 4:4:4 (limited) chroma sampling
- 11 speed settings (0-10)
- Near real-time encoding at high speed levels
- Rate control (single-pass and two-pass)
- Temporal RDO
- Scene cut detection
- CLI tool and C API
Weekly pre-release
Improvements
- More x86 assembly from dav1d
- Validate the frame size to reject impossibly small frames.
- Initial SSE4.1 support
Changes
- serde is now optional
- the fastrdo training feature is optional as well.
Fixes
- CDEF RDO could infiniloop in certain occasions.
Weekly pre-release
Improvements
- SSSE3 support
- Aarch64 neon support
- FlipADST
- Additional asm tests (CDEF, Inverse transform).
- Make sure all the dependencies are using the same version of
syn
, reducing the overall build time.
Changes
- The
nasm
feature had been renamedasm
.
Fixes
- Unbreak C-API building on rust 1.38 and later.
Weekly pre-release
Improvements
- More API documentation
- Better error reporting
- Nicer error messages in the cli application
- Explicit validation of the encoder configuration
- The input Frame type can be expressed
- Added
cargo-fuzz
support and documented its usage - Better rate-control support
- Two-pass rate-control support
- Additional speedups over all the speed levels on x86_64
Changes
- Tiles are now expressed in linear units (before were log2-units)
- The for color config enum variants now use the AV1 spec names
- The C-API is now part of the main repo, use cargo-c to build it
send_frame
can consume bareFrame
s- Speed preset overhaul and rebalance
Fixes
- Invalid encoder settings, that would trigger panics on execution, are now caught on validation phase.
- Desync caused by a discrepancy of what would be the tile dimension and the loop restoration filter dimension when using certain tile sizes.
Weekly pre-release
New features
Bugfixes
- Unbreak building on
non-x86
- Make sure
avx2
code is not called if onlyavx
is present
API Changes
set_limit()
has been dropped. Useflush()
instead.
Internals
- More coding lint enabled
- Additional speedups
- More documentation added
Weekly pre-release
New features:
- Enabled assembly for Windows x86_64 builds.
- Speed-ups in Motion Estimation, with new x86/x86_64 simd optimizations.
- Diamond Search in motion estimation.
- RDO Speedups
Bugfixes:
- Fix the memory allocation alignment issues found on windows x86_64.
- Fix
container_sequence_header()
- Additional fixes to the 422 codepaths.
- More smaller and larger bugfixes
API Changes:
- Large simplification: now it is possible to encode by using only
send_frame()
andreceive_packet()
. - Update and document EncoderStatus variants.
Internal changes:
- Lots of refactoring to prepare for new features (tile support, tile and segment threading)
- Improvements to debug builds and tests to accelerate development
- Additional tests