https://github.com/rust-av/dav1d-rs
libdav1d rust bindings
https://github.com/rust-av/dav1d-rs
av1 bindings dav1d rust
Last synced: 5 months ago
JSON representation
libdav1d rust bindings
- Host: GitHub
- URL: https://github.com/rust-av/dav1d-rs
- Owner: rust-av
- License: mit
- Created: 2018-12-18T13:31:51.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2025-04-30T03:38:23.000Z (5 months ago)
- Last Synced: 2025-05-12T03:03:36.952Z (5 months ago)
- Topics: av1, bindings, dav1d, rust
- Language: Rust
- Size: 120 KB
- Stars: 46
- Watchers: 8
- Forks: 21
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# libdav1d bindings [](LICENSE) [](https://github.com/rust-av/dav1d-rs/actions)
It is a simple FFI binding and safe abstraction over [dav1d][1].
## Building
To build the code, always have a look at [CI](https://github.com/rust-av/dav1d-rs/blob/master/.github/workflows/dav1d.yml) to install the necessary dependencies on all
supported operating systems.### Overriding the dav1d library
The bindings use [system-deps](https://docs.rs/system-deps) to find dav1d. You may override the `PKG_CONFIG_PATH` or
direcly set the env vars `SYSTEM_DEPS_DAV1D_SEARCH_NATIVE` and/or `SYSTEM_DEPS_DAV1D_LIB`.## Building with vcpkg for Windows x64
To build with [vcpkg](https://vcpkg.io/en/index.html), you need to follow these
steps:1. Install `pkg-config` through [chocolatey](https://chocolatey.org/)
choco install pkgconfiglite
2. Install `dav1d`
vcpkg install dav1d:x64-windows
3. Add to the `PKG_CONFIG_PATH` environment variable the path `$VCPKG_INSTALLATION_ROOT\installed\x64-windows\lib\pkgconfig`
4. Build code
cargo build --workspace
To speed up the computation, you can build your packages only in `Release` mode
adding the `set(VCPKG_BUILD_TYPE release)` line to the
`$VCPKG_INSTALLATION_ROOT\triplets\x64-windows.cmake` file.Building for Windows x86 is the same, just replace `x64` with `x86` in the
steps above.## Supported versions
The bindings require dav1d>=1.3.0 ( Might not work for >1.5.0 )
## TODO
- [x] Simple bindings
- [x] Safe abstraction
- [ ] Examples[1]: https://code.videolan.org/videolan/dav1d