The way they weave these instructions can be very hard to express with a high level language.
Further, there's a ton of work with arrays and importantly parts of arrays. They can, for example, need to extract every other element up to 1/2 the array. Unfortunately, rust has runtime array bounds checks which make writing that sort of code slower. The compiler can elade those checks, but usually only in simple cases.
The authors would be writing a bunch of unsafe rust to get the performance they want and rust makes that more painful on purpose.
I like rust, but C/ASM really is the right choice here. This is one of the few cases where rust's safety is a major detriment.
rav1d is not a full rewrite of dav1d to rust. So it really doesn't show that. It's currently C + rust + asm.
I don't think we can say anything about what this does or does not prove about the performance of safe code.
> Performance should not be priority #1. Security should be.
Entirely depends on the application. The reason rust has `unsafe` is because there's some situations where performance needs to preempt potential security problems.
Rust does not bring more performance. Just more safety.
Though more safety can in some cases bring a bit more performance. For instance, with Rust you can often avoid "defensive copies" of objects.
Forgive the ignorance, I have worked entirely in the abstracted layers of the stack, and mostly web.
If you can stand Lex Friedman for a bit, the VLC authors talk about why you use ASM for a video decoder instead of pure C or rust.
it's not much slower than the original C/ASM implementation (last i checked ~5%?) but that matters here
It does if you ask them, or at least research the topic at hand.
https://code.videolan.org/videolan/dav2d/-/blob/main/src/dat...
There is a project to write an AV1 decoder in Rust: Rav1d (really stretching the name here).
https://github.com/memorysafety/rav1d
They got within 5% of the performance of dav1d and held a contest to close the gap but I think I read somewhere that this wasn't achieved.
https://www.memorysafety.org/blog/rav1d-perf-bounty/
They claimed
> This is enough of a difference to be a problem for potential adopters, and, frankly, it just bothers us.
But in my opinion nobody actually cares about 5% in absolute terms. It's likely just Rust naysayers using that as an excuse.
I think the likely reason for dav2d using C is that they can reuse lots of code and infrastructure from dav1d. But I agree it would be much better if they worked on Rav2d instead (these names!). You can hardly complain about a 5% overhead if you're opting in to 5x more decoding complexity.
But now with AV2 and Dav2d, that completely breaks. Are we eventually going to get AV3/Dav3d and AV4/Dav4d, which will read like Ave/Daved and Ava/Davad? Seems a bit awkward. Was the idea from the start to have the 1 be the version number, and have it specifically be part of the name?
Tangent but I cannot wait for h269 (or h267 for the younger gen)
2av2furious?
Just “AV”
Next, AV Series 1 and 2 (released simultaneously)
Later, AV Edition but it costs $10,000
Young AV?
It's a semi-common last name.
AV1 was designed as royalty-free, but Sisvel’s pool and the recent Dolby/Snap proved the contrary.
https://accessadvance.com/2026/03/24/access-advance-licensor...
They're claiming that there are patents, but that doesn't mean there are.
Consumer Display Device: EUR 0.32
Consumer Non-Display Device: EUR 0.11
(source here: https://www.sisvel.com/licensing-programmes/audio-and-video-...)
Dolby is somewhat more interesting in that rather than scare tactics, media hype, and attempting to form a pool about it they are actually taking a patent assertion claim to court.
So they seem to be attempting to pull a fast one and use unproven claims to try and convert their competitor into a replacement revenue source.
It'll probably be a case of whoever has the best lawyers + contacts + persistence wins.
But it'll be interesting if discovery shows evidence they know they don't have a case and are trying it anyway. "Piercing the corporate veil" can theoretically be a consequence of that AFAIK.
I can claim the same and offer licenses per device.
Either go back read the answers there first, or I will assume you are part of a FUD campaign (yes, I know HN guidelines, but again every single AV2 news in the last week has seen the same rhetorical "questions" as top "comments").
Like we had weird examples like C compilers and Bun. This is a much more interesting example because its highly nontrivial.
AV1 exists, Dav1d exists. Lets see AI take the AV2 spec and Dav1d code and try to make a working high performance AV2 decoder.