commit | bd28a7e0f5d5e1d217efa587af01ac00e9b11352 | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sun May 26 07:08:51 2024 +0000 |
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sun May 26 07:08:51 2024 +0000 |
tree | b0a0d1021b1a9ef765e000c679d42ca5b723b45b | |
parent | fb9272721fb8c617469291bb7419319effc9cd95 [diff] | |
parent | 9b19e2f92c8db2aabab8da7af73f63ab925ea054 [diff] |
Snap for 11878398 from 9b19e2f92c8db2aabab8da7af73f63ab925ea054 to busytown-mac-infra-release Change-Id: I05bea0059e2fe0c88d5dd2b1e53d9627a9fc4322
Provides an enums representing every pixel format and format modifier supported by DRM (as of kernel version 5.10.0).
A fourcc is four bytes of ascii representing some data format. This enum contains every fourcc representing a pixel format supported by DRM, the Linux Direct Rendering Manager.
To get the bytes of the fourcc representing the format, cast to u32
.
assert_eq!(DrmFourcc::Xrgb8888 as u32, 875713112);
To get the string form of the fourcc, use [DrmFourcc::string_form
].
assert_eq!(DrmFourcc::Xrgb8888.string_form(), "XR24");
We also provide a type for representing a fourcc/modifier pair
let format = DrmFormat { code: DrmFourcc::Xrgb8888, modifier: DrmModifier::Linear, };
The enums are autogenerated from the canonical list in the Linux source code.
std
: Enable functionality that requires the standard library. Enabled by defaultbuild_bindings
: Build the bindings based on the headers on your machine. Should not be necessary in most cases.