Merge tag 'csky-for-linus-4.20-fixup-dtb' of https://github.com/c-sky/csky-linux
[linux-block.git] / Documentation / media / uapi / v4l / pixfmt-compressed.rst
CommitLineData
5377d91f
MH
1.. -*- coding: utf-8; mode: rst -*-
2
3******************
4Compressed Formats
5******************
6
7
8.. _compressed-formats:
9
5bd4bb78
MCC
10.. tabularcolumns:: |p{6.6cm}|p{2.2cm}|p{8.7cm}|
11
5377d91f
MH
12.. flat-table:: Compressed Image Formats
13 :header-rows: 1
14 :stub-columns: 0
15 :widths: 3 1 4
16
c2b66caf
LP
17 * - Identifier
18 - Code
19 - Details
20 * .. _V4L2-PIX-FMT-JPEG:
21
22 - ``V4L2_PIX_FMT_JPEG``
23 - 'JPEG'
24 - TBD. See also :ref:`VIDIOC_G_JPEGCOMP <VIDIOC_G_JPEGCOMP>`,
25 :ref:`VIDIOC_S_JPEGCOMP <VIDIOC_G_JPEGCOMP>`.
26 * .. _V4L2-PIX-FMT-MPEG:
27
28 - ``V4L2_PIX_FMT_MPEG``
29 - 'MPEG'
30 - MPEG multiplexed stream. The actual format is determined by
31 extended control ``V4L2_CID_MPEG_STREAM_TYPE``, see
32 :ref:`mpeg-control-id`.
33 * .. _V4L2-PIX-FMT-H264:
34
35 - ``V4L2_PIX_FMT_H264``
36 - 'H264'
37 - H264 video elementary stream with start codes.
38 * .. _V4L2-PIX-FMT-H264-NO-SC:
39
40 - ``V4L2_PIX_FMT_H264_NO_SC``
41 - 'AVC1'
42 - H264 video elementary stream without start codes.
43 * .. _V4L2-PIX-FMT-H264-MVC:
44
45 - ``V4L2_PIX_FMT_H264_MVC``
46 - 'M264'
47 - H264 MVC video elementary stream.
48 * .. _V4L2-PIX-FMT-H263:
49
50 - ``V4L2_PIX_FMT_H263``
51 - 'H263'
52 - H263 video elementary stream.
53 * .. _V4L2-PIX-FMT-MPEG1:
54
55 - ``V4L2_PIX_FMT_MPEG1``
56 - 'MPG1'
57 - MPEG1 video elementary stream.
58 * .. _V4L2-PIX-FMT-MPEG2:
59
60 - ``V4L2_PIX_FMT_MPEG2``
61 - 'MPG2'
62 - MPEG2 video elementary stream.
c27bb30e
PK
63 * .. _V4L2-PIX-FMT-MPEG2-SLICE:
64
65 - ``V4L2_PIX_FMT_MPEG2_SLICE``
66 - 'MG2S'
67 - MPEG-2 parsed slice data, as extracted from the MPEG-2 bitstream.
68 This format is adapted for stateless video decoders that implement a
69 MPEG-2 pipeline (using the :ref:`codec` and :ref:`media-request-api`).
70 Metadata associated with the frame to decode is required to be passed
71 through the ``V4L2_CID_MPEG_VIDEO_MPEG2_SLICE_PARAMS`` control and
72 quantization matrices can optionally be specified through the
73 ``V4L2_CID_MPEG_VIDEO_MPEG2_QUANTIZATION`` control.
74 See the :ref:`associated Codec Control IDs <v4l2-mpeg-mpeg2>`.
75 Exactly one output and one capture buffer must be provided for use with
76 this pixel format. The output buffer must contain the appropriate number
77 of macroblocks to decode a full corresponding frame to the matching
78 capture buffer.
c2b66caf
LP
79 * .. _V4L2-PIX-FMT-MPEG4:
80
81 - ``V4L2_PIX_FMT_MPEG4``
82 - 'MPG4'
83 - MPEG4 video elementary stream.
84 * .. _V4L2-PIX-FMT-XVID:
85
86 - ``V4L2_PIX_FMT_XVID``
87 - 'XVID'
88 - Xvid video elementary stream.
89 * .. _V4L2-PIX-FMT-VC1-ANNEX-G:
90
91 - ``V4L2_PIX_FMT_VC1_ANNEX_G``
92 - 'VC1G'
93 - VC1, SMPTE 421M Annex G compliant stream.
94 * .. _V4L2-PIX-FMT-VC1-ANNEX-L:
95
96 - ``V4L2_PIX_FMT_VC1_ANNEX_L``
97 - 'VC1L'
98 - VC1, SMPTE 421M Annex L compliant stream.
99 * .. _V4L2-PIX-FMT-VP8:
100
101 - ``V4L2_PIX_FMT_VP8``
102 - 'VP80'
103 - VP8 video elementary stream.
988fcf0c
TL
104 * .. _V4L2-PIX-FMT-VP9:
105
106 - ``V4L2_PIX_FMT_VP9``
107 - 'VP90'
108 - VP9 video elementary stream.
49f60752
SM
109 * .. _V4L2-PIX-FMT-HEVC:
110
111 - ``V4L2_PIX_FMT_HEVC``
112 - 'HEVC'
113 - HEVC/H.265 video elementary stream.
62c3fce0
HV
114 * .. _V4L2-PIX-FMT-FWHT:
115
116 - ``V4L2_PIX_FMT_FWHT``
117 - 'FWHT'
118 - Video elementary stream using a codec based on the Fast Walsh Hadamard
119 Transform. This codec is implemented by the vicodec ('Virtual Codec')
21abebf0 120 driver. See the codec-fwht.h header for more details.