diff options
-rw-r--r-- | Documentation/DocBook/v4l/videodev2.h.xml | 1104 |
1 files changed, 552 insertions, 552 deletions
diff --git a/Documentation/DocBook/v4l/videodev2.h.xml b/Documentation/DocBook/v4l/videodev2.h.xml index 228277bf9f10..033ecd2a14f9 100644 --- a/Documentation/DocBook/v4l/videodev2.h.xml +++ b/Documentation/DocBook/v4l/videodev2.h.xml | |||
@@ -99,148 +99,148 @@ | |||
99 | 99 | ||
100 | /* Four-character-code (FOURCC) */ | 100 | /* Four-character-code (FOURCC) */ |
101 | #define v4l2_fourcc(a, b, c, d)\ | 101 | #define v4l2_fourcc(a, b, c, d)\ |
102 | ((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) | ((__u32)(d) << 24)) | 102 | ((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) | ((__u32)(d) << 24)) |
103 | 103 | ||
104 | /* | 104 | /* |
105 | * E N U M S | 105 | * E N U M S |
106 | */ | 106 | */ |
107 | enum <link linkend="v4l2-field">v4l2_field</link> { | 107 | enum <link linkend="v4l2-field">v4l2_field</link> { |
108 | V4L2_FIELD_ANY = 0, /* driver can choose from none, | 108 | V4L2_FIELD_ANY = 0, /* driver can choose from none, |
109 | top, bottom, interlaced | 109 | top, bottom, interlaced |
110 | depending on whatever it thinks | 110 | depending on whatever it thinks |
111 | is approximate ... */ | 111 | is approximate ... */ |
112 | V4L2_FIELD_NONE = 1, /* this device has no fields ... */ | 112 | V4L2_FIELD_NONE = 1, /* this device has no fields ... */ |
113 | V4L2_FIELD_TOP = 2, /* top field only */ | 113 | V4L2_FIELD_TOP = 2, /* top field only */ |
114 | V4L2_FIELD_BOTTOM = 3, /* bottom field only */ | 114 | V4L2_FIELD_BOTTOM = 3, /* bottom field only */ |
115 | V4L2_FIELD_INTERLACED = 4, /* both fields interlaced */ | 115 | V4L2_FIELD_INTERLACED = 4, /* both fields interlaced */ |
116 | V4L2_FIELD_SEQ_TB = 5, /* both fields sequential into one | 116 | V4L2_FIELD_SEQ_TB = 5, /* both fields sequential into one |
117 | buffer, top-bottom order */ | 117 | buffer, top-bottom order */ |
118 | V4L2_FIELD_SEQ_BT = 6, /* same as above + bottom-top order */ | 118 | V4L2_FIELD_SEQ_BT = 6, /* same as above + bottom-top order */ |
119 | V4L2_FIELD_ALTERNATE = 7, /* both fields alternating into | 119 | V4L2_FIELD_ALTERNATE = 7, /* both fields alternating into |
120 | separate buffers */ | 120 | separate buffers */ |
121 | V4L2_FIELD_INTERLACED_TB = 8, /* both fields interlaced, top field | 121 | V4L2_FIELD_INTERLACED_TB = 8, /* both fields interlaced, top field |
122 | first and the top field is | 122 | first and the top field is |
123 | transmitted first */ | 123 | transmitted first */ |
124 | V4L2_FIELD_INTERLACED_BT = 9, /* both fields interlaced, top field | 124 | V4L2_FIELD_INTERLACED_BT = 9, /* both fields interlaced, top field |
125 | first and the bottom field is | 125 | first and the bottom field is |
126 | transmitted first */ | 126 | transmitted first */ |
127 | }; | 127 | }; |
128 | #define V4L2_FIELD_HAS_TOP(field) \ | 128 | #define V4L2_FIELD_HAS_TOP(field) \ |
129 | ((field) == V4L2_FIELD_TOP ||\ | 129 | ((field) == V4L2_FIELD_TOP ||\ |
130 | (field) == V4L2_FIELD_INTERLACED ||\ | 130 | (field) == V4L2_FIELD_INTERLACED ||\ |
131 | (field) == V4L2_FIELD_INTERLACED_TB ||\ | 131 | (field) == V4L2_FIELD_INTERLACED_TB ||\ |
132 | (field) == V4L2_FIELD_INTERLACED_BT ||\ | 132 | (field) == V4L2_FIELD_INTERLACED_BT ||\ |
133 | (field) == V4L2_FIELD_SEQ_TB ||\ | 133 | (field) == V4L2_FIELD_SEQ_TB ||\ |
134 | (field) == V4L2_FIELD_SEQ_BT) | 134 | (field) == V4L2_FIELD_SEQ_BT) |
135 | #define V4L2_FIELD_HAS_BOTTOM(field) \ | 135 | #define V4L2_FIELD_HAS_BOTTOM(field) \ |
136 | ((field) == V4L2_FIELD_BOTTOM ||\ | 136 | ((field) == V4L2_FIELD_BOTTOM ||\ |
137 | (field) == V4L2_FIELD_INTERLACED ||\ | 137 | (field) == V4L2_FIELD_INTERLACED ||\ |
138 | (field) == V4L2_FIELD_INTERLACED_TB ||\ | 138 | (field) == V4L2_FIELD_INTERLACED_TB ||\ |
139 | (field) == V4L2_FIELD_INTERLACED_BT ||\ | 139 | (field) == V4L2_FIELD_INTERLACED_BT ||\ |
140 | (field) == V4L2_FIELD_SEQ_TB ||\ | 140 | (field) == V4L2_FIELD_SEQ_TB ||\ |
141 | (field) == V4L2_FIELD_SEQ_BT) | 141 | (field) == V4L2_FIELD_SEQ_BT) |
142 | #define V4L2_FIELD_HAS_BOTH(field) \ | 142 | #define V4L2_FIELD_HAS_BOTH(field) \ |
143 | ((field) == V4L2_FIELD_INTERLACED ||\ | 143 | ((field) == V4L2_FIELD_INTERLACED ||\ |
144 | (field) == V4L2_FIELD_INTERLACED_TB ||\ | 144 | (field) == V4L2_FIELD_INTERLACED_TB ||\ |
145 | (field) == V4L2_FIELD_INTERLACED_BT ||\ | 145 | (field) == V4L2_FIELD_INTERLACED_BT ||\ |
146 | (field) == V4L2_FIELD_SEQ_TB ||\ | 146 | (field) == V4L2_FIELD_SEQ_TB ||\ |
147 | (field) == V4L2_FIELD_SEQ_BT) | 147 | (field) == V4L2_FIELD_SEQ_BT) |
148 | 148 | ||
149 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> { | 149 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> { |
150 | V4L2_BUF_TYPE_VIDEO_CAPTURE = 1, | 150 | V4L2_BUF_TYPE_VIDEO_CAPTURE = 1, |
151 | V4L2_BUF_TYPE_VIDEO_OUTPUT = 2, | 151 | V4L2_BUF_TYPE_VIDEO_OUTPUT = 2, |
152 | V4L2_BUF_TYPE_VIDEO_OVERLAY = 3, | 152 | V4L2_BUF_TYPE_VIDEO_OVERLAY = 3, |
153 | V4L2_BUF_TYPE_VBI_CAPTURE = 4, | 153 | V4L2_BUF_TYPE_VBI_CAPTURE = 4, |
154 | V4L2_BUF_TYPE_VBI_OUTPUT = 5, | 154 | V4L2_BUF_TYPE_VBI_OUTPUT = 5, |
155 | V4L2_BUF_TYPE_SLICED_VBI_CAPTURE = 6, | 155 | V4L2_BUF_TYPE_SLICED_VBI_CAPTURE = 6, |
156 | V4L2_BUF_TYPE_SLICED_VBI_OUTPUT = 7, | 156 | V4L2_BUF_TYPE_SLICED_VBI_OUTPUT = 7, |
157 | #if 1 /*KEEP*/ | 157 | #if 1 /*KEEP*/ |
158 | /* Experimental */ | 158 | /* Experimental */ |
159 | V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY = 8, | 159 | V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY = 8, |
160 | #endif | 160 | #endif |
161 | V4L2_BUF_TYPE_PRIVATE = 0x80, | 161 | V4L2_BUF_TYPE_PRIVATE = 0x80, |
162 | }; | 162 | }; |
163 | 163 | ||
164 | enum <link linkend="v4l2-ctrl-type">v4l2_ctrl_type</link> { | 164 | enum <link linkend="v4l2-ctrl-type">v4l2_ctrl_type</link> { |
165 | V4L2_CTRL_TYPE_INTEGER = 1, | 165 | V4L2_CTRL_TYPE_INTEGER = 1, |
166 | V4L2_CTRL_TYPE_BOOLEAN = 2, | 166 | V4L2_CTRL_TYPE_BOOLEAN = 2, |
167 | V4L2_CTRL_TYPE_MENU = 3, | 167 | V4L2_CTRL_TYPE_MENU = 3, |
168 | V4L2_CTRL_TYPE_BUTTON = 4, | 168 | V4L2_CTRL_TYPE_BUTTON = 4, |
169 | V4L2_CTRL_TYPE_INTEGER64 = 5, | 169 | V4L2_CTRL_TYPE_INTEGER64 = 5, |
170 | V4L2_CTRL_TYPE_CTRL_CLASS = 6, | 170 | V4L2_CTRL_TYPE_CTRL_CLASS = 6, |
171 | V4L2_CTRL_TYPE_STRING = 7, | 171 | V4L2_CTRL_TYPE_STRING = 7, |
172 | }; | 172 | }; |
173 | 173 | ||
174 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> { | 174 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> { |
175 | V4L2_TUNER_RADIO = 1, | 175 | V4L2_TUNER_RADIO = 1, |
176 | V4L2_TUNER_ANALOG_TV = 2, | 176 | V4L2_TUNER_ANALOG_TV = 2, |
177 | V4L2_TUNER_DIGITAL_TV = 3, | 177 | V4L2_TUNER_DIGITAL_TV = 3, |
178 | }; | 178 | }; |
179 | 179 | ||
180 | enum <link linkend="v4l2-memory">v4l2_memory</link> { | 180 | enum <link linkend="v4l2-memory">v4l2_memory</link> { |
181 | V4L2_MEMORY_MMAP = 1, | 181 | V4L2_MEMORY_MMAP = 1, |
182 | V4L2_MEMORY_USERPTR = 2, | 182 | V4L2_MEMORY_USERPTR = 2, |
183 | V4L2_MEMORY_OVERLAY = 3, | 183 | V4L2_MEMORY_OVERLAY = 3, |
184 | }; | 184 | }; |
185 | 185 | ||
186 | /* see also http://vektor.theorem.ca/graphics/ycbcr/ */ | 186 | /* see also http://vektor.theorem.ca/graphics/ycbcr/ */ |
187 | enum <link linkend="v4l2-colorspace">v4l2_colorspace</link> { | 187 | enum <link linkend="v4l2-colorspace">v4l2_colorspace</link> { |
188 | /* ITU-R 601 -- broadcast NTSC/PAL */ | 188 | /* ITU-R 601 -- broadcast NTSC/PAL */ |
189 | V4L2_COLORSPACE_SMPTE170M = 1, | 189 | V4L2_COLORSPACE_SMPTE170M = 1, |
190 | 190 | ||
191 | /* 1125-Line (US) HDTV */ | 191 | /* 1125-Line (US) HDTV */ |
192 | V4L2_COLORSPACE_SMPTE240M = 2, | 192 | V4L2_COLORSPACE_SMPTE240M = 2, |
193 | 193 | ||
194 | /* HD and modern captures. */ | 194 | /* HD and modern captures. */ |
195 | V4L2_COLORSPACE_REC709 = 3, | 195 | V4L2_COLORSPACE_REC709 = 3, |
196 | 196 | ||
197 | /* broken BT878 extents (601, luma range 16-253 instead of 16-235) */ | 197 | /* broken BT878 extents (601, luma range 16-253 instead of 16-235) */ |
198 | V4L2_COLORSPACE_BT878 = 4, | 198 | V4L2_COLORSPACE_BT878 = 4, |
199 | 199 | ||
200 | /* These should be useful. Assume 601 extents. */ | 200 | /* These should be useful. Assume 601 extents. */ |
201 | V4L2_COLORSPACE_470_SYSTEM_M = 5, | 201 | V4L2_COLORSPACE_470_SYSTEM_M = 5, |
202 | V4L2_COLORSPACE_470_SYSTEM_BG = 6, | 202 | V4L2_COLORSPACE_470_SYSTEM_BG = 6, |
203 | 203 | ||
204 | /* I know there will be cameras that send this. So, this is | 204 | /* I know there will be cameras that send this. So, this is |
205 | * unspecified chromaticities and full 0-255 on each of the | 205 | * unspecified chromaticities and full 0-255 on each of the |
206 | * Y'CbCr components | 206 | * Y'CbCr components |
207 | */ | 207 | */ |
208 | V4L2_COLORSPACE_JPEG = 7, | 208 | V4L2_COLORSPACE_JPEG = 7, |
209 | 209 | ||
210 | /* For RGB colourspaces, this is probably a good start. */ | 210 | /* For RGB colourspaces, this is probably a good start. */ |
211 | V4L2_COLORSPACE_SRGB = 8, | 211 | V4L2_COLORSPACE_SRGB = 8, |
212 | }; | 212 | }; |
213 | 213 | ||
214 | enum <link linkend="v4l2-priority">v4l2_priority</link> { | 214 | enum <link linkend="v4l2-priority">v4l2_priority</link> { |
215 | V4L2_PRIORITY_UNSET = 0, /* not initialized */ | 215 | V4L2_PRIORITY_UNSET = 0, /* not initialized */ |
216 | V4L2_PRIORITY_BACKGROUND = 1, | 216 | V4L2_PRIORITY_BACKGROUND = 1, |
217 | V4L2_PRIORITY_INTERACTIVE = 2, | 217 | V4L2_PRIORITY_INTERACTIVE = 2, |
218 | V4L2_PRIORITY_RECORD = 3, | 218 | V4L2_PRIORITY_RECORD = 3, |
219 | V4L2_PRIORITY_DEFAULT = V4L2_PRIORITY_INTERACTIVE, | 219 | V4L2_PRIORITY_DEFAULT = V4L2_PRIORITY_INTERACTIVE, |
220 | }; | 220 | }; |
221 | 221 | ||
222 | struct <link linkend="v4l2-rect">v4l2_rect</link> { | 222 | struct <link linkend="v4l2-rect">v4l2_rect</link> { |
223 | __s32 left; | 223 | __s32 left; |
224 | __s32 top; | 224 | __s32 top; |
225 | __s32 width; | 225 | __s32 width; |
226 | __s32 height; | 226 | __s32 height; |
227 | }; | 227 | }; |
228 | 228 | ||
229 | struct <link linkend="v4l2-fract">v4l2_fract</link> { | 229 | struct <link linkend="v4l2-fract">v4l2_fract</link> { |
230 | __u32 numerator; | 230 | __u32 numerator; |
231 | __u32 denominator; | 231 | __u32 denominator; |
232 | }; | 232 | }; |
233 | 233 | ||
234 | /* | 234 | /* |
235 | * D R I V E R C A P A B I L I T I E S | 235 | * D R I V E R C A P A B I L I T I E S |
236 | */ | 236 | */ |
237 | struct <link linkend="v4l2-capability">v4l2_capability</link> { | 237 | struct <link linkend="v4l2-capability">v4l2_capability</link> { |
238 | __u8 driver[16]; /* i.e.ie; "bttv" */ | 238 | __u8 driver[16]; /* i.e.ie; "bttv" */ |
239 | __u8 card[32]; /* i.e.ie; "Hauppauge WinTV" */ | 239 | __u8 card[32]; /* i.e.ie; "Hauppauge WinTV" */ |
240 | __u8 bus_info[32]; /* "PCI:" + pci_name(pci_dev) */ | 240 | __u8 bus_info[32]; /* "PCI:" + pci_name(pci_dev) */ |
241 | __u32 version; /* should use KERNEL_VERSION() */ | 241 | __u32 version; /* should use KERNEL_VERSION() */ |
242 | __u32 capabilities; /* Device capabilities */ | 242 | __u32 capabilities; /* Device capabilities */ |
243 | __u32 reserved[4]; | 243 | __u32 reserved[4]; |
244 | }; | 244 | }; |
245 | 245 | ||
246 | /* Values for 'capabilities' field */ | 246 | /* Values for 'capabilities' field */ |
@@ -269,14 +269,14 @@ struct <link linkend="v4l2-capability">v4l2_capability</link> { | |||
269 | * V I D E O I M A G E F O R M A T | 269 | * V I D E O I M A G E F O R M A T |
270 | */ | 270 | */ |
271 | struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> { | 271 | struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> { |
272 | __u32 width; | 272 | __u32 width; |
273 | __u32 height; | 273 | __u32 height; |
274 | __u32 pixelformat; | 274 | __u32 pixelformat; |
275 | enum <link linkend="v4l2-field">v4l2_field</link> field; | 275 | enum <link linkend="v4l2-field">v4l2_field</link> field; |
276 | __u32 bytesperline; /* for padding, zero if unused */ | 276 | __u32 bytesperline; /* for padding, zero if unused */ |
277 | __u32 sizeimage; | 277 | __u32 sizeimage; |
278 | enum <link linkend="v4l2-colorspace">v4l2_colorspace</link> colorspace; | 278 | enum <link linkend="v4l2-colorspace">v4l2_colorspace</link> colorspace; |
279 | __u32 priv; /* private data, depends on pixelformat */ | 279 | __u32 priv; /* private data, depends on pixelformat */ |
280 | }; | 280 | }; |
281 | 281 | ||
282 | /* Pixel format FOURCC depth Description */ | 282 | /* Pixel format FOURCC depth Description */ |
@@ -331,12 +331,12 @@ struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> { | |||
331 | #define <link linkend="V4L2-PIX-FMT-SGBRG8">V4L2_PIX_FMT_SGBRG8</link> v4l2_fourcc('G', 'B', 'R', 'G') /* 8 GBGB.. RGRG.. */ | 331 | #define <link linkend="V4L2-PIX-FMT-SGBRG8">V4L2_PIX_FMT_SGBRG8</link> v4l2_fourcc('G', 'B', 'R', 'G') /* 8 GBGB.. RGRG.. */ |
332 | #define <link linkend="V4L2-PIX-FMT-SGRBG8">V4L2_PIX_FMT_SGRBG8</link> v4l2_fourcc('G', 'R', 'B', 'G') /* 8 GRGR.. BGBG.. */ | 332 | #define <link linkend="V4L2-PIX-FMT-SGRBG8">V4L2_PIX_FMT_SGRBG8</link> v4l2_fourcc('G', 'R', 'B', 'G') /* 8 GRGR.. BGBG.. */ |
333 | #define <link linkend="V4L2-PIX-FMT-SGRBG10">V4L2_PIX_FMT_SGRBG10</link> v4l2_fourcc('B', 'A', '1', '0') /* 10bit raw bayer */ | 333 | #define <link linkend="V4L2-PIX-FMT-SGRBG10">V4L2_PIX_FMT_SGRBG10</link> v4l2_fourcc('B', 'A', '1', '0') /* 10bit raw bayer */ |
334 | /* 10bit raw bayer DPCM compressed to 8 bits */ | 334 | /* 10bit raw bayer DPCM compressed to 8 bits */ |
335 | #define <link linkend="V4L2-PIX-FMT-SGRBG10DPCM8">V4L2_PIX_FMT_SGRBG10DPCM8</link> v4l2_fourcc('B', 'D', '1', '0') | 335 | #define <link linkend="V4L2-PIX-FMT-SGRBG10DPCM8">V4L2_PIX_FMT_SGRBG10DPCM8</link> v4l2_fourcc('B', 'D', '1', '0') |
336 | /* | 336 | /* |
337 | * 10bit raw bayer, expanded to 16 bits | 337 | * 10bit raw bayer, expanded to 16 bits |
338 | * xxxxrrrrrrrrrrxxxxgggggggggg xxxxggggggggggxxxxbbbbbbbbbb... | 338 | * xxxxrrrrrrrrrrxxxxgggggggggg xxxxggggggggggxxxxbbbbbbbbbb... |
339 | */ | 339 | */ |
340 | #define <link linkend="V4L2-PIX-FMT-SBGGR16">V4L2_PIX_FMT_SBGGR16</link> v4l2_fourcc('B', 'Y', 'R', '2') /* 16 BGBG.. GRGR.. */ | 340 | #define <link linkend="V4L2-PIX-FMT-SBGGR16">V4L2_PIX_FMT_SBGGR16</link> v4l2_fourcc('B', 'Y', 'R', '2') /* 16 BGBG.. GRGR.. */ |
341 | 341 | ||
342 | /* compressed formats */ | 342 | /* compressed formats */ |
@@ -369,83 +369,83 @@ struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> { | |||
369 | * F O R M A T E N U M E R A T I O N | 369 | * F O R M A T E N U M E R A T I O N |
370 | */ | 370 | */ |
371 | struct <link linkend="v4l2-fmtdesc">v4l2_fmtdesc</link> { | 371 | struct <link linkend="v4l2-fmtdesc">v4l2_fmtdesc</link> { |
372 | __u32 index; /* Format number */ | 372 | __u32 index; /* Format number */ |
373 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; /* buffer type */ | 373 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; /* buffer type */ |
374 | __u32 flags; | 374 | __u32 flags; |
375 | __u8 description[32]; /* Description string */ | 375 | __u8 description[32]; /* Description string */ |
376 | __u32 pixelformat; /* Format fourcc */ | 376 | __u32 pixelformat; /* Format fourcc */ |
377 | __u32 reserved[4]; | 377 | __u32 reserved[4]; |
378 | }; | 378 | }; |
379 | 379 | ||
380 | #define V4L2_FMT_FLAG_COMPRESSED 0x0001 | 380 | #define V4L2_FMT_FLAG_COMPRESSED 0x0001 |
381 | #define V4L2_FMT_FLAG_EMULATED 0x0002 | 381 | #define V4L2_FMT_FLAG_EMULATED 0x0002 |
382 | 382 | ||
383 | #if 1 /*KEEP*/ | 383 | #if 1 /*KEEP*/ |
384 | /* Experimental Frame Size and frame rate enumeration */ | 384 | /* Experimental Frame Size and frame rate enumeration */ |
385 | /* | 385 | /* |
386 | * F R A M E S I Z E E N U M E R A T I O N | 386 | * F R A M E S I Z E E N U M E R A T I O N |
387 | */ | 387 | */ |
388 | enum <link linkend="v4l2-frmsizetypes">v4l2_frmsizetypes</link> { | 388 | enum <link linkend="v4l2-frmsizetypes">v4l2_frmsizetypes</link> { |
389 | V4L2_FRMSIZE_TYPE_DISCRETE = 1, | 389 | V4L2_FRMSIZE_TYPE_DISCRETE = 1, |
390 | V4L2_FRMSIZE_TYPE_CONTINUOUS = 2, | 390 | V4L2_FRMSIZE_TYPE_CONTINUOUS = 2, |
391 | V4L2_FRMSIZE_TYPE_STEPWISE = 3, | 391 | V4L2_FRMSIZE_TYPE_STEPWISE = 3, |
392 | }; | 392 | }; |
393 | 393 | ||
394 | struct <link linkend="v4l2-frmsize-discrete">v4l2_frmsize_discrete</link> { | 394 | struct <link linkend="v4l2-frmsize-discrete">v4l2_frmsize_discrete</link> { |
395 | __u32 width; /* Frame width [pixel] */ | 395 | __u32 width; /* Frame width [pixel] */ |
396 | __u32 height; /* Frame height [pixel] */ | 396 | __u32 height; /* Frame height [pixel] */ |
397 | }; | 397 | }; |
398 | 398 | ||
399 | struct <link linkend="v4l2-frmsize-stepwise">v4l2_frmsize_stepwise</link> { | 399 | struct <link linkend="v4l2-frmsize-stepwise">v4l2_frmsize_stepwise</link> { |
400 | __u32 min_width; /* Minimum frame width [pixel] */ | 400 | __u32 min_width; /* Minimum frame width [pixel] */ |
401 | __u32 max_width; /* Maximum frame width [pixel] */ | 401 | __u32 max_width; /* Maximum frame width [pixel] */ |
402 | __u32 step_width; /* Frame width step size [pixel] */ | 402 | __u32 step_width; /* Frame width step size [pixel] */ |
403 | __u32 min_height; /* Minimum frame height [pixel] */ | 403 | __u32 min_height; /* Minimum frame height [pixel] */ |
404 | __u32 max_height; /* Maximum frame height [pixel] */ | 404 | __u32 max_height; /* Maximum frame height [pixel] */ |
405 | __u32 step_height; /* Frame height step size [pixel] */ | 405 | __u32 step_height; /* Frame height step size [pixel] */ |
406 | }; | 406 | }; |
407 | 407 | ||
408 | struct <link linkend="v4l2-frmsizeenum">v4l2_frmsizeenum</link> { | 408 | struct <link linkend="v4l2-frmsizeenum">v4l2_frmsizeenum</link> { |
409 | __u32 index; /* Frame size number */ | 409 | __u32 index; /* Frame size number */ |
410 | __u32 pixel_format; /* Pixel format */ | 410 | __u32 pixel_format; /* Pixel format */ |
411 | __u32 type; /* Frame size type the device supports. */ | 411 | __u32 type; /* Frame size type the device supports. */ |
412 | 412 | ||
413 | union { /* Frame size */ | 413 | union { /* Frame size */ |
414 | struct <link linkend="v4l2-frmsize-discrete">v4l2_frmsize_discrete</link> discrete; | 414 | struct <link linkend="v4l2-frmsize-discrete">v4l2_frmsize_discrete</link> discrete; |
415 | struct <link linkend="v4l2-frmsize-stepwise">v4l2_frmsize_stepwise</link> stepwise; | 415 | struct <link linkend="v4l2-frmsize-stepwise">v4l2_frmsize_stepwise</link> stepwise; |
416 | }; | 416 | }; |
417 | 417 | ||
418 | __u32 reserved[2]; /* Reserved space for future use */ | 418 | __u32 reserved[2]; /* Reserved space for future use */ |
419 | }; | 419 | }; |
420 | 420 | ||
421 | /* | 421 | /* |
422 | * F R A M E R A T E E N U M E R A T I O N | 422 | * F R A M E R A T E E N U M E R A T I O N |
423 | */ | 423 | */ |
424 | enum <link linkend="v4l2-frmivaltypes">v4l2_frmivaltypes</link> { | 424 | enum <link linkend="v4l2-frmivaltypes">v4l2_frmivaltypes</link> { |
425 | V4L2_FRMIVAL_TYPE_DISCRETE = 1, | 425 | V4L2_FRMIVAL_TYPE_DISCRETE = 1, |
426 | V4L2_FRMIVAL_TYPE_CONTINUOUS = 2, | 426 | V4L2_FRMIVAL_TYPE_CONTINUOUS = 2, |
427 | V4L2_FRMIVAL_TYPE_STEPWISE = 3, | 427 | V4L2_FRMIVAL_TYPE_STEPWISE = 3, |
428 | }; | 428 | }; |
429 | 429 | ||
430 | struct <link linkend="v4l2-frmival-stepwise">v4l2_frmival_stepwise</link> { | 430 | struct <link linkend="v4l2-frmival-stepwise">v4l2_frmival_stepwise</link> { |
431 | struct <link linkend="v4l2-fract">v4l2_fract</link> min; /* Minimum frame interval [s] */ | 431 | struct <link linkend="v4l2-fract">v4l2_fract</link> min; /* Minimum frame interval [s] */ |
432 | struct <link linkend="v4l2-fract">v4l2_fract</link> max; /* Maximum frame interval [s] */ | 432 | struct <link linkend="v4l2-fract">v4l2_fract</link> max; /* Maximum frame interval [s] */ |
433 | struct <link linkend="v4l2-fract">v4l2_fract</link> step; /* Frame interval step size [s] */ | 433 | struct <link linkend="v4l2-fract">v4l2_fract</link> step; /* Frame interval step size [s] */ |
434 | }; | 434 | }; |
435 | 435 | ||
436 | struct <link linkend="v4l2-frmivalenum">v4l2_frmivalenum</link> { | 436 | struct <link linkend="v4l2-frmivalenum">v4l2_frmivalenum</link> { |
437 | __u32 index; /* Frame format index */ | 437 | __u32 index; /* Frame format index */ |
438 | __u32 pixel_format; /* Pixel format */ | 438 | __u32 pixel_format; /* Pixel format */ |
439 | __u32 width; /* Frame width */ | 439 | __u32 width; /* Frame width */ |
440 | __u32 height; /* Frame height */ | 440 | __u32 height; /* Frame height */ |
441 | __u32 type; /* Frame interval type the device supports. */ | 441 | __u32 type; /* Frame interval type the device supports. */ |
442 | 442 | ||
443 | union { /* Frame interval */ | 443 | union { /* Frame interval */ |
444 | struct <link linkend="v4l2-fract">v4l2_fract</link> discrete; | 444 | struct <link linkend="v4l2-fract">v4l2_fract</link> discrete; |
445 | struct <link linkend="v4l2-frmival-stepwise">v4l2_frmival_stepwise</link> stepwise; | 445 | struct <link linkend="v4l2-frmival-stepwise">v4l2_frmival_stepwise</link> stepwise; |
446 | }; | 446 | }; |
447 | 447 | ||
448 | __u32 reserved[2]; /* Reserved space for future use */ | 448 | __u32 reserved[2]; /* Reserved space for future use */ |
449 | }; | 449 | }; |
450 | #endif | 450 | #endif |
451 | 451 | ||
@@ -453,13 +453,13 @@ struct <link linkend="v4l2-frmivalenum">v4l2_frmivalenum</link> { | |||
453 | * T I M E C O D E | 453 | * T I M E C O D E |
454 | */ | 454 | */ |
455 | struct <link linkend="v4l2-timecode">v4l2_timecode</link> { | 455 | struct <link linkend="v4l2-timecode">v4l2_timecode</link> { |
456 | __u32 type; | 456 | __u32 type; |
457 | __u32 flags; | 457 | __u32 flags; |
458 | __u8 frames; | 458 | __u8 frames; |
459 | __u8 seconds; | 459 | __u8 seconds; |
460 | __u8 minutes; | 460 | __u8 minutes; |
461 | __u8 hours; | 461 | __u8 hours; |
462 | __u8 userbits[4]; | 462 | __u8 userbits[4]; |
463 | }; | 463 | }; |
464 | 464 | ||
465 | /* Type */ | 465 | /* Type */ |
@@ -478,63 +478,63 @@ struct <link linkend="v4l2-timecode">v4l2_timecode</link> { | |||
478 | /* The above is based on SMPTE timecodes */ | 478 | /* The above is based on SMPTE timecodes */ |
479 | 479 | ||
480 | struct <link linkend="v4l2-jpegcompression">v4l2_jpegcompression</link> { | 480 | struct <link linkend="v4l2-jpegcompression">v4l2_jpegcompression</link> { |
481 | int quality; | 481 | int quality; |
482 | 482 | ||
483 | int APPn; /* Number of APP segment to be written, | 483 | int APPn; /* Number of APP segment to be written, |
484 | * must be 0..15 */ | 484 | * must be 0..15 */ |
485 | int APP_len; /* Length of data in JPEG APPn segment */ | 485 | int APP_len; /* Length of data in JPEG APPn segment */ |
486 | char APP_data[60]; /* Data in the JPEG APPn segment. */ | 486 | char APP_data[60]; /* Data in the JPEG APPn segment. */ |
487 | 487 | ||
488 | int COM_len; /* Length of data in JPEG COM segment */ | 488 | int COM_len; /* Length of data in JPEG COM segment */ |
489 | char COM_data[60]; /* Data in JPEG COM segment */ | 489 | char COM_data[60]; /* Data in JPEG COM segment */ |
490 | 490 | ||
491 | __u32 jpeg_markers; /* Which markers should go into the JPEG | 491 | __u32 jpeg_markers; /* Which markers should go into the JPEG |
492 | * output. Unless you exactly know what | 492 | * output. Unless you exactly know what |
493 | * you do, leave them untouched. | 493 | * you do, leave them untouched. |
494 | * Inluding less markers will make the | 494 | * Inluding less markers will make the |
495 | * resulting code smaller, but there will | 495 | * resulting code smaller, but there will |
496 | * be fewer aplications which can read it. | 496 | * be fewer aplications which can read it. |
497 | * The presence of the APP and COM marker | 497 | * The presence of the APP and COM marker |
498 | * is influenced by APP_len and COM_len | 498 | * is influenced by APP_len and COM_len |
499 | * ONLY, not by this property! */ | 499 | * ONLY, not by this property! */ |
500 | 500 | ||
501 | #define V4L2_JPEG_MARKER_DHT (1<<3) /* Define Huffman Tables */ | 501 | #define V4L2_JPEG_MARKER_DHT (1<<3) /* Define Huffman Tables */ |
502 | #define V4L2_JPEG_MARKER_DQT (1<<4) /* Define Quantization Tables */ | 502 | #define V4L2_JPEG_MARKER_DQT (1<<4) /* Define Quantization Tables */ |
503 | #define V4L2_JPEG_MARKER_DRI (1<<5) /* Define Restart Interval */ | 503 | #define V4L2_JPEG_MARKER_DRI (1<<5) /* Define Restart Interval */ |
504 | #define V4L2_JPEG_MARKER_COM (1<<6) /* Comment segment */ | 504 | #define V4L2_JPEG_MARKER_COM (1<<6) /* Comment segment */ |
505 | #define V4L2_JPEG_MARKER_APP (1<<7) /* App segment, driver will | 505 | #define V4L2_JPEG_MARKER_APP (1<<7) /* App segment, driver will |
506 | * allways use APP0 */ | 506 | * allways use APP0 */ |
507 | }; | 507 | }; |
508 | 508 | ||
509 | /* | 509 | /* |
510 | * M E M O R Y - M A P P I N G B U F F E R S | 510 | * M E M O R Y - M A P P I N G B U F F E R S |
511 | */ | 511 | */ |
512 | struct <link linkend="v4l2-requestbuffers">v4l2_requestbuffers</link> { | 512 | struct <link linkend="v4l2-requestbuffers">v4l2_requestbuffers</link> { |
513 | __u32 count; | 513 | __u32 count; |
514 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; | 514 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; |
515 | enum <link linkend="v4l2-memory">v4l2_memory</link> memory; | 515 | enum <link linkend="v4l2-memory">v4l2_memory</link> memory; |
516 | __u32 reserved[2]; | 516 | __u32 reserved[2]; |
517 | }; | 517 | }; |
518 | 518 | ||
519 | struct <link linkend="v4l2-buffer">v4l2_buffer</link> { | 519 | struct <link linkend="v4l2-buffer">v4l2_buffer</link> { |
520 | __u32 index; | 520 | __u32 index; |
521 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; | 521 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; |
522 | __u32 bytesused; | 522 | __u32 bytesused; |
523 | __u32 flags; | 523 | __u32 flags; |
524 | enum <link linkend="v4l2-field">v4l2_field</link> field; | 524 | enum <link linkend="v4l2-field">v4l2_field</link> field; |
525 | struct timeval timestamp; | 525 | struct timeval timestamp; |
526 | struct <link linkend="v4l2-timecode">v4l2_timecode</link> timecode; | 526 | struct <link linkend="v4l2-timecode">v4l2_timecode</link> timecode; |
527 | __u32 sequence; | 527 | __u32 sequence; |
528 | 528 | ||
529 | /* memory location */ | 529 | /* memory location */ |
530 | enum <link linkend="v4l2-memory">v4l2_memory</link> memory; | 530 | enum <link linkend="v4l2-memory">v4l2_memory</link> memory; |
531 | union { | 531 | union { |
532 | __u32 offset; | 532 | __u32 offset; |
533 | unsigned long userptr; | 533 | unsigned long userptr; |
534 | } m; | 534 | } m; |
535 | __u32 length; | 535 | __u32 length; |
536 | __u32 input; | 536 | __u32 input; |
537 | __u32 reserved; | 537 | __u32 reserved; |
538 | }; | 538 | }; |
539 | 539 | ||
540 | /* Flags for 'flags' field */ | 540 | /* Flags for 'flags' field */ |
@@ -551,12 +551,12 @@ struct <link linkend="v4l2-buffer">v4l2_buffer</link> { | |||
551 | * O V E R L A Y P R E V I E W | 551 | * O V E R L A Y P R E V I E W |
552 | */ | 552 | */ |
553 | struct <link linkend="v4l2-framebuffer">v4l2_framebuffer</link> { | 553 | struct <link linkend="v4l2-framebuffer">v4l2_framebuffer</link> { |
554 | __u32 capability; | 554 | __u32 capability; |
555 | __u32 flags; | 555 | __u32 flags; |
556 | /* FIXME: in theory we should pass something like PCI device + memory | 556 | /* FIXME: in theory we should pass something like PCI device + memory |
557 | * region + offset instead of some physical address */ | 557 | * region + offset instead of some physical address */ |
558 | void *base; | 558 | void *base; |
559 | struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> fmt; | 559 | struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> fmt; |
560 | }; | 560 | }; |
561 | /* Flags for the 'capability' field. Read only */ | 561 | /* Flags for the 'capability' field. Read only */ |
562 | #define V4L2_FBUF_CAP_EXTERNOVERLAY 0x0001 | 562 | #define V4L2_FBUF_CAP_EXTERNOVERLAY 0x0001 |
@@ -577,30 +577,30 @@ struct <link linkend="v4l2-framebuffer">v4l2_framebuffer</link> { | |||
577 | #define V4L2_FBUF_FLAG_SRC_CHROMAKEY 0x0040 | 577 | #define V4L2_FBUF_FLAG_SRC_CHROMAKEY 0x0040 |
578 | 578 | ||
579 | struct <link linkend="v4l2-clip">v4l2_clip</link> { | 579 | struct <link linkend="v4l2-clip">v4l2_clip</link> { |
580 | struct <link linkend="v4l2-rect">v4l2_rect</link> c; | 580 | struct <link linkend="v4l2-rect">v4l2_rect</link> c; |
581 | struct <link linkend="v4l2-clip">v4l2_clip</link> __user *next; | 581 | struct <link linkend="v4l2-clip">v4l2_clip</link> __user *next; |
582 | }; | 582 | }; |
583 | 583 | ||
584 | struct <link linkend="v4l2-window">v4l2_window</link> { | 584 | struct <link linkend="v4l2-window">v4l2_window</link> { |
585 | struct <link linkend="v4l2-rect">v4l2_rect</link> w; | 585 | struct <link linkend="v4l2-rect">v4l2_rect</link> w; |
586 | enum <link linkend="v4l2-field">v4l2_field</link> field; | 586 | enum <link linkend="v4l2-field">v4l2_field</link> field; |
587 | __u32 chromakey; | 587 | __u32 chromakey; |
588 | struct <link linkend="v4l2-clip">v4l2_clip</link> __user *clips; | 588 | struct <link linkend="v4l2-clip">v4l2_clip</link> __user *clips; |
589 | __u32 clipcount; | 589 | __u32 clipcount; |
590 | void __user *bitmap; | 590 | void __user *bitmap; |
591 | __u8 global_alpha; | 591 | __u8 global_alpha; |
592 | }; | 592 | }; |
593 | 593 | ||
594 | /* | 594 | /* |
595 | * C A P T U R E P A R A M E T E R S | 595 | * C A P T U R E P A R A M E T E R S |
596 | */ | 596 | */ |
597 | struct <link linkend="v4l2-captureparm">v4l2_captureparm</link> { | 597 | struct <link linkend="v4l2-captureparm">v4l2_captureparm</link> { |
598 | __u32 capability; /* Supported modes */ | 598 | __u32 capability; /* Supported modes */ |
599 | __u32 capturemode; /* Current mode */ | 599 | __u32 capturemode; /* Current mode */ |
600 | struct <link linkend="v4l2-fract">v4l2_fract</link> timeperframe; /* Time per frame in .1us units */ | 600 | struct <link linkend="v4l2-fract">v4l2_fract</link> timeperframe; /* Time per frame in .1us units */ |
601 | __u32 extendedmode; /* Driver-specific extensions */ | 601 | __u32 extendedmode; /* Driver-specific extensions */ |
602 | __u32 readbuffers; /* # of buffers for read */ | 602 | __u32 readbuffers; /* # of buffers for read */ |
603 | __u32 reserved[4]; | 603 | __u32 reserved[4]; |
604 | }; | 604 | }; |
605 | 605 | ||
606 | /* Flags for 'capability' and 'capturemode' fields */ | 606 | /* Flags for 'capability' and 'capturemode' fields */ |
@@ -608,27 +608,27 @@ struct <link linkend="v4l2-captureparm">v4l2_captureparm</link> { | |||
608 | #define V4L2_CAP_TIMEPERFRAME 0x1000 /* timeperframe field is supported */ | 608 | #define V4L2_CAP_TIMEPERFRAME 0x1000 /* timeperframe field is supported */ |
609 | 609 | ||
610 | struct <link linkend="v4l2-outputparm">v4l2_outputparm</link> { | 610 | struct <link linkend="v4l2-outputparm">v4l2_outputparm</link> { |
611 | __u32 capability; /* Supported modes */ | 611 | __u32 capability; /* Supported modes */ |
612 | __u32 outputmode; /* Current mode */ | 612 | __u32 outputmode; /* Current mode */ |
613 | struct <link linkend="v4l2-fract">v4l2_fract</link> timeperframe; /* Time per frame in seconds */ | 613 | struct <link linkend="v4l2-fract">v4l2_fract</link> timeperframe; /* Time per frame in seconds */ |
614 | __u32 extendedmode; /* Driver-specific extensions */ | 614 | __u32 extendedmode; /* Driver-specific extensions */ |
615 | __u32 writebuffers; /* # of buffers for write */ | 615 | __u32 writebuffers; /* # of buffers for write */ |
616 | __u32 reserved[4]; | 616 | __u32 reserved[4]; |
617 | }; | 617 | }; |
618 | 618 | ||
619 | /* | 619 | /* |
620 | * I N P U T I M A G E C R O P P I N G | 620 | * I N P U T I M A G E C R O P P I N G |
621 | */ | 621 | */ |
622 | struct <link linkend="v4l2-cropcap">v4l2_cropcap</link> { | 622 | struct <link linkend="v4l2-cropcap">v4l2_cropcap</link> { |
623 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; | 623 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; |
624 | struct <link linkend="v4l2-rect">v4l2_rect</link> bounds; | 624 | struct <link linkend="v4l2-rect">v4l2_rect</link> bounds; |
625 | struct <link linkend="v4l2-rect">v4l2_rect</link> defrect; | 625 | struct <link linkend="v4l2-rect">v4l2_rect</link> defrect; |
626 | struct <link linkend="v4l2-fract">v4l2_fract</link> pixelaspect; | 626 | struct <link linkend="v4l2-fract">v4l2_fract</link> pixelaspect; |
627 | }; | 627 | }; |
628 | 628 | ||
629 | struct <link linkend="v4l2-crop">v4l2_crop</link> { | 629 | struct <link linkend="v4l2-crop">v4l2_crop</link> { |
630 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; | 630 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; |
631 | struct <link linkend="v4l2-rect">v4l2_rect</link> c; | 631 | struct <link linkend="v4l2-rect">v4l2_rect</link> c; |
632 | }; | 632 | }; |
633 | 633 | ||
634 | /* | 634 | /* |
@@ -687,64 +687,64 @@ typedef __u64 v4l2_std_id; | |||
687 | 687 | ||
688 | /* some common needed stuff */ | 688 | /* some common needed stuff */ |
689 | #define V4L2_STD_PAL_BG (V4L2_STD_PAL_B |\ | 689 | #define V4L2_STD_PAL_BG (V4L2_STD_PAL_B |\ |
690 | V4L2_STD_PAL_B1 |\ | 690 | V4L2_STD_PAL_B1 |\ |
691 | V4L2_STD_PAL_G) | 691 | V4L2_STD_PAL_G) |
692 | #define V4L2_STD_PAL_DK (V4L2_STD_PAL_D |\ | 692 | #define V4L2_STD_PAL_DK (V4L2_STD_PAL_D |\ |
693 | V4L2_STD_PAL_D1 |\ | 693 | V4L2_STD_PAL_D1 |\ |
694 | V4L2_STD_PAL_K) | 694 | V4L2_STD_PAL_K) |
695 | #define V4L2_STD_PAL (V4L2_STD_PAL_BG |\ | 695 | #define V4L2_STD_PAL (V4L2_STD_PAL_BG |\ |
696 | V4L2_STD_PAL_DK |\ | 696 | V4L2_STD_PAL_DK |\ |
697 | V4L2_STD_PAL_H |\ | 697 | V4L2_STD_PAL_H |\ |
698 | V4L2_STD_PAL_I) | 698 | V4L2_STD_PAL_I) |
699 | #define V4L2_STD_NTSC (V4L2_STD_NTSC_M |\ | 699 | #define V4L2_STD_NTSC (V4L2_STD_NTSC_M |\ |
700 | V4L2_STD_NTSC_M_JP |\ | 700 | V4L2_STD_NTSC_M_JP |\ |
701 | V4L2_STD_NTSC_M_KR) | 701 | V4L2_STD_NTSC_M_KR) |
702 | #define V4L2_STD_SECAM_DK (V4L2_STD_SECAM_D |\ | 702 | #define V4L2_STD_SECAM_DK (V4L2_STD_SECAM_D |\ |
703 | V4L2_STD_SECAM_K |\ | 703 | V4L2_STD_SECAM_K |\ |
704 | V4L2_STD_SECAM_K1) | 704 | V4L2_STD_SECAM_K1) |
705 | #define V4L2_STD_SECAM (V4L2_STD_SECAM_B |\ | 705 | #define V4L2_STD_SECAM (V4L2_STD_SECAM_B |\ |
706 | V4L2_STD_SECAM_G |\ | 706 | V4L2_STD_SECAM_G |\ |
707 | V4L2_STD_SECAM_H |\ | 707 | V4L2_STD_SECAM_H |\ |
708 | V4L2_STD_SECAM_DK |\ | 708 | V4L2_STD_SECAM_DK |\ |
709 | V4L2_STD_SECAM_L |\ | 709 | V4L2_STD_SECAM_L |\ |
710 | V4L2_STD_SECAM_LC) | 710 | V4L2_STD_SECAM_LC) |
711 | 711 | ||
712 | #define V4L2_STD_525_60 (V4L2_STD_PAL_M |\ | 712 | #define V4L2_STD_525_60 (V4L2_STD_PAL_M |\ |
713 | V4L2_STD_PAL_60 |\ | 713 | V4L2_STD_PAL_60 |\ |
714 | V4L2_STD_NTSC |\ | 714 | V4L2_STD_NTSC |\ |
715 | V4L2_STD_NTSC_443) | 715 | V4L2_STD_NTSC_443) |
716 | #define V4L2_STD_625_50 (V4L2_STD_PAL |\ | 716 | #define V4L2_STD_625_50 (V4L2_STD_PAL |\ |
717 | V4L2_STD_PAL_N |\ | 717 | V4L2_STD_PAL_N |\ |
718 | V4L2_STD_PAL_Nc |\ | 718 | V4L2_STD_PAL_Nc |\ |
719 | V4L2_STD_SECAM) | 719 | V4L2_STD_SECAM) |
720 | #define V4L2_STD_ATSC (V4L2_STD_ATSC_8_VSB |\ | 720 | #define V4L2_STD_ATSC (V4L2_STD_ATSC_8_VSB |\ |
721 | V4L2_STD_ATSC_16_VSB) | 721 | V4L2_STD_ATSC_16_VSB) |
722 | 722 | ||
723 | #define V4L2_STD_UNKNOWN 0 | 723 | #define V4L2_STD_UNKNOWN 0 |
724 | #define V4L2_STD_ALL (V4L2_STD_525_60 |\ | 724 | #define V4L2_STD_ALL (V4L2_STD_525_60 |\ |
725 | V4L2_STD_625_50) | 725 | V4L2_STD_625_50) |
726 | 726 | ||
727 | struct <link linkend="v4l2-standard">v4l2_standard</link> { | 727 | struct <link linkend="v4l2-standard">v4l2_standard</link> { |
728 | __u32 index; | 728 | __u32 index; |
729 | v4l2_std_id id; | 729 | v4l2_std_id id; |
730 | __u8 name[24]; | 730 | __u8 name[24]; |
731 | struct <link linkend="v4l2-fract">v4l2_fract</link> frameperiod; /* Frames, not fields */ | 731 | struct <link linkend="v4l2-fract">v4l2_fract</link> frameperiod; /* Frames, not fields */ |
732 | __u32 framelines; | 732 | __u32 framelines; |
733 | __u32 reserved[4]; | 733 | __u32 reserved[4]; |
734 | }; | 734 | }; |
735 | 735 | ||
736 | /* | 736 | /* |
737 | * V I D E O I N P U T S | 737 | * V I D E O I N P U T S |
738 | */ | 738 | */ |
739 | struct <link linkend="v4l2-input">v4l2_input</link> { | 739 | struct <link linkend="v4l2-input">v4l2_input</link> { |
740 | __u32 index; /* Which input */ | 740 | __u32 index; /* Which input */ |
741 | __u8 name[32]; /* Label */ | 741 | __u8 name[32]; /* Label */ |
742 | __u32 type; /* Type of input */ | 742 | __u32 type; /* Type of input */ |
743 | __u32 audioset; /* Associated audios (bitfield) */ | 743 | __u32 audioset; /* Associated audios (bitfield) */ |
744 | __u32 tuner; /* Associated tuner */ | 744 | __u32 tuner; /* Associated tuner */ |
745 | v4l2_std_id std; | 745 | v4l2_std_id std; |
746 | __u32 status; | 746 | __u32 status; |
747 | __u32 reserved[4]; | 747 | __u32 reserved[4]; |
748 | }; | 748 | }; |
749 | 749 | ||
750 | /* Values for the 'type' field */ | 750 | /* Values for the 'type' field */ |
@@ -779,13 +779,13 @@ struct <link linkend="v4l2-input">v4l2_input</link> { | |||
779 | * V I D E O O U T P U T S | 779 | * V I D E O O U T P U T S |
780 | */ | 780 | */ |
781 | struct <link linkend="v4l2-output">v4l2_output</link> { | 781 | struct <link linkend="v4l2-output">v4l2_output</link> { |
782 | __u32 index; /* Which output */ | 782 | __u32 index; /* Which output */ |
783 | __u8 name[32]; /* Label */ | 783 | __u8 name[32]; /* Label */ |
784 | __u32 type; /* Type of output */ | 784 | __u32 type; /* Type of output */ |
785 | __u32 audioset; /* Associated audios (bitfield) */ | 785 | __u32 audioset; /* Associated audios (bitfield) */ |
786 | __u32 modulator; /* Associated modulator */ | 786 | __u32 modulator; /* Associated modulator */ |
787 | v4l2_std_id std; | 787 | v4l2_std_id std; |
788 | __u32 reserved[4]; | 788 | __u32 reserved[4]; |
789 | }; | 789 | }; |
790 | /* Values for the 'type' field */ | 790 | /* Values for the 'type' field */ |
791 | #define V4L2_OUTPUT_TYPE_MODULATOR 1 | 791 | #define V4L2_OUTPUT_TYPE_MODULATOR 1 |
@@ -796,27 +796,27 @@ struct <link linkend="v4l2-output">v4l2_output</link> { | |||
796 | * C O N T R O L S | 796 | * C O N T R O L S |
797 | */ | 797 | */ |
798 | struct <link linkend="v4l2-control">v4l2_control</link> { | 798 | struct <link linkend="v4l2-control">v4l2_control</link> { |
799 | __u32 id; | 799 | __u32 id; |
800 | __s32 value; | 800 | __s32 value; |
801 | }; | 801 | }; |
802 | 802 | ||
803 | struct <link linkend="v4l2-ext-control">v4l2_ext_control</link> { | 803 | struct <link linkend="v4l2-ext-control">v4l2_ext_control</link> { |
804 | __u32 id; | 804 | __u32 id; |
805 | __u32 size; | 805 | __u32 size; |
806 | __u32 reserved2[1]; | 806 | __u32 reserved2[1]; |
807 | union { | 807 | union { |
808 | __s32 value; | 808 | __s32 value; |
809 | __s64 value64; | 809 | __s64 value64; |
810 | char *string; | 810 | char *string; |
811 | }; | 811 | }; |
812 | } __attribute__ ((packed)); | 812 | } __attribute__ ((packed)); |
813 | 813 | ||
814 | struct <link linkend="v4l2-ext-controls">v4l2_ext_controls</link> { | 814 | struct <link linkend="v4l2-ext-controls">v4l2_ext_controls</link> { |
815 | __u32 ctrl_class; | 815 | __u32 ctrl_class; |
816 | __u32 count; | 816 | __u32 count; |
817 | __u32 error_idx; | 817 | __u32 error_idx; |
818 | __u32 reserved[2]; | 818 | __u32 reserved[2]; |
819 | struct <link linkend="v4l2-ext-control">v4l2_ext_control</link> *controls; | 819 | struct <link linkend="v4l2-ext-control">v4l2_ext_control</link> *controls; |
820 | }; | 820 | }; |
821 | 821 | ||
822 | /* Values for ctrl_class field */ | 822 | /* Values for ctrl_class field */ |
@@ -831,23 +831,23 @@ struct <link linkend="v4l2-ext-controls">v4l2_ext_controls</link> { | |||
831 | 831 | ||
832 | /* Used in the VIDIOC_QUERYCTRL ioctl for querying controls */ | 832 | /* Used in the VIDIOC_QUERYCTRL ioctl for querying controls */ |
833 | struct <link linkend="v4l2-queryctrl">v4l2_queryctrl</link> { | 833 | struct <link linkend="v4l2-queryctrl">v4l2_queryctrl</link> { |
834 | __u32 id; | 834 | __u32 id; |
835 | enum <link linkend="v4l2-ctrl-type">v4l2_ctrl_type</link> type; | 835 | enum <link linkend="v4l2-ctrl-type">v4l2_ctrl_type</link> type; |
836 | __u8 name[32]; /* Whatever */ | 836 | __u8 name[32]; /* Whatever */ |
837 | __s32 minimum; /* Note signedness */ | 837 | __s32 minimum; /* Note signedness */ |
838 | __s32 maximum; | 838 | __s32 maximum; |
839 | __s32 step; | 839 | __s32 step; |
840 | __s32 default_value; | 840 | __s32 default_value; |
841 | __u32 flags; | 841 | __u32 flags; |
842 | __u32 reserved[2]; | 842 | __u32 reserved[2]; |
843 | }; | 843 | }; |
844 | 844 | ||
845 | /* Used in the VIDIOC_QUERYMENU ioctl for querying menu items */ | 845 | /* Used in the VIDIOC_QUERYMENU ioctl for querying menu items */ |
846 | struct <link linkend="v4l2-querymenu">v4l2_querymenu</link> { | 846 | struct <link linkend="v4l2-querymenu">v4l2_querymenu</link> { |
847 | __u32 id; | 847 | __u32 id; |
848 | __u32 index; | 848 | __u32 index; |
849 | __u8 name[32]; /* Whatever */ | 849 | __u8 name[32]; /* Whatever */ |
850 | __u32 reserved; | 850 | __u32 reserved; |
851 | }; | 851 | }; |
852 | 852 | ||
853 | /* Control flags */ | 853 | /* Control flags */ |
@@ -898,9 +898,9 @@ struct <link linkend="v4l2-querymenu">v4l2_querymenu</link> { | |||
898 | 898 | ||
899 | #define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE+24) | 899 | #define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE+24) |
900 | enum <link linkend="v4l2-power-line-frequency">v4l2_power_line_frequency</link> { | 900 | enum <link linkend="v4l2-power-line-frequency">v4l2_power_line_frequency</link> { |
901 | V4L2_CID_POWER_LINE_FREQUENCY_DISABLED = 0, | 901 | V4L2_CID_POWER_LINE_FREQUENCY_DISABLED = 0, |
902 | V4L2_CID_POWER_LINE_FREQUENCY_50HZ = 1, | 902 | V4L2_CID_POWER_LINE_FREQUENCY_50HZ = 1, |
903 | V4L2_CID_POWER_LINE_FREQUENCY_60HZ = 2, | 903 | V4L2_CID_POWER_LINE_FREQUENCY_60HZ = 2, |
904 | }; | 904 | }; |
905 | #define V4L2_CID_HUE_AUTO (V4L2_CID_BASE+25) | 905 | #define V4L2_CID_HUE_AUTO (V4L2_CID_BASE+25) |
906 | #define V4L2_CID_WHITE_BALANCE_TEMPERATURE (V4L2_CID_BASE+26) | 906 | #define V4L2_CID_WHITE_BALANCE_TEMPERATURE (V4L2_CID_BASE+26) |
@@ -910,9 +910,9 @@ enum <link linkend="v4l2-power-line-frequency">v4l2_power_line_frequency</link> | |||
910 | #define V4L2_CID_COLOR_KILLER (V4L2_CID_BASE+30) | 910 | #define V4L2_CID_COLOR_KILLER (V4L2_CID_BASE+30) |
911 | #define V4L2_CID_COLORFX (V4L2_CID_BASE+31) | 911 | #define V4L2_CID_COLORFX (V4L2_CID_BASE+31) |
912 | enum <link linkend="v4l2-colorfx">v4l2_colorfx</link> { | 912 | enum <link linkend="v4l2-colorfx">v4l2_colorfx</link> { |
913 | V4L2_COLORFX_NONE = 0, | 913 | V4L2_COLORFX_NONE = 0, |
914 | V4L2_COLORFX_BW = 1, | 914 | V4L2_COLORFX_BW = 1, |
915 | V4L2_COLORFX_SEPIA = 2, | 915 | V4L2_COLORFX_SEPIA = 2, |
916 | }; | 916 | }; |
917 | #define V4L2_CID_AUTOBRIGHTNESS (V4L2_CID_BASE+32) | 917 | #define V4L2_CID_AUTOBRIGHTNESS (V4L2_CID_BASE+32) |
918 | #define V4L2_CID_BAND_STOP_FILTER (V4L2_CID_BASE+33) | 918 | #define V4L2_CID_BAND_STOP_FILTER (V4L2_CID_BASE+33) |
@@ -929,12 +929,12 @@ enum <link linkend="v4l2-colorfx">v4l2_colorfx</link> { | |||
929 | /* MPEG streams */ | 929 | /* MPEG streams */ |
930 | #define V4L2_CID_MPEG_STREAM_TYPE (V4L2_CID_MPEG_BASE+0) | 930 | #define V4L2_CID_MPEG_STREAM_TYPE (V4L2_CID_MPEG_BASE+0) |
931 | enum <link linkend="v4l2-mpeg-stream-type">v4l2_mpeg_stream_type</link> { | 931 | enum <link linkend="v4l2-mpeg-stream-type">v4l2_mpeg_stream_type</link> { |
932 | V4L2_MPEG_STREAM_TYPE_MPEG2_PS = 0, /* MPEG-2 program stream */ | 932 | V4L2_MPEG_STREAM_TYPE_MPEG2_PS = 0, /* MPEG-2 program stream */ |
933 | V4L2_MPEG_STREAM_TYPE_MPEG2_TS = 1, /* MPEG-2 transport stream */ | 933 | V4L2_MPEG_STREAM_TYPE_MPEG2_TS = 1, /* MPEG-2 transport stream */ |
934 | V4L2_MPEG_STREAM_TYPE_MPEG1_SS = 2, /* MPEG-1 system stream */ | 934 | V4L2_MPEG_STREAM_TYPE_MPEG1_SS = 2, /* MPEG-1 system stream */ |
935 | V4L2_MPEG_STREAM_TYPE_MPEG2_DVD = 3, /* MPEG-2 DVD-compatible stream */ | 935 | V4L2_MPEG_STREAM_TYPE_MPEG2_DVD = 3, /* MPEG-2 DVD-compatible stream */ |
936 | V4L2_MPEG_STREAM_TYPE_MPEG1_VCD = 4, /* MPEG-1 VCD-compatible stream */ | 936 | V4L2_MPEG_STREAM_TYPE_MPEG1_VCD = 4, /* MPEG-1 VCD-compatible stream */ |
937 | V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD = 5, /* MPEG-2 SVCD-compatible stream */ | 937 | V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD = 5, /* MPEG-2 SVCD-compatible stream */ |
938 | }; | 938 | }; |
939 | #define V4L2_CID_MPEG_STREAM_PID_PMT (V4L2_CID_MPEG_BASE+1) | 939 | #define V4L2_CID_MPEG_STREAM_PID_PMT (V4L2_CID_MPEG_BASE+1) |
940 | #define V4L2_CID_MPEG_STREAM_PID_AUDIO (V4L2_CID_MPEG_BASE+2) | 940 | #define V4L2_CID_MPEG_STREAM_PID_AUDIO (V4L2_CID_MPEG_BASE+2) |
@@ -944,139 +944,139 @@ enum <link linkend="v4l2-mpeg-stream-type">v4l2_mpeg_stream_type</link> { | |||
944 | #define V4L2_CID_MPEG_STREAM_PES_ID_VIDEO (V4L2_CID_MPEG_BASE+6) | 944 | #define V4L2_CID_MPEG_STREAM_PES_ID_VIDEO (V4L2_CID_MPEG_BASE+6) |
945 | #define V4L2_CID_MPEG_STREAM_VBI_FMT (V4L2_CID_MPEG_BASE+7) | 945 | #define V4L2_CID_MPEG_STREAM_VBI_FMT (V4L2_CID_MPEG_BASE+7) |
946 | enum <link linkend="v4l2-mpeg-stream-vbi-fmt">v4l2_mpeg_stream_vbi_fmt</link> { | 946 | enum <link linkend="v4l2-mpeg-stream-vbi-fmt">v4l2_mpeg_stream_vbi_fmt</link> { |
947 | V4L2_MPEG_STREAM_VBI_FMT_NONE = 0, /* No VBI in the MPEG stream */ | 947 | V4L2_MPEG_STREAM_VBI_FMT_NONE = 0, /* No VBI in the MPEG stream */ |
948 | V4L2_MPEG_STREAM_VBI_FMT_IVTV = 1, /* VBI in private packets, IVTV format */ | 948 | V4L2_MPEG_STREAM_VBI_FMT_IVTV = 1, /* VBI in private packets, IVTV format */ |
949 | }; | 949 | }; |
950 | 950 | ||
951 | /* MPEG audio */ | 951 | /* MPEG audio */ |
952 | #define V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ (V4L2_CID_MPEG_BASE+100) | 952 | #define V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ (V4L2_CID_MPEG_BASE+100) |
953 | enum <link linkend="v4l2-mpeg-audio-sampling-freq">v4l2_mpeg_audio_sampling_freq</link> { | 953 | enum <link linkend="v4l2-mpeg-audio-sampling-freq">v4l2_mpeg_audio_sampling_freq</link> { |
954 | V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100 = 0, | 954 | V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100 = 0, |
955 | V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000 = 1, | 955 | V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000 = 1, |
956 | V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000 = 2, | 956 | V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000 = 2, |
957 | }; | 957 | }; |
958 | #define V4L2_CID_MPEG_AUDIO_ENCODING (V4L2_CID_MPEG_BASE+101) | 958 | #define V4L2_CID_MPEG_AUDIO_ENCODING (V4L2_CID_MPEG_BASE+101) |
959 | enum <link linkend="v4l2-mpeg-audio-encoding">v4l2_mpeg_audio_encoding</link> { | 959 | enum <link linkend="v4l2-mpeg-audio-encoding">v4l2_mpeg_audio_encoding</link> { |
960 | V4L2_MPEG_AUDIO_ENCODING_LAYER_1 = 0, | 960 | V4L2_MPEG_AUDIO_ENCODING_LAYER_1 = 0, |
961 | V4L2_MPEG_AUDIO_ENCODING_LAYER_2 = 1, | 961 | V4L2_MPEG_AUDIO_ENCODING_LAYER_2 = 1, |
962 | V4L2_MPEG_AUDIO_ENCODING_LAYER_3 = 2, | 962 | V4L2_MPEG_AUDIO_ENCODING_LAYER_3 = 2, |
963 | V4L2_MPEG_AUDIO_ENCODING_AAC = 3, | 963 | V4L2_MPEG_AUDIO_ENCODING_AAC = 3, |
964 | V4L2_MPEG_AUDIO_ENCODING_AC3 = 4, | 964 | V4L2_MPEG_AUDIO_ENCODING_AC3 = 4, |
965 | }; | 965 | }; |
966 | #define V4L2_CID_MPEG_AUDIO_L1_BITRATE (V4L2_CID_MPEG_BASE+102) | 966 | #define V4L2_CID_MPEG_AUDIO_L1_BITRATE (V4L2_CID_MPEG_BASE+102) |
967 | enum <link linkend="v4l2-mpeg-audio-l1-bitrate">v4l2_mpeg_audio_l1_bitrate</link> { | 967 | enum <link linkend="v4l2-mpeg-audio-l1-bitrate">v4l2_mpeg_audio_l1_bitrate</link> { |
968 | V4L2_MPEG_AUDIO_L1_BITRATE_32K = 0, | 968 | V4L2_MPEG_AUDIO_L1_BITRATE_32K = 0, |
969 | V4L2_MPEG_AUDIO_L1_BITRATE_64K = 1, | 969 | V4L2_MPEG_AUDIO_L1_BITRATE_64K = 1, |
970 | V4L2_MPEG_AUDIO_L1_BITRATE_96K = 2, | 970 | V4L2_MPEG_AUDIO_L1_BITRATE_96K = 2, |
971 | V4L2_MPEG_AUDIO_L1_BITRATE_128K = 3, | 971 | V4L2_MPEG_AUDIO_L1_BITRATE_128K = 3, |
972 | V4L2_MPEG_AUDIO_L1_BITRATE_160K = 4, | 972 | V4L2_MPEG_AUDIO_L1_BITRATE_160K = 4, |
973 | V4L2_MPEG_AUDIO_L1_BITRATE_192K = 5, | 973 | V4L2_MPEG_AUDIO_L1_BITRATE_192K = 5, |
974 | V4L2_MPEG_AUDIO_L1_BITRATE_224K = 6, | 974 | V4L2_MPEG_AUDIO_L1_BITRATE_224K = 6, |
975 | V4L2_MPEG_AUDIO_L1_BITRATE_256K = 7, | 975 | V4L2_MPEG_AUDIO_L1_BITRATE_256K = 7, |
976 | V4L2_MPEG_AUDIO_L1_BITRATE_288K = 8, | 976 | V4L2_MPEG_AUDIO_L1_BITRATE_288K = 8, |
977 | V4L2_MPEG_AUDIO_L1_BITRATE_320K = 9, | 977 | V4L2_MPEG_AUDIO_L1_BITRATE_320K = 9, |
978 | V4L2_MPEG_AUDIO_L1_BITRATE_352K = 10, | 978 | V4L2_MPEG_AUDIO_L1_BITRATE_352K = 10, |
979 | V4L2_MPEG_AUDIO_L1_BITRATE_384K = 11, | 979 | V4L2_MPEG_AUDIO_L1_BITRATE_384K = 11, |
980 | V4L2_MPEG_AUDIO_L1_BITRATE_416K = 12, | 980 | V4L2_MPEG_AUDIO_L1_BITRATE_416K = 12, |
981 | V4L2_MPEG_AUDIO_L1_BITRATE_448K = 13, | 981 | V4L2_MPEG_AUDIO_L1_BITRATE_448K = 13, |
982 | }; | 982 | }; |
983 | #define V4L2_CID_MPEG_AUDIO_L2_BITRATE (V4L2_CID_MPEG_BASE+103) | 983 | #define V4L2_CID_MPEG_AUDIO_L2_BITRATE (V4L2_CID_MPEG_BASE+103) |
984 | enum <link linkend="v4l2-mpeg-audio-l2-bitrate">v4l2_mpeg_audio_l2_bitrate</link> { | 984 | enum <link linkend="v4l2-mpeg-audio-l2-bitrate">v4l2_mpeg_audio_l2_bitrate</link> { |
985 | V4L2_MPEG_AUDIO_L2_BITRATE_32K = 0, | 985 | V4L2_MPEG_AUDIO_L2_BITRATE_32K = 0, |
986 | V4L2_MPEG_AUDIO_L2_BITRATE_48K = 1, | 986 | V4L2_MPEG_AUDIO_L2_BITRATE_48K = 1, |
987 | V4L2_MPEG_AUDIO_L2_BITRATE_56K = 2, | 987 | V4L2_MPEG_AUDIO_L2_BITRATE_56K = 2, |
988 | V4L2_MPEG_AUDIO_L2_BITRATE_64K = 3, | 988 | V4L2_MPEG_AUDIO_L2_BITRATE_64K = 3, |
989 | V4L2_MPEG_AUDIO_L2_BITRATE_80K = 4, | 989 | V4L2_MPEG_AUDIO_L2_BITRATE_80K = 4, |
990 | V4L2_MPEG_AUDIO_L2_BITRATE_96K = 5, | 990 | V4L2_MPEG_AUDIO_L2_BITRATE_96K = 5, |
991 | V4L2_MPEG_AUDIO_L2_BITRATE_112K = 6, | 991 | V4L2_MPEG_AUDIO_L2_BITRATE_112K = 6, |
992 | V4L2_MPEG_AUDIO_L2_BITRATE_128K = 7, | 992 | V4L2_MPEG_AUDIO_L2_BITRATE_128K = 7, |
993 | V4L2_MPEG_AUDIO_L2_BITRATE_160K = 8, | 993 | V4L2_MPEG_AUDIO_L2_BITRATE_160K = 8, |
994 | V4L2_MPEG_AUDIO_L2_BITRATE_192K = 9, | 994 | V4L2_MPEG_AUDIO_L2_BITRATE_192K = 9, |
995 | V4L2_MPEG_AUDIO_L2_BITRATE_224K = 10, | 995 | V4L2_MPEG_AUDIO_L2_BITRATE_224K = 10, |
996 | V4L2_MPEG_AUDIO_L2_BITRATE_256K = 11, | 996 | V4L2_MPEG_AUDIO_L2_BITRATE_256K = 11, |
997 | V4L2_MPEG_AUDIO_L2_BITRATE_320K = 12, | 997 | V4L2_MPEG_AUDIO_L2_BITRATE_320K = 12, |
998 | V4L2_MPEG_AUDIO_L2_BITRATE_384K = 13, | 998 | V4L2_MPEG_AUDIO_L2_BITRATE_384K = 13, |
999 | }; | 999 | }; |
1000 | #define V4L2_CID_MPEG_AUDIO_L3_BITRATE (V4L2_CID_MPEG_BASE+104) | 1000 | #define V4L2_CID_MPEG_AUDIO_L3_BITRATE (V4L2_CID_MPEG_BASE+104) |
1001 | enum <link linkend="v4l2-mpeg-audio-l3-bitrate">v4l2_mpeg_audio_l3_bitrate</link> { | 1001 | enum <link linkend="v4l2-mpeg-audio-l3-bitrate">v4l2_mpeg_audio_l3_bitrate</link> { |
1002 | V4L2_MPEG_AUDIO_L3_BITRATE_32K = 0, | 1002 | V4L2_MPEG_AUDIO_L3_BITRATE_32K = 0, |
1003 | V4L2_MPEG_AUDIO_L3_BITRATE_40K = 1, | 1003 | V4L2_MPEG_AUDIO_L3_BITRATE_40K = 1, |
1004 | V4L2_MPEG_AUDIO_L3_BITRATE_48K = 2, | 1004 | V4L2_MPEG_AUDIO_L3_BITRATE_48K = 2, |
1005 | V4L2_MPEG_AUDIO_L3_BITRATE_56K = 3, | 1005 | V4L2_MPEG_AUDIO_L3_BITRATE_56K = 3, |
1006 | V4L2_MPEG_AUDIO_L3_BITRATE_64K = 4, | 1006 | V4L2_MPEG_AUDIO_L3_BITRATE_64K = 4, |
1007 | V4L2_MPEG_AUDIO_L3_BITRATE_80K = 5, | 1007 | V4L2_MPEG_AUDIO_L3_BITRATE_80K = 5, |
1008 | V4L2_MPEG_AUDIO_L3_BITRATE_96K = 6, | 1008 | V4L2_MPEG_AUDIO_L3_BITRATE_96K = 6, |
1009 | V4L2_MPEG_AUDIO_L3_BITRATE_112K = 7, | 1009 | V4L2_MPEG_AUDIO_L3_BITRATE_112K = 7, |
1010 | V4L2_MPEG_AUDIO_L3_BITRATE_128K = 8, | 1010 | V4L2_MPEG_AUDIO_L3_BITRATE_128K = 8, |
1011 | V4L2_MPEG_AUDIO_L3_BITRATE_160K = 9, | 1011 | V4L2_MPEG_AUDIO_L3_BITRATE_160K = 9, |
1012 | V4L2_MPEG_AUDIO_L3_BITRATE_192K = 10, | 1012 | V4L2_MPEG_AUDIO_L3_BITRATE_192K = 10, |
1013 | V4L2_MPEG_AUDIO_L3_BITRATE_224K = 11, | 1013 | V4L2_MPEG_AUDIO_L3_BITRATE_224K = 11, |
1014 | V4L2_MPEG_AUDIO_L3_BITRATE_256K = 12, | 1014 | V4L2_MPEG_AUDIO_L3_BITRATE_256K = 12, |
1015 | V4L2_MPEG_AUDIO_L3_BITRATE_320K = 13, | 1015 | V4L2_MPEG_AUDIO_L3_BITRATE_320K = 13, |
1016 | }; | 1016 | }; |
1017 | #define V4L2_CID_MPEG_AUDIO_MODE (V4L2_CID_MPEG_BASE+105) | 1017 | #define V4L2_CID_MPEG_AUDIO_MODE (V4L2_CID_MPEG_BASE+105) |
1018 | enum <link linkend="v4l2-mpeg-audio-mode">v4l2_mpeg_audio_mode</link> { | 1018 | enum <link linkend="v4l2-mpeg-audio-mode">v4l2_mpeg_audio_mode</link> { |
1019 | V4L2_MPEG_AUDIO_MODE_STEREO = 0, | 1019 | V4L2_MPEG_AUDIO_MODE_STEREO = 0, |
1020 | V4L2_MPEG_AUDIO_MODE_JOINT_STEREO = 1, | 1020 | V4L2_MPEG_AUDIO_MODE_JOINT_STEREO = 1, |
1021 | V4L2_MPEG_AUDIO_MODE_DUAL = 2, | 1021 | V4L2_MPEG_AUDIO_MODE_DUAL = 2, |
1022 | V4L2_MPEG_AUDIO_MODE_MONO = 3, | 1022 | V4L2_MPEG_AUDIO_MODE_MONO = 3, |
1023 | }; | 1023 | }; |
1024 | #define V4L2_CID_MPEG_AUDIO_MODE_EXTENSION (V4L2_CID_MPEG_BASE+106) | 1024 | #define V4L2_CID_MPEG_AUDIO_MODE_EXTENSION (V4L2_CID_MPEG_BASE+106) |
1025 | enum <link linkend="v4l2-mpeg-audio-mode-extension">v4l2_mpeg_audio_mode_extension</link> { | 1025 | enum <link linkend="v4l2-mpeg-audio-mode-extension">v4l2_mpeg_audio_mode_extension</link> { |
1026 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4 = 0, | 1026 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4 = 0, |
1027 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8 = 1, | 1027 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8 = 1, |
1028 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12 = 2, | 1028 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12 = 2, |
1029 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16 = 3, | 1029 | V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16 = 3, |
1030 | }; | 1030 | }; |
1031 | #define V4L2_CID_MPEG_AUDIO_EMPHASIS (V4L2_CID_MPEG_BASE+107) | 1031 | #define V4L2_CID_MPEG_AUDIO_EMPHASIS (V4L2_CID_MPEG_BASE+107) |
1032 | enum <link linkend="v4l2-mpeg-audio-emphasis">v4l2_mpeg_audio_emphasis</link> { | 1032 | enum <link linkend="v4l2-mpeg-audio-emphasis">v4l2_mpeg_audio_emphasis</link> { |
1033 | V4L2_MPEG_AUDIO_EMPHASIS_NONE = 0, | 1033 | V4L2_MPEG_AUDIO_EMPHASIS_NONE = 0, |
1034 | V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS = 1, | 1034 | V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS = 1, |
1035 | V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17 = 2, | 1035 | V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17 = 2, |
1036 | }; | 1036 | }; |
1037 | #define V4L2_CID_MPEG_AUDIO_CRC (V4L2_CID_MPEG_BASE+108) | 1037 | #define V4L2_CID_MPEG_AUDIO_CRC (V4L2_CID_MPEG_BASE+108) |
1038 | enum <link linkend="v4l2-mpeg-audio-crc">v4l2_mpeg_audio_crc</link> { | 1038 | enum <link linkend="v4l2-mpeg-audio-crc">v4l2_mpeg_audio_crc</link> { |
1039 | V4L2_MPEG_AUDIO_CRC_NONE = 0, | 1039 | V4L2_MPEG_AUDIO_CRC_NONE = 0, |
1040 | V4L2_MPEG_AUDIO_CRC_CRC16 = 1, | 1040 | V4L2_MPEG_AUDIO_CRC_CRC16 = 1, |
1041 | }; | 1041 | }; |
1042 | #define V4L2_CID_MPEG_AUDIO_MUTE (V4L2_CID_MPEG_BASE+109) | 1042 | #define V4L2_CID_MPEG_AUDIO_MUTE (V4L2_CID_MPEG_BASE+109) |
1043 | #define V4L2_CID_MPEG_AUDIO_AAC_BITRATE (V4L2_CID_MPEG_BASE+110) | 1043 | #define V4L2_CID_MPEG_AUDIO_AAC_BITRATE (V4L2_CID_MPEG_BASE+110) |
1044 | #define V4L2_CID_MPEG_AUDIO_AC3_BITRATE (V4L2_CID_MPEG_BASE+111) | 1044 | #define V4L2_CID_MPEG_AUDIO_AC3_BITRATE (V4L2_CID_MPEG_BASE+111) |
1045 | enum <link linkend="v4l2-mpeg-audio-ac3-bitrate">v4l2_mpeg_audio_ac3_bitrate</link> { | 1045 | enum <link linkend="v4l2-mpeg-audio-ac3-bitrate">v4l2_mpeg_audio_ac3_bitrate</link> { |
1046 | V4L2_MPEG_AUDIO_AC3_BITRATE_32K = 0, | 1046 | V4L2_MPEG_AUDIO_AC3_BITRATE_32K = 0, |
1047 | V4L2_MPEG_AUDIO_AC3_BITRATE_40K = 1, | 1047 | V4L2_MPEG_AUDIO_AC3_BITRATE_40K = 1, |
1048 | V4L2_MPEG_AUDIO_AC3_BITRATE_48K = 2, | 1048 | V4L2_MPEG_AUDIO_AC3_BITRATE_48K = 2, |
1049 | V4L2_MPEG_AUDIO_AC3_BITRATE_56K = 3, | 1049 | V4L2_MPEG_AUDIO_AC3_BITRATE_56K = 3, |
1050 | V4L2_MPEG_AUDIO_AC3_BITRATE_64K = 4, | 1050 | V4L2_MPEG_AUDIO_AC3_BITRATE_64K = 4, |
1051 | V4L2_MPEG_AUDIO_AC3_BITRATE_80K = 5, | 1051 | V4L2_MPEG_AUDIO_AC3_BITRATE_80K = 5, |
1052 | V4L2_MPEG_AUDIO_AC3_BITRATE_96K = 6, | 1052 | V4L2_MPEG_AUDIO_AC3_BITRATE_96K = 6, |
1053 | V4L2_MPEG_AUDIO_AC3_BITRATE_112K = 7, | 1053 | V4L2_MPEG_AUDIO_AC3_BITRATE_112K = 7, |
1054 | V4L2_MPEG_AUDIO_AC3_BITRATE_128K = 8, | 1054 | V4L2_MPEG_AUDIO_AC3_BITRATE_128K = 8, |
1055 | V4L2_MPEG_AUDIO_AC3_BITRATE_160K = 9, | 1055 | V4L2_MPEG_AUDIO_AC3_BITRATE_160K = 9, |
1056 | V4L2_MPEG_AUDIO_AC3_BITRATE_192K = 10, | 1056 | V4L2_MPEG_AUDIO_AC3_BITRATE_192K = 10, |
1057 | V4L2_MPEG_AUDIO_AC3_BITRATE_224K = 11, | 1057 | V4L2_MPEG_AUDIO_AC3_BITRATE_224K = 11, |
1058 | V4L2_MPEG_AUDIO_AC3_BITRATE_256K = 12, | 1058 | V4L2_MPEG_AUDIO_AC3_BITRATE_256K = 12, |
1059 | V4L2_MPEG_AUDIO_AC3_BITRATE_320K = 13, | 1059 | V4L2_MPEG_AUDIO_AC3_BITRATE_320K = 13, |
1060 | V4L2_MPEG_AUDIO_AC3_BITRATE_384K = 14, | 1060 | V4L2_MPEG_AUDIO_AC3_BITRATE_384K = 14, |
1061 | V4L2_MPEG_AUDIO_AC3_BITRATE_448K = 15, | 1061 | V4L2_MPEG_AUDIO_AC3_BITRATE_448K = 15, |
1062 | V4L2_MPEG_AUDIO_AC3_BITRATE_512K = 16, | 1062 | V4L2_MPEG_AUDIO_AC3_BITRATE_512K = 16, |
1063 | V4L2_MPEG_AUDIO_AC3_BITRATE_576K = 17, | 1063 | V4L2_MPEG_AUDIO_AC3_BITRATE_576K = 17, |
1064 | V4L2_MPEG_AUDIO_AC3_BITRATE_640K = 18, | 1064 | V4L2_MPEG_AUDIO_AC3_BITRATE_640K = 18, |
1065 | }; | 1065 | }; |
1066 | 1066 | ||
1067 | /* MPEG video */ | 1067 | /* MPEG video */ |
1068 | #define V4L2_CID_MPEG_VIDEO_ENCODING (V4L2_CID_MPEG_BASE+200) | 1068 | #define V4L2_CID_MPEG_VIDEO_ENCODING (V4L2_CID_MPEG_BASE+200) |
1069 | enum <link linkend="v4l2-mpeg-video-encoding">v4l2_mpeg_video_encoding</link> { | 1069 | enum <link linkend="v4l2-mpeg-video-encoding">v4l2_mpeg_video_encoding</link> { |
1070 | V4L2_MPEG_VIDEO_ENCODING_MPEG_1 = 0, | 1070 | V4L2_MPEG_VIDEO_ENCODING_MPEG_1 = 0, |
1071 | V4L2_MPEG_VIDEO_ENCODING_MPEG_2 = 1, | 1071 | V4L2_MPEG_VIDEO_ENCODING_MPEG_2 = 1, |
1072 | V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC = 2, | 1072 | V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC = 2, |
1073 | }; | 1073 | }; |
1074 | #define V4L2_CID_MPEG_VIDEO_ASPECT (V4L2_CID_MPEG_BASE+201) | 1074 | #define V4L2_CID_MPEG_VIDEO_ASPECT (V4L2_CID_MPEG_BASE+201) |
1075 | enum <link linkend="v4l2-mpeg-video-aspect">v4l2_mpeg_video_aspect</link> { | 1075 | enum <link linkend="v4l2-mpeg-video-aspect">v4l2_mpeg_video_aspect</link> { |
1076 | V4L2_MPEG_VIDEO_ASPECT_1x1 = 0, | 1076 | V4L2_MPEG_VIDEO_ASPECT_1x1 = 0, |
1077 | V4L2_MPEG_VIDEO_ASPECT_4x3 = 1, | 1077 | V4L2_MPEG_VIDEO_ASPECT_4x3 = 1, |
1078 | V4L2_MPEG_VIDEO_ASPECT_16x9 = 2, | 1078 | V4L2_MPEG_VIDEO_ASPECT_16x9 = 2, |
1079 | V4L2_MPEG_VIDEO_ASPECT_221x100 = 3, | 1079 | V4L2_MPEG_VIDEO_ASPECT_221x100 = 3, |
1080 | }; | 1080 | }; |
1081 | #define V4L2_CID_MPEG_VIDEO_B_FRAMES (V4L2_CID_MPEG_BASE+202) | 1081 | #define V4L2_CID_MPEG_VIDEO_B_FRAMES (V4L2_CID_MPEG_BASE+202) |
1082 | #define V4L2_CID_MPEG_VIDEO_GOP_SIZE (V4L2_CID_MPEG_BASE+203) | 1082 | #define V4L2_CID_MPEG_VIDEO_GOP_SIZE (V4L2_CID_MPEG_BASE+203) |
@@ -1084,8 +1084,8 @@ enum <link linkend="v4l2-mpeg-video-aspect">v4l2_mpeg_video_aspect</link> { | |||
1084 | #define V4L2_CID_MPEG_VIDEO_PULLDOWN (V4L2_CID_MPEG_BASE+205) | 1084 | #define V4L2_CID_MPEG_VIDEO_PULLDOWN (V4L2_CID_MPEG_BASE+205) |
1085 | #define V4L2_CID_MPEG_VIDEO_BITRATE_MODE (V4L2_CID_MPEG_BASE+206) | 1085 | #define V4L2_CID_MPEG_VIDEO_BITRATE_MODE (V4L2_CID_MPEG_BASE+206) |
1086 | enum <link linkend="v4l2-mpeg-video-bitrate-mode">v4l2_mpeg_video_bitrate_mode</link> { | 1086 | enum <link linkend="v4l2-mpeg-video-bitrate-mode">v4l2_mpeg_video_bitrate_mode</link> { |
1087 | V4L2_MPEG_VIDEO_BITRATE_MODE_VBR = 0, | 1087 | V4L2_MPEG_VIDEO_BITRATE_MODE_VBR = 0, |
1088 | V4L2_MPEG_VIDEO_BITRATE_MODE_CBR = 1, | 1088 | V4L2_MPEG_VIDEO_BITRATE_MODE_CBR = 1, |
1089 | }; | 1089 | }; |
1090 | #define V4L2_CID_MPEG_VIDEO_BITRATE (V4L2_CID_MPEG_BASE+207) | 1090 | #define V4L2_CID_MPEG_VIDEO_BITRATE (V4L2_CID_MPEG_BASE+207) |
1091 | #define V4L2_CID_MPEG_VIDEO_BITRATE_PEAK (V4L2_CID_MPEG_BASE+208) | 1091 | #define V4L2_CID_MPEG_VIDEO_BITRATE_PEAK (V4L2_CID_MPEG_BASE+208) |
@@ -1097,36 +1097,36 @@ enum <link linkend="v4l2-mpeg-video-bitrate-mode">v4l2_mpeg_video_bitrate_mode</ | |||
1097 | #define V4L2_CID_MPEG_CX2341X_BASE (V4L2_CTRL_CLASS_MPEG | 0x1000) | 1097 | #define V4L2_CID_MPEG_CX2341X_BASE (V4L2_CTRL_CLASS_MPEG | 0x1000) |
1098 | #define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE+0) | 1098 | #define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE+0) |
1099 | enum <link linkend="v4l2-mpeg-cx2341x-video-spatial-filter-mode">v4l2_mpeg_cx2341x_video_spatial_filter_mode</link> { | 1099 | enum <link linkend="v4l2-mpeg-cx2341x-video-spatial-filter-mode">v4l2_mpeg_cx2341x_video_spatial_filter_mode</link> { |
1100 | V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL = 0, | 1100 | V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL = 0, |
1101 | V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO = 1, | 1101 | V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO = 1, |
1102 | }; | 1102 | }; |
1103 | #define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE+1) | 1103 | #define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE+1) |
1104 | #define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+2) | 1104 | #define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+2) |
1105 | enum <link linkend="luma-spatial-filter-type">v4l2_mpeg_cx2341x_video_luma_spatial_filter_type</link> { | 1105 | enum <link linkend="luma-spatial-filter-type">v4l2_mpeg_cx2341x_video_luma_spatial_filter_type</link> { |
1106 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF = 0, | 1106 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF = 0, |
1107 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR = 1, | 1107 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR = 1, |
1108 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT = 2, | 1108 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT = 2, |
1109 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE = 3, | 1109 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE = 3, |
1110 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE = 4, | 1110 | V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE = 4, |
1111 | }; | 1111 | }; |
1112 | #define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+3) | 1112 | #define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+3) |
1113 | enum <link linkend="chroma-spatial-filter-type">v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type</link> { | 1113 | enum <link linkend="chroma-spatial-filter-type">v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type</link> { |
1114 | V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF = 0, | 1114 | V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF = 0, |
1115 | V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR = 1, | 1115 | V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR = 1, |
1116 | }; | 1116 | }; |
1117 | #define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE+4) | 1117 | #define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE+4) |
1118 | enum <link linkend="v4l2-mpeg-cx2341x-video-temporal-filter-mode">v4l2_mpeg_cx2341x_video_temporal_filter_mode</link> { | 1118 | enum <link linkend="v4l2-mpeg-cx2341x-video-temporal-filter-mode">v4l2_mpeg_cx2341x_video_temporal_filter_mode</link> { |
1119 | V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL = 0, | 1119 | V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL = 0, |
1120 | V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO = 1, | 1120 | V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO = 1, |
1121 | }; | 1121 | }; |
1122 | #define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE+5) | 1122 | #define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE+5) |
1123 | #define V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+6) | 1123 | #define V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+6) |
1124 | enum <link linkend="v4l2-mpeg-cx2341x-video-median-filter-type">v4l2_mpeg_cx2341x_video_median_filter_type</link> { | 1124 | enum <link linkend="v4l2-mpeg-cx2341x-video-median-filter-type">v4l2_mpeg_cx2341x_video_median_filter_type</link> { |
1125 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF = 0, | 1125 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF = 0, |
1126 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR = 1, | 1126 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR = 1, |
1127 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT = 2, | 1127 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT = 2, |
1128 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT = 3, | 1128 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT = 3, |
1129 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG = 4, | 1129 | V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG = 4, |
1130 | }; | 1130 | }; |
1131 | #define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM (V4L2_CID_MPEG_CX2341X_BASE+7) | 1131 | #define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM (V4L2_CID_MPEG_CX2341X_BASE+7) |
1132 | #define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP (V4L2_CID_MPEG_CX2341X_BASE+8) | 1132 | #define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP (V4L2_CID_MPEG_CX2341X_BASE+8) |
@@ -1140,10 +1140,10 @@ enum <link linkend="v4l2-mpeg-cx2341x-video-median-filter-type">v4l2_mpeg_cx2341 | |||
1140 | 1140 | ||
1141 | #define V4L2_CID_EXPOSURE_AUTO (V4L2_CID_CAMERA_CLASS_BASE+1) | 1141 | #define V4L2_CID_EXPOSURE_AUTO (V4L2_CID_CAMERA_CLASS_BASE+1) |
1142 | enum <link linkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> { | 1142 | enum <link linkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> { |
1143 | V4L2_EXPOSURE_AUTO = 0, | 1143 | V4L2_EXPOSURE_AUTO = 0, |
1144 | V4L2_EXPOSURE_MANUAL = 1, | 1144 | V4L2_EXPOSURE_MANUAL = 1, |
1145 | V4L2_EXPOSURE_SHUTTER_PRIORITY = 2, | 1145 | V4L2_EXPOSURE_SHUTTER_PRIORITY = 2, |
1146 | V4L2_EXPOSURE_APERTURE_PRIORITY = 3 | 1146 | V4L2_EXPOSURE_APERTURE_PRIORITY = 3 |
1147 | }; | 1147 | }; |
1148 | #define V4L2_CID_EXPOSURE_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+2) | 1148 | #define V4L2_CID_EXPOSURE_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+2) |
1149 | #define V4L2_CID_EXPOSURE_AUTO_PRIORITY (V4L2_CID_CAMERA_CLASS_BASE+3) | 1149 | #define V4L2_CID_EXPOSURE_AUTO_PRIORITY (V4L2_CID_CAMERA_CLASS_BASE+3) |
@@ -1192,9 +1192,9 @@ enum <link linkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> { | |||
1192 | 1192 | ||
1193 | #define V4L2_CID_TUNE_PREEMPHASIS (V4L2_CID_FM_TX_CLASS_BASE + 112) | 1193 | #define V4L2_CID_TUNE_PREEMPHASIS (V4L2_CID_FM_TX_CLASS_BASE + 112) |
1194 | enum <link linkend="v4l2-preemphasis">v4l2_preemphasis</link> { | 1194 | enum <link linkend="v4l2-preemphasis">v4l2_preemphasis</link> { |
1195 | V4L2_PREEMPHASIS_DISABLED = 0, | 1195 | V4L2_PREEMPHASIS_DISABLED = 0, |
1196 | V4L2_PREEMPHASIS_50_uS = 1, | 1196 | V4L2_PREEMPHASIS_50_uS = 1, |
1197 | V4L2_PREEMPHASIS_75_uS = 2, | 1197 | V4L2_PREEMPHASIS_75_uS = 2, |
1198 | }; | 1198 | }; |
1199 | #define V4L2_CID_TUNE_POWER_LEVEL (V4L2_CID_FM_TX_CLASS_BASE + 113) | 1199 | #define V4L2_CID_TUNE_POWER_LEVEL (V4L2_CID_FM_TX_CLASS_BASE + 113) |
1200 | #define V4L2_CID_TUNE_ANTENNA_CAPACITOR (V4L2_CID_FM_TX_CLASS_BASE + 114) | 1200 | #define V4L2_CID_TUNE_ANTENNA_CAPACITOR (V4L2_CID_FM_TX_CLASS_BASE + 114) |
@@ -1203,27 +1203,27 @@ enum <link linkend="v4l2-preemphasis">v4l2_preemphasis</link> { | |||
1203 | * T U N I N G | 1203 | * T U N I N G |
1204 | */ | 1204 | */ |
1205 | struct <link linkend="v4l2-tuner">v4l2_tuner</link> { | 1205 | struct <link linkend="v4l2-tuner">v4l2_tuner</link> { |
1206 | __u32 index; | 1206 | __u32 index; |
1207 | __u8 name[32]; | 1207 | __u8 name[32]; |
1208 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> type; | 1208 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> type; |
1209 | __u32 capability; | 1209 | __u32 capability; |
1210 | __u32 rangelow; | 1210 | __u32 rangelow; |
1211 | __u32 rangehigh; | 1211 | __u32 rangehigh; |
1212 | __u32 rxsubchans; | 1212 | __u32 rxsubchans; |
1213 | __u32 audmode; | 1213 | __u32 audmode; |
1214 | __s32 signal; | 1214 | __s32 signal; |
1215 | __s32 afc; | 1215 | __s32 afc; |
1216 | __u32 reserved[4]; | 1216 | __u32 reserved[4]; |
1217 | }; | 1217 | }; |
1218 | 1218 | ||
1219 | struct <link linkend="v4l2-modulator">v4l2_modulator</link> { | 1219 | struct <link linkend="v4l2-modulator">v4l2_modulator</link> { |
1220 | __u32 index; | 1220 | __u32 index; |
1221 | __u8 name[32]; | 1221 | __u8 name[32]; |
1222 | __u32 capability; | 1222 | __u32 capability; |
1223 | __u32 rangelow; | 1223 | __u32 rangelow; |
1224 | __u32 rangehigh; | 1224 | __u32 rangehigh; |
1225 | __u32 txsubchans; | 1225 | __u32 txsubchans; |
1226 | __u32 reserved[4]; | 1226 | __u32 reserved[4]; |
1227 | }; | 1227 | }; |
1228 | 1228 | ||
1229 | /* Flags for the 'capability' field */ | 1229 | /* Flags for the 'capability' field */ |
@@ -1252,18 +1252,18 @@ struct <link linkend="v4l2-modulator">v4l2_modulator</link> { | |||
1252 | #define V4L2_TUNER_MODE_LANG1_LANG2 0x0004 | 1252 | #define V4L2_TUNER_MODE_LANG1_LANG2 0x0004 |
1253 | 1253 | ||
1254 | struct <link linkend="v4l2-frequency">v4l2_frequency</link> { | 1254 | struct <link linkend="v4l2-frequency">v4l2_frequency</link> { |
1255 | __u32 tuner; | 1255 | __u32 tuner; |
1256 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> type; | 1256 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> type; |
1257 | __u32 frequency; | 1257 | __u32 frequency; |
1258 | __u32 reserved[8]; | 1258 | __u32 reserved[8]; |
1259 | }; | 1259 | }; |
1260 | 1260 | ||
1261 | struct <link linkend="v4l2-hw-freq-seek">v4l2_hw_freq_seek</link> { | 1261 | struct <link linkend="v4l2-hw-freq-seek">v4l2_hw_freq_seek</link> { |
1262 | __u32 tuner; | 1262 | __u32 tuner; |
1263 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> type; | 1263 | enum <link linkend="v4l2-tuner-type">v4l2_tuner_type</link> type; |
1264 | __u32 seek_upward; | 1264 | __u32 seek_upward; |
1265 | __u32 wrap_around; | 1265 | __u32 wrap_around; |
1266 | __u32 reserved[8]; | 1266 | __u32 reserved[8]; |
1267 | }; | 1267 | }; |
1268 | 1268 | ||
1269 | /* | 1269 | /* |
@@ -1271,9 +1271,9 @@ struct <link linkend="v4l2-hw-freq-seek">v4l2_hw_freq_seek</link> { | |||
1271 | */ | 1271 | */ |
1272 | 1272 | ||
1273 | struct <link linkend="v4l2-rds-data">v4l2_rds_data</link> { | 1273 | struct <link linkend="v4l2-rds-data">v4l2_rds_data</link> { |
1274 | __u8 lsb; | 1274 | __u8 lsb; |
1275 | __u8 msb; | 1275 | __u8 msb; |
1276 | __u8 block; | 1276 | __u8 block; |
1277 | } __attribute__ ((packed)); | 1277 | } __attribute__ ((packed)); |
1278 | 1278 | ||
1279 | #define V4L2_RDS_BLOCK_MSK 0x7 | 1279 | #define V4L2_RDS_BLOCK_MSK 0x7 |
@@ -1291,11 +1291,11 @@ struct <link linkend="v4l2-rds-data">v4l2_rds_data</link> { | |||
1291 | * A U D I O | 1291 | * A U D I O |
1292 | */ | 1292 | */ |
1293 | struct <link linkend="v4l2-audio">v4l2_audio</link> { | 1293 | struct <link linkend="v4l2-audio">v4l2_audio</link> { |
1294 | __u32 index; | 1294 | __u32 index; |
1295 | __u8 name[32]; | 1295 | __u8 name[32]; |
1296 | __u32 capability; | 1296 | __u32 capability; |
1297 | __u32 mode; | 1297 | __u32 mode; |
1298 | __u32 reserved[2]; | 1298 | __u32 reserved[2]; |
1299 | }; | 1299 | }; |
1300 | 1300 | ||
1301 | /* Flags for the 'capability' field */ | 1301 | /* Flags for the 'capability' field */ |
@@ -1306,11 +1306,11 @@ struct <link linkend="v4l2-audio">v4l2_audio</link> { | |||
1306 | #define V4L2_AUDMODE_AVL 0x00001 | 1306 | #define V4L2_AUDMODE_AVL 0x00001 |
1307 | 1307 | ||
1308 | struct <link linkend="v4l2-audioout">v4l2_audioout</link> { | 1308 | struct <link linkend="v4l2-audioout">v4l2_audioout</link> { |
1309 | __u32 index; | 1309 | __u32 index; |
1310 | __u8 name[32]; | 1310 | __u8 name[32]; |
1311 | __u32 capability; | 1311 | __u32 capability; |
1312 | __u32 mode; | 1312 | __u32 mode; |
1313 | __u32 reserved[2]; | 1313 | __u32 reserved[2]; |
1314 | }; | 1314 | }; |
1315 | 1315 | ||
1316 | /* | 1316 | /* |
@@ -1325,19 +1325,19 @@ struct <link linkend="v4l2-audioout">v4l2_audioout</link> { | |||
1325 | #define V4L2_ENC_IDX_FRAME_MASK (0xf) | 1325 | #define V4L2_ENC_IDX_FRAME_MASK (0xf) |
1326 | 1326 | ||
1327 | struct <link linkend="v4l2-enc-idx-entry">v4l2_enc_idx_entry</link> { | 1327 | struct <link linkend="v4l2-enc-idx-entry">v4l2_enc_idx_entry</link> { |
1328 | __u64 offset; | 1328 | __u64 offset; |
1329 | __u64 pts; | 1329 | __u64 pts; |
1330 | __u32 length; | 1330 | __u32 length; |
1331 | __u32 flags; | 1331 | __u32 flags; |
1332 | __u32 reserved[2]; | 1332 | __u32 reserved[2]; |
1333 | }; | 1333 | }; |
1334 | 1334 | ||
1335 | #define V4L2_ENC_IDX_ENTRIES (64) | 1335 | #define V4L2_ENC_IDX_ENTRIES (64) |
1336 | struct <link linkend="v4l2-enc-idx">v4l2_enc_idx</link> { | 1336 | struct <link linkend="v4l2-enc-idx">v4l2_enc_idx</link> { |
1337 | __u32 entries; | 1337 | __u32 entries; |
1338 | __u32 entries_cap; | 1338 | __u32 entries_cap; |
1339 | __u32 reserved[4]; | 1339 | __u32 reserved[4]; |
1340 | struct <link linkend="v4l2-enc-idx-entry">v4l2_enc_idx_entry</link> entry[V4L2_ENC_IDX_ENTRIES]; | 1340 | struct <link linkend="v4l2-enc-idx-entry">v4l2_enc_idx_entry</link> entry[V4L2_ENC_IDX_ENTRIES]; |
1341 | }; | 1341 | }; |
1342 | 1342 | ||
1343 | 1343 | ||
@@ -1350,13 +1350,13 @@ struct <link linkend="v4l2-enc-idx">v4l2_enc_idx</link> { | |||
1350 | #define V4L2_ENC_CMD_STOP_AT_GOP_END (1 << 0) | 1350 | #define V4L2_ENC_CMD_STOP_AT_GOP_END (1 << 0) |
1351 | 1351 | ||
1352 | struct <link linkend="v4l2-encoder-cmd">v4l2_encoder_cmd</link> { | 1352 | struct <link linkend="v4l2-encoder-cmd">v4l2_encoder_cmd</link> { |
1353 | __u32 cmd; | 1353 | __u32 cmd; |
1354 | __u32 flags; | 1354 | __u32 flags; |
1355 | union { | 1355 | union { |
1356 | struct { | 1356 | struct { |
1357 | __u32 data[8]; | 1357 | __u32 data[8]; |
1358 | } raw; | 1358 | } raw; |
1359 | }; | 1359 | }; |
1360 | }; | 1360 | }; |
1361 | 1361 | ||
1362 | #endif | 1362 | #endif |
@@ -1370,14 +1370,14 @@ struct <link linkend="v4l2-encoder-cmd">v4l2_encoder_cmd</link> { | |||
1370 | 1370 | ||
1371 | /* Raw VBI */ | 1371 | /* Raw VBI */ |
1372 | struct <link linkend="v4l2-vbi-format">v4l2_vbi_format</link> { | 1372 | struct <link linkend="v4l2-vbi-format">v4l2_vbi_format</link> { |
1373 | __u32 sampling_rate; /* in 1 Hz */ | 1373 | __u32 sampling_rate; /* in 1 Hz */ |
1374 | __u32 offset; | 1374 | __u32 offset; |
1375 | __u32 samples_per_line; | 1375 | __u32 samples_per_line; |
1376 | __u32 sample_format; /* V4L2_PIX_FMT_* */ | 1376 | __u32 sample_format; /* V4L2_PIX_FMT_* */ |
1377 | __s32 start[2]; | 1377 | __s32 start[2]; |
1378 | __u32 count[2]; | 1378 | __u32 count[2]; |
1379 | __u32 flags; /* V4L2_VBI_* */ | 1379 | __u32 flags; /* V4L2_VBI_* */ |
1380 | __u32 reserved[2]; /* must be zero */ | 1380 | __u32 reserved[2]; /* must be zero */ |
1381 | }; | 1381 | }; |
1382 | 1382 | ||
1383 | /* VBI flags */ | 1383 | /* VBI flags */ |
@@ -1392,14 +1392,14 @@ struct <link linkend="v4l2-vbi-format">v4l2_vbi_format</link> { | |||
1392 | */ | 1392 | */ |
1393 | 1393 | ||
1394 | struct <link linkend="v4l2-sliced-vbi-format">v4l2_sliced_vbi_format</link> { | 1394 | struct <link linkend="v4l2-sliced-vbi-format">v4l2_sliced_vbi_format</link> { |
1395 | __u16 service_set; | 1395 | __u16 service_set; |
1396 | /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field | 1396 | /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field |
1397 | service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field | 1397 | service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field |
1398 | (equals frame lines 313-336 for 625 line video | 1398 | (equals frame lines 313-336 for 625 line video |
1399 | standards, 263-286 for 525 line standards) */ | 1399 | standards, 263-286 for 525 line standards) */ |
1400 | __u16 service_lines[2][24]; | 1400 | __u16 service_lines[2][24]; |
1401 | __u32 io_size; | 1401 | __u32 io_size; |
1402 | __u32 reserved[2]; /* must be zero */ | 1402 | __u32 reserved[2]; /* must be zero */ |
1403 | }; | 1403 | }; |
1404 | 1404 | ||
1405 | /* Teletext World System Teletext | 1405 | /* Teletext World System Teletext |
@@ -1416,22 +1416,22 @@ struct <link linkend="v4l2-sliced-vbi-format">v4l2_sliced_vbi_format</link> { | |||
1416 | #define V4L2_SLICED_VBI_625 (V4L2_SLICED_TELETEXT_B | V4L2_SLICED_VPS | V4L2_SLICED_WSS_625) | 1416 | #define V4L2_SLICED_VBI_625 (V4L2_SLICED_TELETEXT_B | V4L2_SLICED_VPS | V4L2_SLICED_WSS_625) |
1417 | 1417 | ||
1418 | struct <link linkend="v4l2-sliced-vbi-cap">v4l2_sliced_vbi_cap</link> { | 1418 | struct <link linkend="v4l2-sliced-vbi-cap">v4l2_sliced_vbi_cap</link> { |
1419 | __u16 service_set; | 1419 | __u16 service_set; |
1420 | /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field | 1420 | /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field |
1421 | service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field | 1421 | service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field |
1422 | (equals frame lines 313-336 for 625 line video | 1422 | (equals frame lines 313-336 for 625 line video |
1423 | standards, 263-286 for 525 line standards) */ | 1423 | standards, 263-286 for 525 line standards) */ |
1424 | __u16 service_lines[2][24]; | 1424 | __u16 service_lines[2][24]; |
1425 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; | 1425 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; |
1426 | __u32 reserved[3]; /* must be 0 */ | 1426 | __u32 reserved[3]; /* must be 0 */ |
1427 | }; | 1427 | }; |
1428 | 1428 | ||
1429 | struct <link linkend="v4l2-sliced-vbi-data">v4l2_sliced_vbi_data</link> { | 1429 | struct <link linkend="v4l2-sliced-vbi-data">v4l2_sliced_vbi_data</link> { |
1430 | __u32 id; | 1430 | __u32 id; |
1431 | __u32 field; /* 0: first field, 1: second field */ | 1431 | __u32 field; /* 0: first field, 1: second field */ |
1432 | __u32 line; /* 1-23 */ | 1432 | __u32 line; /* 1-23 */ |
1433 | __u32 reserved; /* must be 0 */ | 1433 | __u32 reserved; /* must be 0 */ |
1434 | __u8 data[48]; | 1434 | __u8 data[48]; |
1435 | }; | 1435 | }; |
1436 | 1436 | ||
1437 | /* | 1437 | /* |
@@ -1457,28 +1457,28 @@ struct <link linkend="v4l2-sliced-vbi-data">v4l2_sliced_vbi_data</link> { | |||
1457 | #define V4L2_MPEG_VBI_IVTV_VPS (7) | 1457 | #define V4L2_MPEG_VBI_IVTV_VPS (7) |
1458 | 1458 | ||
1459 | struct <link linkend="v4l2-mpeg-vbi-itv0-line">v4l2_mpeg_vbi_itv0_line</link> { | 1459 | struct <link linkend="v4l2-mpeg-vbi-itv0-line">v4l2_mpeg_vbi_itv0_line</link> { |
1460 | __u8 id; /* One of V4L2_MPEG_VBI_IVTV_* above */ | 1460 | __u8 id; /* One of V4L2_MPEG_VBI_IVTV_* above */ |
1461 | __u8 data[42]; /* Sliced VBI data for the line */ | 1461 | __u8 data[42]; /* Sliced VBI data for the line */ |
1462 | } __attribute__ ((packed)); | 1462 | } __attribute__ ((packed)); |
1463 | 1463 | ||
1464 | struct <link linkend="v4l2-mpeg-vbi-itv0">v4l2_mpeg_vbi_itv0</link> { | 1464 | struct <link linkend="v4l2-mpeg-vbi-itv0">v4l2_mpeg_vbi_itv0</link> { |
1465 | __le32 linemask[2]; /* Bitmasks of VBI service lines present */ | 1465 | __le32 linemask[2]; /* Bitmasks of VBI service lines present */ |
1466 | struct <link linkend="v4l2-mpeg-vbi-itv0-line">v4l2_mpeg_vbi_itv0_line</link> line[35]; | 1466 | struct <link linkend="v4l2-mpeg-vbi-itv0-line">v4l2_mpeg_vbi_itv0_line</link> line[35]; |
1467 | } __attribute__ ((packed)); | 1467 | } __attribute__ ((packed)); |
1468 | 1468 | ||
1469 | struct <link linkend="v4l2-mpeg-vbi-itv0-1">v4l2_mpeg_vbi_ITV0</link> { | 1469 | struct <link linkend="v4l2-mpeg-vbi-itv0-1">v4l2_mpeg_vbi_ITV0</link> { |
1470 | struct <link linkend="v4l2-mpeg-vbi-itv0-line">v4l2_mpeg_vbi_itv0_line</link> line[36]; | 1470 | struct <link linkend="v4l2-mpeg-vbi-itv0-line">v4l2_mpeg_vbi_itv0_line</link> line[36]; |
1471 | } __attribute__ ((packed)); | 1471 | } __attribute__ ((packed)); |
1472 | 1472 | ||
1473 | #define V4L2_MPEG_VBI_IVTV_MAGIC0 "itv0" | 1473 | #define V4L2_MPEG_VBI_IVTV_MAGIC0 "itv0" |
1474 | #define V4L2_MPEG_VBI_IVTV_MAGIC1 "ITV0" | 1474 | #define V4L2_MPEG_VBI_IVTV_MAGIC1 "ITV0" |
1475 | 1475 | ||
1476 | struct <link linkend="v4l2-mpeg-vbi-fmt-ivtv">v4l2_mpeg_vbi_fmt_ivtv</link> { | 1476 | struct <link linkend="v4l2-mpeg-vbi-fmt-ivtv">v4l2_mpeg_vbi_fmt_ivtv</link> { |
1477 | __u8 magic[4]; | 1477 | __u8 magic[4]; |
1478 | union { | 1478 | union { |
1479 | struct <link linkend="v4l2-mpeg-vbi-itv0">v4l2_mpeg_vbi_itv0</link> itv0; | 1479 | struct <link linkend="v4l2-mpeg-vbi-itv0">v4l2_mpeg_vbi_itv0</link> itv0; |
1480 | struct <link linkend="v4l2-mpeg-vbi-itv0-1">v4l2_mpeg_vbi_ITV0</link> ITV0; | 1480 | struct <link linkend="v4l2-mpeg-vbi-itv0-1">v4l2_mpeg_vbi_ITV0</link> ITV0; |
1481 | }; | 1481 | }; |
1482 | } __attribute__ ((packed)); | 1482 | } __attribute__ ((packed)); |
1483 | 1483 | ||
1484 | /* | 1484 | /* |
@@ -1488,26 +1488,26 @@ struct <link linkend="v4l2-mpeg-vbi-fmt-ivtv">v4l2_mpeg_vbi_fmt_ivtv</link> { | |||
1488 | /* Stream data format | 1488 | /* Stream data format |
1489 | */ | 1489 | */ |
1490 | struct <link linkend="v4l2-format">v4l2_format</link> { | 1490 | struct <link linkend="v4l2-format">v4l2_format</link> { |
1491 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; | 1491 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; |
1492 | union { | 1492 | union { |
1493 | struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> pix; /* V4L2_BUF_TYPE_VIDEO_CAPTURE */ | 1493 | struct <link linkend="v4l2-pix-format">v4l2_pix_format</link> pix; /* V4L2_BUF_TYPE_VIDEO_CAPTURE */ |
1494 | struct <link linkend="v4l2-window">v4l2_window</link> win; /* V4L2_BUF_TYPE_VIDEO_OVERLAY */ | 1494 | struct <link linkend="v4l2-window">v4l2_window</link> win; /* V4L2_BUF_TYPE_VIDEO_OVERLAY */ |
1495 | struct <link linkend="v4l2-vbi-format">v4l2_vbi_format</link> vbi; /* V4L2_BUF_TYPE_VBI_CAPTURE */ | 1495 | struct <link linkend="v4l2-vbi-format">v4l2_vbi_format</link> vbi; /* V4L2_BUF_TYPE_VBI_CAPTURE */ |
1496 | struct <link linkend="v4l2-sliced-vbi-format">v4l2_sliced_vbi_format</link> sliced; /* V4L2_BUF_TYPE_SLICED_VBI_CAPTURE */ | 1496 | struct <link linkend="v4l2-sliced-vbi-format">v4l2_sliced_vbi_format</link> sliced; /* V4L2_BUF_TYPE_SLICED_VBI_CAPTURE */ |
1497 | __u8 raw_data[200]; /* user-defined */ | 1497 | __u8 raw_data[200]; /* user-defined */ |
1498 | } fmt; | 1498 | } fmt; |
1499 | }; | 1499 | }; |
1500 | 1500 | ||
1501 | 1501 | ||
1502 | /* Stream type-dependent parameters | 1502 | /* Stream type-dependent parameters |
1503 | */ | 1503 | */ |
1504 | struct <link linkend="v4l2-streamparm">v4l2_streamparm</link> { | 1504 | struct <link linkend="v4l2-streamparm">v4l2_streamparm</link> { |
1505 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; | 1505 | enum <link linkend="v4l2-buf-type">v4l2_buf_type</link> type; |
1506 | union { | 1506 | union { |
1507 | struct <link linkend="v4l2-captureparm">v4l2_captureparm</link> capture; | 1507 | struct <link linkend="v4l2-captureparm">v4l2_captureparm</link> capture; |
1508 | struct <link linkend="v4l2-outputparm">v4l2_outputparm</link> output; | 1508 | struct <link linkend="v4l2-outputparm">v4l2_outputparm</link> output; |
1509 | __u8 raw_data[200]; /* user-defined */ | 1509 | __u8 raw_data[200]; /* user-defined */ |
1510 | } parm; | 1510 | } parm; |
1511 | }; | 1511 | }; |
1512 | 1512 | ||
1513 | /* | 1513 | /* |
@@ -1525,25 +1525,25 @@ struct <link linkend="v4l2-streamparm">v4l2_streamparm</link> { | |||
1525 | #define V4L2_CHIP_MATCH_AC97 3 /* Match against anciliary AC97 chip */ | 1525 | #define V4L2_CHIP_MATCH_AC97 3 /* Match against anciliary AC97 chip */ |
1526 | 1526 | ||
1527 | struct <link linkend="v4l2-dbg-match">v4l2_dbg_match</link> { | 1527 | struct <link linkend="v4l2-dbg-match">v4l2_dbg_match</link> { |
1528 | __u32 type; /* Match type */ | 1528 | __u32 type; /* Match type */ |
1529 | union { /* Match this chip, meaning determined by type */ | 1529 | union { /* Match this chip, meaning determined by type */ |
1530 | __u32 addr; | 1530 | __u32 addr; |
1531 | char name[32]; | 1531 | char name[32]; |
1532 | }; | 1532 | }; |
1533 | } __attribute__ ((packed)); | 1533 | } __attribute__ ((packed)); |
1534 | 1534 | ||
1535 | struct <link linkend="v4l2-dbg-register">v4l2_dbg_register</link> { | 1535 | struct <link linkend="v4l2-dbg-register">v4l2_dbg_register</link> { |
1536 | struct <link linkend="v4l2-dbg-match">v4l2_dbg_match</link> match; | 1536 | struct <link linkend="v4l2-dbg-match">v4l2_dbg_match</link> match; |
1537 | __u32 size; /* register size in bytes */ | 1537 | __u32 size; /* register size in bytes */ |
1538 | __u64 reg; | 1538 | __u64 reg; |
1539 | __u64 val; | 1539 | __u64 val; |
1540 | } __attribute__ ((packed)); | 1540 | } __attribute__ ((packed)); |
1541 | 1541 | ||
1542 | /* VIDIOC_DBG_G_CHIP_IDENT */ | 1542 | /* VIDIOC_DBG_G_CHIP_IDENT */ |
1543 | struct <link linkend="v4l2-dbg-chip-ident">v4l2_dbg_chip_ident</link> { | 1543 | struct <link linkend="v4l2-dbg-chip-ident">v4l2_dbg_chip_ident</link> { |
1544 | struct <link linkend="v4l2-dbg-match">v4l2_dbg_match</link> match; | 1544 | struct <link linkend="v4l2-dbg-match">v4l2_dbg_match</link> match; |
1545 | __u32 ident; /* chip identifier as specified in <media/v4l2-chip-ident.h> */ | 1545 | __u32 ident; /* chip identifier as specified in <media/v4l2-chip-ident.h> */ |
1546 | __u32 revision; /* chip revision, chip specific */ | 1546 | __u32 revision; /* chip revision, chip specific */ |
1547 | } __attribute__ ((packed)); | 1547 | } __attribute__ ((packed)); |
1548 | 1548 | ||
1549 | /* | 1549 | /* |