Lines Matching refs:buffers

13 from the client to process these buffers.
51 the destination buffer queue; for decoders, the queue of buffers containing
52 decoded frames; for encoders, the queue of buffers containing an encoded
55 into ``CAPTURE`` buffers.
85 ``OUTPUT`` buffers must be queued by the client in decode order; for
86 encoders ``CAPTURE`` buffers must be returned by the encoder in decode order.
93 buffers must be queued by the client in display order; for decoders,
94 ``CAPTURE`` buffers must be returned by the decoder in display order.
118 the source buffer queue; for decoders, the queue of buffers containing
119 an encoded bytestream; for encoders, the queue of buffers containing raw
122 from ``OUTPUT`` buffers.
275 desired size of ``OUTPUT`` buffers; the decoder may adjust it to
284 adjusted size of ``OUTPUT`` buffers.
301 2. Allocate source (bytestream) buffers via :c:func:`VIDIOC_REQBUFS` on
307 requested number of buffers to allocate; greater than zero.
318 the actual number of buffers allocated.
322 The actual number of allocated buffers may differ from the ``count``
332 requested number of buffers to allocate; greater than zero.
346 adjusted to the number of allocated buffers.
350 The actual number of allocated buffers may differ from the ``count``
357 in the stream.** Continue queuing/dequeuing bytestream buffers to/from the
359 buffers will be processed and returned to the client in order, until
365 this to occur. Processing of the buffers will continue as long as more
407 destination buffers parsed/decoded from the bytestream.
572 than or equal to the size of currently allocated buffers,
574 * the number of buffers currently allocated is greater than or equal to the
575 minimum number of buffers acquired in previous steps. To fulfill this
577 buffers.
593 buffers on the ``CAPTURE`` queue until a buffer marked with the
605 9. **If the** ``CAPTURE`` **queue has buffers allocated,** free the ``CAPTURE``
606 buffers using :c:func:`VIDIOC_REQBUFS`.
619 10. Allocate ``CAPTURE`` buffers via :c:func:`VIDIOC_REQBUFS` on the
625 requested number of buffers to allocate; greater than zero.
636 actual number of buffers allocated.
640 The actual number of allocated buffers may differ from the ``count``
646 To allocate more than the minimum number of buffers (for pipeline
648 control to get the minimum number of buffers required, and pass the
649 obtained value plus the number of additional buffers needed in the
654 allocating buffers larger than the current ``CAPTURE`` format, future
660 requested number of buffers to allocate; greater than zero.
670 accommodated by newly allocated buffers.
675 adjusted to the number of allocated buffers.
679 The actual number of allocated buffers may differ from the ``count``
685 To allocate buffers for a format different than parsed from the stream
696 :c:func:`VIDIOC_CREATE_BUFS` in this step to allocate the buffers.
705 In this state, the client queues and dequeues buffers to both queues via
709 The content of the source ``OUTPUT`` buffers depends on the active coded pixel
720 and ``OUTPUT`` buffers and any specific timing of buffers becoming
723 * a buffer queued to ``OUTPUT`` may result in no buffers being produced
734 ``OUTPUT`` buffers, or be returned out of order, e.g. if display
737 * buffers may become available on the ``CAPTURE`` queue without additional
738 buffers queued to ``OUTPUT`` (e.g. during drain or ``EOS``), because of the
739 ``OUTPUT`` buffers queued in the past whose decoding results are only
744 To allow matching decoded ``CAPTURE`` buffers with ``OUTPUT`` buffers they
753 * one ``OUTPUT`` buffer generates multiple ``CAPTURE`` buffers: the same
754 ``OUTPUT`` timestamp will be copied to multiple ``CAPTURE`` buffers.
756 * multiple ``OUTPUT`` buffers generate one ``CAPTURE`` buffer: timestamp of
760 buffers are out-of-order compared to the ``OUTPUT`` buffers): ``CAPTURE``
765 The backing memory of ``CAPTURE`` buffers that are used as reference frames
782 ``CAPTURE`` buffers that originated from all the ``OUTPUT`` buffers processed
783 before the sequence started. Last of the buffers will have the
811 releasing all buffers and performing the Initialization sequence again.
828 * The decoder will drop all the pending ``OUTPUT`` buffers and they must be
838 * The decoder will start accepting new source bytestream buffers after the
841 3. Start queuing buffers containing coded data after the seek to the ``OUTPUT``
848 buffers will be processed and returned to the client until a suitable
850 should not produce any decoded frames into ``CAPTURE`` buffers.
868 corresponding buffers will be returned to the client with the
873 buffers containing decoded frames.
884 It is not specified when the ``CAPTURE`` queue starts producing buffers
885 containing decoded data from the ``OUTPUT`` buffers queued after the seek,
888 The decoder may return a number of remaining ``CAPTURE`` buffers containing
889 decoded frames originating from the ``OUTPUT`` buffers queued before the
893 ``OUTPUT`` buffers, which means that not all of the ``OUTPUT`` buffers
894 queued before the seek sequence may have matching ``CAPTURE`` buffers
906 buffers or use V4L2_DEC_CMD_STOP and V4L2_DEC_CMD_START to drain the
912 ``CAPTURE`` queue too to discard decoded, but not yet dequeued buffers.
934 * the minimum number of buffers needed for decoding,
950 2. The decoder will then process and decode all remaining buffers from before
964 Any attempt to dequeue more ``CAPTURE`` buffers beyond the buffer marked
995 buffers to/from the ``OUTPUT`` queue even while processing this sequence.
1000 To ensure that all queued ``OUTPUT`` buffers have been processed and related
1001 ``CAPTURE`` buffers are given to the client, the client must follow the drain
1003 received all decoded frames for all ``OUTPUT`` buffers queued before the
1027 2. Any ``OUTPUT`` buffers queued by the client before the
1032 * handling any operations triggered as a result of processing those buffers,
1036 * queuing and dequeuing ``CAPTURE`` buffers, until a buffer marked with the
1047 Any attempt to dequeue more ``CAPTURE`` buffers beyond the buffer
1051 * dequeuing processed ``OUTPUT`` buffers, until all the buffers queued
1063 3. Once all the ``OUTPUT`` buffers queued before the ``V4L2_DEC_CMD_STOP`` call
1066 buffers until the client issues any of the following operations:
1073 however any ``CAPTURE`` buffers still in the queue will be returned to the
1077 ``OUTPUT`` queue - any pending source buffers will be returned to the
1102 Setting formats and allocating buffers trigger changes in the behavior of the
1122 5. While buffers are allocated on any of the ``OUTPUT`` or ``CAPTURE`` queues,