MCPcopy Create free account
hub / github.com/RustCV/RustCV / Frame

Class Frame

rustcv-core/src/frame.rs:10–38  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8/// 使用生命周期 'a 绑定到底层 Ring Buffer,实现零拷贝。
9#[derive(Debug)]
10pub struct Frame<'a> {
11 /// 原始图像数据切片
12 pub data: &'a [u8],
13
14 /// 图像宽度 (Pixels)
15 pub width: u32,
16
17 /// 图像高度 (Pixels)
18 pub height: u32,
19
20 /// 【关键】跨距/步长 (Bytes per line)
21 /// GPU 和 SIMD 往往要求 256/512 字节对齐,Stride 可能大于 width * bpp
22 pub stride: usize,
23
24 /// 像素格式 (含 Bayer, MJPEG 等)
25 pub format: PixelFormat,
26
27 /// 帧索引 (用于底层 Buffer 回收或丢帧统计)
28 pub sequence: u64,
29
30 /// 时间戳集合 (工业级同步核心)
31 pub timestamp: Timestamp,
32
33 /// 帧级元数据 (曝光、增益、GPIO状态)
34 pub metadata: FrameMetadata,
35
36 /// 内部句柄 (用于实现 Backend 特有的互操作,如 export_dmabuf)
37 pub backend_handle: &'a dyn BackendBufferHandle,
38}
39
40#[derive(Debug, Clone, Copy)]
41pub struct Timestamp {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected