commit | f587eceea53faad6bba92faa00bb9f97b1fc8374 | [log] [tgz] |
---|---|---|
author | Alexandre Courbot <acourbot@chromium.org> | Fri Jan 13 12:33:56 2023 +0900 |
committer | Alexandre Courbot <acourbot@chromium.org> | Fri Mar 31 12:57:25 2023 +0900 |
tree | f007e0eebf5d1e7414cb2f0bcc5ef616d8d0d05c | |
parent | 4b10548e8011b5bc7a531d83a8725823073d4850 [diff] |
media: cros-codecs: vaapi: move required data to GenericBackendHandle so it can clean itself up The destructor for BackendHandle had to take ownership of its GenericBackendHandle in its destructor in order to return the underlying surface to the surface pool. This means the handle had to be put behind an Option that is always valid, but requires us to perform unwrap()s when accessing it anyway. By delegating the surface return to GenericBackendHandle, we can avoid this Option and thus make the code a bit more sound. BUG=b:214478588 TEST=cargo test --features vaapi -p cros-codecs Change-Id: I590172b69decac3250bb9e85a67d959b1eca83f8 Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4164543 Commit-Queue: Alexandre Courbot <acourbot@chromium.org> Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
A lightweight, simple, low-dependencies, and hopefully safe crate for using hardware-accelerated decoding and encoding on Linux.
It is developed for use in ChromeOS (particularly crosvm), but has no ChromeOS dependencies and should this be usable anywhere.
This crate is still under heavy development. Currently implemented features are:
Future features: