rav2d: We ported an AV2 video decoder from C to Rust (opens in new tab)
Video decoders parse untrusted bitstreams from the internet — they are a prime target for memory corruption exploits. Historical CVEs in video decoders (libvpx, dav1d, ffmpeg) are overwhelmingly buffer overflows, use-after-free, and integer overflows in C parsing code. We completed rav2d — a full Rust port of dav2d, the AV2 video decoder. By the numbers 47,000+ lines of Rust across 47 source files 786 unit tests passing 100% of C decoder logic ported Assembly DSP kernels shared via FFI (not r...
Read the original article