Lines Matching full:buffer
10 A buffer contains data exchanged by application and driver using one of
12 planes, while the buffer structure acts as a container for the planes.
27 ``V4L2_BUF_FLAG_TSTAMP_SRC_MASK`` in :ref:`buffer-flags`. These flags
34 flags are copied from the OUTPUT video buffer to the CAPTURE video
35 buffer.
40 V4L2 exposes parameters that influence the buffer size, or the way data is
41 laid out in the buffer. Those parameters are exposed through both formats and
43 that modifies the direction in which pixels are stored in the buffer, as well
44 as the buffer size when the selected format includes padding at the end of
47 The set of information needed to interpret the content of a buffer (e.g. the
49 collectively referred to in the rest of this section as the buffer layout.
51 Controls that can modify the buffer layout shall set the
54 Modifying formats or controls that influence the buffer size or layout require
69 selection rectangles. When those ioctls result in a buffer size or layout
73 Controls that only influence the buffer layout can be modified at any time
74 when the stream is stopped. As they don't influence the buffer size, no
75 special handling is needed to synchronize those controls with buffer
79 Formats and controls that influence the buffer size interact with buffer
99 value into account to compute the buffer size to allocate. Applications can
111 influences the buffer size while buffers are allocated shall cause the format
113 buffer too small for the current format or controls shall cause the
116 Buffer reallocation is an expensive operation. To avoid that cost, drivers can
117 (and are encouraged to) allow format or controls that influence the buffer
132 allowed to return a ``EBUSY`` error from these ioctls if any buffer is
136 :c:func:`VIDIOC_QBUF` ioctl if the buffer being queued is too small for the
140 Userspace applications can query the buffer size required for a given format
143 buffer size.
171 - Number of the buffer, set by the application except when calling
180 - Type of the buffer, same as struct
186 - The number of bytes occupied by the data in the buffer. It depends
187 on the negotiated data format and may change with each buffer for
195 - Flags set by the application or driver, see :ref:`buffer-flags`.
198 - Indicates the field order of the image in the buffer, see
199 :c:type:`v4l2_field`. This field is not used when the buffer
207 :ref:`buffer-flags`. For output streams the driver stores the
233 free buffer space. A repeated frame was displayed again by an
254 ``V4L2_MEMORY_MMAP`` this is the offset of the buffer from the
262 ``V4L2_MEMORY_USERPTR`` this is a pointer to the buffer (casted to
275 a DMABUF buffer.
280 - Size of the buffer (not the payload) in bytes for the
293 - The file descriptor of the request to queue the buffer to. If the flag
294 ``V4L2_BUF_FLAG_REQUEST_FD`` is set, then the buffer will be
359 this is a file descriptor associated with a DMABUF buffer, similar
396 - Buffer of a single-planar video capture stream, see
400 - Buffer of a multi-planar video capture stream, see
404 - Buffer of a single-planar video output stream, see
408 - Buffer of a multi-planar video output stream, see :ref:`output`.
411 - Buffer for video overlay, see :ref:`overlay`.
414 - Buffer of a raw VBI capture stream, see :ref:`raw-vbi`.
417 - Buffer of a raw VBI output stream, see :ref:`raw-vbi`.
420 - Buffer of a sliced VBI capture stream, see :ref:`sliced`.
423 - Buffer of a sliced VBI output stream, see :ref:`sliced`.
426 - Buffer for video output overlay (OSD), see :ref:`osd`.
429 - Buffer for Software Defined Radio (SDR) capture stream, see
433 - Buffer for Software Defined Radio (SDR) output stream, see
437 - Buffer for metadata capture, see :ref:`metadata`.
440 - Buffer for metadata output, see :ref:`metadata`.
445 Buffer Flags
465 - The buffer resides in device memory and has been mapped into the
476 - Internally drivers maintain two buffer queues, an incoming and
477 outgoing queue. When this flag is set, the buffer is currently on
479 after the buffer has been filled (capture devices) or displayed
488 - When this flag is set, the buffer is currently on the outgoing
492 cleared. Of course a buffer cannot be on both queues at the same
495 buffer is in "dequeued" state, in the application domain so to
501 - When this flag is set, the buffer has been dequeued successfully,
503 streaming may continue as normal and the buffer may be reused
510 - This buffer is part of a request that hasn't been queued yet.
516 ioctl. It may be set by video capture devices when the buffer
550 - The buffer has been prepared for I/O and can be queued by the
560 - Caches do not have to be invalidated for this buffer. Typically
562 buffer is not going to be touched by the CPU, instead the buffer
572 - Caches do not have to be cleaned for this buffer. Typically
574 this buffer has not been created by the CPU but by some
586 Applications can set this flag when queueing the output buffer
587 to prevent the driver from dequeueing the capture buffer after
588 the output buffer has been decoded (i.e. the capture buffer is
589 'held'). If the timestamp of this output buffer differs from that
590 of the previous output buffer, then that indicates the start of a
591 new frame and the previously held capture buffer is dequeued.
596 - Last buffer produced by the hardware. mem2mem codec drivers set
597 this flag on the capture queue for the last buffer when the
600 hardware limitations, the last buffer may be empty. In this case
616 and operation with buffer flags and timestamp mask.
632 - The buffer timestamp has been taken from the ``CLOCK_MONOTONIC``
639 - The CAPTURE buffer timestamp has been taken from the corresponding
640 OUTPUT buffer. This flag applies only to mem2mem devices.
656 - End Of Frame. The buffer timestamp has been taken when the last
666 - Start Of Exposure. The buffer timestamp has been taken when the
668 ``V4L2_BUF_TYPE_VIDEO_CAPTURE`` buffer type.
686 - The buffer is used for :ref:`memory mapping <mmap>` I/O.
689 - The buffer is used for :ref:`user pointer <userp>` I/O.
695 - The buffer is used for :ref:`DMA shared buffer <dmabuf>` I/O.