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

Function queue_buffer

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

Enqueue a buffer — return it to the driver for filling (VIDIOC_QBUF). 将缓冲区入队 —— 归还给驱动以便其写入新数据(VIDIOC_QBUF)。

(fd: RawFd, index: u32)

Source from the content-addressed store, hash-verified

286/// Enqueue a buffer — return it to the driver for filling (VIDIOC_QBUF).
287/// 将缓冲区入队 —— 归还给驱动以便其写入新数据(VIDIOC_QBUF)。
288pub fn queue_buffer(fd: RawFd, index: u32) -> io::Result<()> {
289 let mut buf: v4l2_buffer = unsafe { std::mem::zeroed() };
290 buf.index = index;
291 buf.type_ = V4L2_BUF_TYPE_VIDEO_CAPTURE;
292 buf.memory = V4L2_MEMORY_MMAP;
293 unsafe {
294 v4l2_ioctl(fd, VIDIOC_QBUF, &mut buf as *mut _ as *mut libc::c_void)?;
295 }
296 Ok(())
297}
298
299/// Dequeue a buffer — retrieve a filled buffer from the driver (VIDIOC_DQBUF).
300/// 将缓冲区出队 —— 从驱动取回已写满数据的缓冲区(VIDIOC_DQBUF)。

Callers 3

startMethod · 0.85
dequeueMethod · 0.85
queueMethod · 0.85

Calls 1

v4l2_ioctlFunction · 0.85

Tested by

no test coverage detected