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

Function query_buffer

rustcv-camera/src/backend/linux/sys.rs:275–284  ·  view source on GitHub ↗

Query a single buffer's offset and length (VIDIOC_QUERYBUF). 查询单个缓冲区的偏移量和大小(VIDIOC_QUERYBUF)。 The returned `m.offset` and `length` are needed for `mmap()`. 返回的 `m.offset` 和 `length` 用于 `mmap()` 映射。

(fd: RawFd, index: u32)

Source from the content-addressed store, hash-verified

273/// The returned `m.offset` and `length` are needed for `mmap()`.
274/// 返回的 `m.offset` 和 `length` 用于 `mmap()` 映射。
275pub fn query_buffer(fd: RawFd, index: u32) -> io::Result<v4l2_buffer> {
276 let mut buf: v4l2_buffer = unsafe { std::mem::zeroed() };
277 buf.index = index;
278 buf.type_ = V4L2_BUF_TYPE_VIDEO_CAPTURE;
279 buf.memory = V4L2_MEMORY_MMAP;
280 unsafe {
281 v4l2_ioctl(fd, VIDIOC_QUERYBUF, &mut buf as *mut _ as *mut libc::c_void)?;
282 }
283 Ok(buf)
284}
285
286/// Enqueue a buffer — return it to the driver for filling (VIDIOC_QBUF).
287/// 将缓冲区入队 —— 归还给驱动以便其写入新数据(VIDIOC_QBUF)。

Callers 1

allocate_buffersMethod · 0.85

Calls 1

v4l2_ioctlFunction · 0.85

Tested by

no test coverage detected