xref: /linux/Documentation/userspace-api/media/v4l/pixfmt.rst (revision cbecf716ca618fd44feda6bd9a64a8179d031fc5)
1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2
3.. _pixfmt:
4
5#############
6Image Formats
7#############
8The V4L2 API was primarily designed for devices exchanging image data
9with applications. The struct :c:type:`v4l2_pix_format` and
10struct :c:type:`v4l2_pix_format_mplane` structures define the
11format and layout of an image in memory. The former is used with the
12single-planar API, while the latter is used with the multi-planar
13version (see :ref:`planar-apis`). Image formats are negotiated with
14the :ref:`VIDIOC_S_FMT <VIDIOC_G_FMT>` ioctl. (The explanations here
15focus on video capturing and output, for overlay frame buffer formats
16see also :ref:`VIDIOC_G_FBUF <VIDIOC_G_FBUF>`.)
17
18
19.. toctree::
20    :maxdepth: 1
21
22    pixfmt-v4l2
23    pixfmt-v4l2-mplane
24    pixfmt-intro
25    pixfmt-indexed
26    pixfmt-rgb
27    pixfmt-bayer
28    yuv-formats
29    hsv-formats
30    depth-formats
31    pixfmt-compressed
32    sdr-formats
33    tch-formats
34    meta-formats
35    pixfmt-reserved
36    colorspaces
37    colorspaces-defs
38    colorspaces-details
39