brintos

brintos / linux-shallow public Read only

0
0
Text · 1.3 KiB · 806cbfd Raw
35 lines · plain
1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later2.. c:namespace:: V4L3 4.. _streaming-par:5 6********************7Streaming Parameters8********************9 10Streaming parameters are intended to optimize the video capture process11as well as I/O. Presently applications can request a high quality12capture mode with the :ref:`VIDIOC_S_PARM <VIDIOC_G_PARM>` ioctl.13 14The current video standard determines a nominal number of frames per15second. If less than this number of frames is to be captured or output,16applications can request frame skipping or duplicating on the driver17side. This is especially useful when using the18:c:func:`read()` or :c:func:`write()`, which are19not augmented by timestamps or sequence counters, and to avoid20unnecessary data copying.21 22Finally these ioctls can be used to determine the number of buffers used23internally by a driver in read/write mode. For implications see the24section discussing the :c:func:`read()` function.25 26To get and set the streaming parameters applications call the27:ref:`VIDIOC_G_PARM <VIDIOC_G_PARM>` and28:ref:`VIDIOC_S_PARM <VIDIOC_G_PARM>` ioctl, respectively. They take29a pointer to a struct :c:type:`v4l2_streamparm`, which30contains a union holding separate parameters for input and output31devices.32 33These ioctls are optional, drivers need not implement them. If so, they34return the ``EINVAL`` error code.35