Lines Matching full:buffers
12 from the client to process these buffers.
50 the destination buffer queue; for decoders, the queue of buffers containing
51 decoded frames; for encoders, the queue of buffers containing an encoded
54 into ``CAPTURE`` buffers.
84 ``OUTPUT`` buffers must be queued by the client in decode order; for
85 encoders ``CAPTURE`` buffers must be returned by the encoder in decode order.
92 buffers must be queued by the client in display order; for decoders,
93 ``CAPTURE`` buffers must be returned by the decoder in display order.
117 the source buffer queue; for decoders, the queue of buffers containing
118 an encoded bytestream; for encoders, the queue of buffers containing raw
121 from ``OUTPUT`` buffers.
274 desired size of ``OUTPUT`` buffers; the decoder may adjust it to
283 adjusted size of ``OUTPUT`` buffers.
300 2. Allocate source (bytestream) buffers via :c:func:`VIDIOC_REQBUFS` on
306 requested number of buffers to allocate; greater than zero.
317 the actual number of buffers allocated.
321 The actual number of allocated buffers may differ from the ``count``
331 requested number of buffers to allocate; greater than zero.
345 adjusted to the number of allocated buffers.
349 The actual number of allocated buffers may differ from the ``count``
356 in the stream.** Continue queuing/dequeuing bytestream buffers to/from the
358 buffers will be processed and returned to the client in order, until
364 this to occur. Processing of the buffers will continue as long as more
406 destination buffers parsed/decoded from the bytestream.
571 than or equal to the size of currently allocated buffers,
573 * the number of buffers currently allocated is greater than or equal to the
574 minimum number of buffers acquired in previous steps. To fulfill this
576 buffers.
592 buffers on the ``CAPTURE`` queue until a buffer marked with the
604 9. **If the** ``CAPTURE`` **queue has buffers allocated,** free the ``CAPTURE``
605 buffers using :c:func:`VIDIOC_REQBUFS`.
618 10. Allocate ``CAPTURE`` buffers via :c:func:`VIDIOC_REQBUFS` on the
624 requested number of buffers to allocate; greater than zero.
635 actual number of buffers allocated.
639 The actual number of allocated buffers may differ from the ``count``
645 To allocate more than the minimum number of buffers (for pipeline
647 control to get the minimum number of buffers required, and pass the
648 obtained value plus the number of additional buffers needed in the
653 allocating buffers larger than the current ``CAPTURE`` format, future
659 requested number of buffers to allocate; greater than zero.
669 accommodated by newly allocated buffers.
674 adjusted to the number of allocated buffers.
678 The actual number of allocated buffers may differ from the ``count``
684 To allocate buffers for a format different than parsed from the stream
695 :c:func:`VIDIOC_CREATE_BUFS` in this step to allocate the buffers.
704 In this state, the client queues and dequeues buffers to both queues via
708 The content of the source ``OUTPUT`` buffers depends on the active coded pixel
719 and ``OUTPUT`` buffers and any specific timing of buffers becoming
722 * a buffer queued to ``OUTPUT`` may result in no buffers being produced
733 ``OUTPUT`` buffers, or be returned out of order, e.g. if display
736 * buffers may become available on the ``CAPTURE`` queue without additional
737 buffers queued to ``OUTPUT`` (e.g. during drain or ``EOS``), because of the
738 ``OUTPUT`` buffers queued in the past whose decoding results are only
743 To allow matching decoded ``CAPTURE`` buffers with ``OUTPUT`` buffers they
752 * one ``OUTPUT`` buffer generates multiple ``CAPTURE`` buffers: the same
753 ``OUTPUT`` timestamp will be copied to multiple ``CAPTURE`` buffers.
755 * multiple ``OUTPUT`` buffers generate one ``CAPTURE`` buffer: timestamp of
759 buffers are out-of-order compared to the ``OUTPUT`` buffers): ``CAPTURE``
764 The backing memory of ``CAPTURE`` buffers that are used as reference frames
781 ``CAPTURE`` buffers that originated from all the ``OUTPUT`` buffers processed
782 before the sequence started. Last of the buffers will have the
810 releasing all buffers and performing the Initialization sequence again.
827 * The decoder will drop all the pending ``OUTPUT`` buffers and they must be
837 * The decoder will start accepting new source bytestream buffers after the
840 3. Start queuing buffers containing coded data after the seek to the ``OUTPUT``
847 buffers will be processed and returned to the client until a suitable
849 should not produce any decoded frames into ``CAPTURE`` buffers.
867 corresponding buffers will be returned to the client with the
872 buffers containing decoded frames.
883 It is not specified when the ``CAPTURE`` queue starts producing buffers
884 containing decoded data from the ``OUTPUT`` buffers queued after the seek,
887 The decoder may return a number of remaining ``CAPTURE`` buffers containing
888 decoded frames originating from the ``OUTPUT`` buffers queued before the
892 ``OUTPUT`` buffers, which means that not all of the ``OUTPUT`` buffers
893 queued before the seek sequence may have matching ``CAPTURE`` buffers
905 buffers or use V4L2_DEC_CMD_STOP and V4L2_DEC_CMD_START to drain the
911 ``CAPTURE`` queue too to discard decoded, but not yet dequeued buffers.
933 * the minimum number of buffers needed for decoding,
949 2. The decoder will then process and decode all remaining buffers from before
963 Any attempt to dequeue more ``CAPTURE`` buffers beyond the buffer marked
994 buffers to/from the ``OUTPUT`` queue even while processing this sequence.
999 To ensure that all queued ``OUTPUT`` buffers have been processed and related
1000 ``CAPTURE`` buffers are given to the client, the client must follow the drain
1002 received all decoded frames for all ``OUTPUT`` buffers queued before the
1026 2. Any ``OUTPUT`` buffers queued by the client before the
1031 * handling any operations triggered as a result of processing those buffers,
1035 * queuing and dequeuing ``CAPTURE`` buffers, until a buffer marked with the
1046 Any attempt to dequeue more ``CAPTURE`` buffers beyond the buffer
1050 * dequeuing processed ``OUTPUT`` buffers, until all the buffers queued
1062 3. Once all the ``OUTPUT`` buffers queued before the ``V4L2_DEC_CMD_STOP`` call
1065 buffers until the client issues any of the following operations:
1072 however any ``CAPTURE`` buffers still in the queue will be returned to the
1076 ``OUTPUT`` queue - any pending source buffers will be returned to the
1101 Setting formats and allocating buffers trigger changes in the behavior of the
1121 5. While buffers are allocated on any of the ``OUTPUT`` or ``CAPTURE`` queues,