crosvm/media/libvda
Dennis Kempin 38d1ac5b1b Rebuild testvm and devcontainer
This uprevs both testvm and devcontainer and uploads new builds.
This will update them to the latest debian images and packages.

Some minor tweaks were made to satisfy the newer versions of
mdformat and python.

BUG=None
TEST=presubmit all --no-delta

Change-Id: I73e30aa1d9cefb5cf4ac117f513c2a98bf3c9ac5
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/5416093
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2024-06-11 22:24:48 +00:00
..
src
tests
bindgen.sh health-check: enforce blank line after copyright 2022-09-13 22:24:35 +00:00
build.rs
Cargo.toml
README.md

Libvda Rust wrapper

Note: This crate is specific to ChromeOS and requires the native libvda library at link time.

Rust wrapper for libvda. This library is used to enable communication with Chrome's GPU process to perform hardware accelerated decoding and encoding. It is currently in development to be used by crosvm's virtio-video device.

Building for the host environment

You can also execute cargo directly for faster build and tests. This would be useful when you are developing this crate. Since this crate depends on libvda.so, you need to install it to host environment first.

(chroot)$ sudo emerge chromeos-base/libvda        # Install libvda.so to host.
# Build
(chroot)$ cargo build
# Unit tests
(chroot)$ cargo test

Updating generated bindings

src/bindings.rs is automatically generated from libvda_common.h. src/decode/bindings.rs is automatically generated from libvda_decode.h. src/encode/bindings.rs is automatically generated from libvda_encode.h.

See the header of the bindings file for the generation command.