mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-05 10:10:41 +00:00
213f9fe8a7
In light of the upcoming VAAPI video decoder backend, add a VAAPI wrapper crate that exposes a safe Rust API for a subset of the VAAPI C code. This crate will be called from the VAAPI video decoder backend in order to decode frames. BUG=b:214478588 TEST=cargo build --features "video-decoder,vaapi" TEST=`cargo test -- --include-ignored` in `media/libva` passes on a device with Intel GPU and libva installed. Change-Id: I4afa96c49d045251827b97bd78faeba57575aedc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3422779 Reviewed-by: Alexandre Courbot <acourbot@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com> Commit-Queue: Alexandre Courbot <acourbot@chromium.org> Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
18 lines
577 B
Rust
18 lines
577 B
Rust
// Copyright 2022 The Chromium OS Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
fn main() {
|
|
// Skip installing dependencies when generating documents.
|
|
if std::env::var("CARGO_DOC").is_ok() {
|
|
return;
|
|
}
|
|
|
|
match pkg_config::probe_library("libva") {
|
|
Ok(_) => (),
|
|
Err(e) => panic!("Libva not found: {}", e),
|
|
};
|
|
|
|
println!("cargo:rustc-link-lib=dylib=va");
|
|
println!("cargo:rustc-link-lib=dylib=va-drm"); // for the vaGetDisplayDRM entrypoint
|
|
}
|