xiph / rav1e

The fastest and safest AV1 encoder.
BSD 2-Clause "Simplified" License
3.73k stars 253 forks source link

crates.io release? #3312

Closed kornelski closed 10 months ago

kornelski commented 11 months ago

As usual, I ask you to make crates.io releases more often. The latest one was in May. The latest git has many important improvements, including a significant aarch64 perf boost.

lu-zero commented 11 months ago

We have plans already to do that, if you have spare cycles to run https://github.com/lu-zero/speed-levels-rs we'd use that to decide if we have room to retune the speedlevels.

kornelski commented 11 months ago

For encoding of AVIF images I use my own presets: https://github.com/kornelski/cavif-rs/blob/main/ravif/src/av1encoder.rs#L466

and I have my own (not public yet) tool for judging speed/quality trade-offs across multiple codecs.

I've checked rav1e on M3 with these tools. The speedup affects all levels linearly, but the speed difference between the individual levels is much greater (exponential) for the speedup to make a difference. For example, my slowest test encoding dropped from 33s to 22s, but the next faster level dropped from 10s to 7s, so there's still no shift across the levels despite the big change.

I also didn't observe change in ranking relative to libavif. I see sometimes rav1e winning, sometimes libavif, but it depends much more on image content than just the speed preset (either one codec wins at every comparable speed, or the other wins at every speed). So the speed boost is probably not enough to overcome differences in other factors (feature set or maybe precision?)

barrbrain commented 10 months ago

https://crates.io/crates/rav1e/0.7.0 - Happy New Year One late change to try to make speed 0 less of an outlier: https://docs.rs/rav1e/0.7.0/rav1e/prelude/config/enum.SegmentationLevel.html#variant.Complex