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