pub struct HwDeviceInfo {
pub name: String,
pub driver_version: Option<String>,
pub api_version: Option<String>,
pub total_memory_bytes: Option<u64>,
pub extra: Vec<(String, String)>,
pub codecs: Vec<HwCodecCaps>,
}Expand description
A single hardware engine the backend can dispatch to. For NVIDIA / Vulkan / VA-API DRM, this is one entry per physical GPU. For VDPAU on a single-X11-display system, this is one entry per X screen. For VideoToolbox on Apple Silicon, this is one entry per SoC.
Fields§
§name: StringHuman-readable device name. e.g. “NVIDIA GeForce RTX 5080”, “Intel(R) UHD Graphics 770”, “Apple M3 Max Media Engine”.
driver_version: Option<String>Driver / runtime version, if reportable. e.g. “580.95.05”, “Mesa 24.2”, “VideoToolbox (system)”.
api_version: Option<String>API version the backend speaks. e.g. “CUDA 12.6”, “VDPAU API 1”, “Vulkan 1.4”, “VA-API 1.22”.
total_memory_bytes: Option<u64>On-card memory in bytes if known. Discrete GPUs report a real
figure; integrated and shared-memory engines usually report
None.
extra: Vec<(String, String)>Backend-specific extras keyed by string. e.g. for NVIDIA:
("compute_capability", "12.0"). CLI prints these as
key = value in a sub-block. Order is preserved.
codecs: Vec<HwCodecCaps>Per-codec capabilities for codecs this engine can decode and/or encode.
Trait Implementations§
Source§impl Clone for HwDeviceInfo
impl Clone for HwDeviceInfo
Source§fn clone(&self) -> HwDeviceInfo
fn clone(&self) -> HwDeviceInfo
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more