Merge tag 'ntb-5.10' of git://github.com/jonmason/ntb
[linux-2.6-microblaze.git] / Documentation / userspace-api / media / v4l / pixfmt.rst
1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2
3 .. _pixfmt:
4
5 #############
6 Image Formats
7 #############
8 The V4L2 API was primarily designed for devices exchanging image data
9 with applications. The struct :c:type:`v4l2_pix_format` and
10 struct :c:type:`v4l2_pix_format_mplane` structures define the
11 format and layout of an image in memory. The former is used with the
12 single-planar API, while the latter is used with the multi-planar
13 version (see :ref:`planar-apis`). Image formats are negotiated with
14 the :ref:`VIDIOC_S_FMT <VIDIOC_G_FMT>` ioctl. (The explanations here
15 focus on video capturing and output, for overlay frame buffer formats
16 see 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