brintos

brintos / linux-shallow public Read only

0
0
Text · 2.0 KiB · 49f5a0f Raw
82 lines · plain
1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later2.. c:namespace:: V4L3 4.. _func-write:5 6************7V4L2 write()8************9 10Name11====12 13v4l2-write - Write to a V4L2 device14 15Synopsis16========17 18.. code-block:: c19 20    #include <unistd.h>21 22.. c:function:: ssize_t write( int fd, void *buf, size_t count )23 24Arguments25=========26 27``fd``28    File descriptor returned by :c:func:`open()`.29 30``buf``31     Buffer with data to be written32 33``count``34    Number of bytes at the buffer35 36Description37===========38 39:c:func:`write()` writes up to ``count`` bytes to the device40referenced by the file descriptor ``fd`` from the buffer starting at41``buf``. When the hardware outputs are not active yet, this function42enables them. When ``count`` is zero, :c:func:`write()` returns 043without any other effect.44 45When the application does not provide more data in time, the previous46video frame, raw VBI image, sliced VPS or WSS data is displayed again.47Sliced Teletext or Closed Caption data is not repeated, the driver48inserts a blank line instead.49 50Return Value51============52 53On success, the number of bytes written are returned. Zero indicates54nothing was written. On error, -1 is returned, and the ``errno``55variable is set appropriately. In this case the next write will start at56the beginning of a new frame. Possible error codes are:57 58EAGAIN59    Non-blocking I/O has been selected using the60    :ref:`O_NONBLOCK <func-open>` flag and no buffer space was61    available to write the data immediately.62 63EBADF64    ``fd`` is not a valid file descriptor or is not open for writing.65 66EBUSY67    The driver does not support multiple write streams and the device is68    already in use.69 70EFAULT71    ``buf`` references an inaccessible memory area.72 73EINTR74    The call was interrupted by a signal before any data was written.75 76EIO77    I/O error. This indicates some hardware problem.78 79EINVAL80    The :c:func:`write()` function is not supported by this driver,81    not on this device, or generally not on this type of device.82