Skip to content

memorysafety/rav1d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

df1f7b8 · Mar 17, 2024
Mar 15, 2024
May 5, 2022
Apr 10, 2023
Mar 11, 2024
Apr 10, 2023
Mar 17, 2024
Jan 25, 2024
Mar 1, 2024
Nov 3, 2023
Sep 9, 2022
Aug 22, 2020
Mar 1, 2019
Jan 12, 2024
Jan 12, 2024
Mar 15, 2022
Mar 6, 2023
Feb 19, 2022
Nov 11, 2023
Sep 9, 2022
Feb 14, 2024
Jan 31, 2023
Jul 14, 2023
Aug 31, 2023
Sep 9, 2023
Nov 16, 2023

Repository files navigation

rav1d

rav1d is an AV1 cross-platform decoder, open-source, and focused on speed and correctness. It is a Rust port of dav1d.

rav1d is currently experimental. Core functionality has been transpiled using c2rust, but not everything has been ported yet and the transpiled code needs to be cleaned up from unsafe transpiled Rust to safe, idiomatic Rust.

Running Tests

Currently we use the original Meson test suite for testing the Rust port. To setup and run these tests, do the following:

First, build the Rust project using Cargo. You'll need to do this step manually before running any tests because it is not built automatically when tests are run. Note that you need to build with the --release flag, as tests are run against the release binary.

cargo build --release

Then create the build dir and run meson setup in it:

mkdir build
cd build
meson setup ..

Then you can run meson test to run the tests. Currently only the testdata-* suites are setup to test against the Rust executable:

meson test \
  --suite testdata-8 \
  --suite testdata-10 \
  --suite testdata-12 \
  --suite testdata-multi