aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/videodev2.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/videodev2.h')
-rw-r--r--include/linux/videodev2.h118
1 files changed, 59 insertions, 59 deletions
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 27979003db44..a9a0999be702 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -24,7 +24,7 @@
24 24
25/* Four-character-code (FOURCC) */ 25/* Four-character-code (FOURCC) */
26#define v4l2_fourcc(a,b,c,d)\ 26#define v4l2_fourcc(a,b,c,d)\
27 (((__u32)(a)<<0)|((__u32)(b)<<8)|((__u32)(c)<<16)|((__u32)(d)<<24)) 27 (((__u32)(a)<<0)|((__u32)(b)<<8)|((__u32)(c)<<16)|((__u32)(d)<<24))
28 28
29/* 29/*
30 * E N U M S 30 * E N U M S
@@ -154,20 +154,20 @@ struct v4l2_capability
154}; 154};
155 155
156/* Values for 'capabilities' field */ 156/* Values for 'capabilities' field */
157#define V4L2_CAP_VIDEO_CAPTURE 0x00000001 /* Is a video capture device */ 157#define V4L2_CAP_VIDEO_CAPTURE 0x00000001 /* Is a video capture device */
158#define V4L2_CAP_VIDEO_OUTPUT 0x00000002 /* Is a video output device */ 158#define V4L2_CAP_VIDEO_OUTPUT 0x00000002 /* Is a video output device */
159#define V4L2_CAP_VIDEO_OVERLAY 0x00000004 /* Can do video overlay */ 159#define V4L2_CAP_VIDEO_OVERLAY 0x00000004 /* Can do video overlay */
160#define V4L2_CAP_VBI_CAPTURE 0x00000010 /* Is a raw VBI capture device */ 160#define V4L2_CAP_VBI_CAPTURE 0x00000010 /* Is a raw VBI capture device */
161#define V4L2_CAP_VBI_OUTPUT 0x00000020 /* Is a raw VBI output device */ 161#define V4L2_CAP_VBI_OUTPUT 0x00000020 /* Is a raw VBI output device */
162#if 1 162#if 1
163#define V4L2_CAP_SLICED_VBI_CAPTURE 0x00000040 /* Is a sliced VBI capture device */ 163#define V4L2_CAP_SLICED_VBI_CAPTURE 0x00000040 /* Is a sliced VBI capture device */
164#define V4L2_CAP_SLICED_VBI_OUTPUT 0x00000080 /* Is a sliced VBI output device */ 164#define V4L2_CAP_SLICED_VBI_OUTPUT 0x00000080 /* Is a sliced VBI output device */
165#endif 165#endif
166#define V4L2_CAP_RDS_CAPTURE 0x00000100 /* RDS data capture */ 166#define V4L2_CAP_RDS_CAPTURE 0x00000100 /* RDS data capture */
167 167
168#define V4L2_CAP_TUNER 0x00010000 /* has a tuner */ 168#define V4L2_CAP_TUNER 0x00010000 /* has a tuner */
169#define V4L2_CAP_AUDIO 0x00020000 /* has audio support */ 169#define V4L2_CAP_AUDIO 0x00020000 /* has audio support */
170#define V4L2_CAP_RADIO 0x00040000 /* is a radio device */ 170#define V4L2_CAP_RADIO 0x00040000 /* is a radio device */
171 171
172#define V4L2_CAP_READWRITE 0x01000000 /* read/write systemcalls */ 172#define V4L2_CAP_READWRITE 0x01000000 /* read/write systemcalls */
173#define V4L2_CAP_ASYNCIO 0x02000000 /* async I/O */ 173#define V4L2_CAP_ASYNCIO 0x02000000 /* async I/O */
@@ -179,13 +179,13 @@ struct v4l2_capability
179 179
180struct v4l2_pix_format 180struct v4l2_pix_format
181{ 181{
182 __u32 width; 182 __u32 width;
183 __u32 height; 183 __u32 height;
184 __u32 pixelformat; 184 __u32 pixelformat;
185 enum v4l2_field field; 185 enum v4l2_field field;
186 __u32 bytesperline; /* for padding, zero if unused */ 186 __u32 bytesperline; /* for padding, zero if unused */
187 __u32 sizeimage; 187 __u32 sizeimage;
188 enum v4l2_colorspace colorspace; 188 enum v4l2_colorspace colorspace;
189 __u32 priv; /* private data, depends on pixelformat */ 189 __u32 priv; /* private data, depends on pixelformat */
190}; 190};
191 191
@@ -238,12 +238,12 @@ struct v4l2_pix_format
238 */ 238 */
239struct v4l2_fmtdesc 239struct v4l2_fmtdesc
240{ 240{
241 __u32 index; /* Format number */ 241 __u32 index; /* Format number */
242 enum v4l2_buf_type type; /* buffer type */ 242 enum v4l2_buf_type type; /* buffer type */
243 __u32 flags; 243 __u32 flags;
244 __u8 description[32]; /* Description string */ 244 __u8 description[32]; /* Description string */
245 __u32 pixelformat; /* Format fourcc */ 245 __u32 pixelformat; /* Format fourcc */
246 __u32 reserved[4]; 246 __u32 reserved[4];
247}; 247};
248 248
249#define V4L2_FMT_FLAG_COMPRESSED 0x0001 249#define V4L2_FMT_FLAG_COMPRESSED 0x0001
@@ -393,7 +393,7 @@ struct v4l2_jpegcompression
393#define V4L2_JPEG_MARKER_DRI (1<<5) /* Define Restart Interval */ 393#define V4L2_JPEG_MARKER_DRI (1<<5) /* Define Restart Interval */
394#define V4L2_JPEG_MARKER_COM (1<<6) /* Comment segment */ 394#define V4L2_JPEG_MARKER_COM (1<<6) /* Comment segment */
395#define V4L2_JPEG_MARKER_APP (1<<7) /* App segment, driver will 395#define V4L2_JPEG_MARKER_APP (1<<7) /* App segment, driver will
396 * allways use APP0 */ 396 * allways use APP0 */
397}; 397};
398 398
399 399
@@ -402,10 +402,10 @@ struct v4l2_jpegcompression
402 */ 402 */
403struct v4l2_requestbuffers 403struct v4l2_requestbuffers
404{ 404{
405 __u32 count; 405 __u32 count;
406 enum v4l2_buf_type type; 406 enum v4l2_buf_type type;
407 enum v4l2_memory memory; 407 enum v4l2_memory memory;
408 __u32 reserved[2]; 408 __u32 reserved[2];
409}; 409};
410 410
411struct v4l2_buffer 411struct v4l2_buffer
@@ -511,9 +511,9 @@ struct v4l2_outputparm
511 511
512struct v4l2_cropcap { 512struct v4l2_cropcap {
513 enum v4l2_buf_type type; 513 enum v4l2_buf_type type;
514 struct v4l2_rect bounds; 514 struct v4l2_rect bounds;
515 struct v4l2_rect defrect; 515 struct v4l2_rect defrect;
516 struct v4l2_fract pixelaspect; 516 struct v4l2_fract pixelaspect;
517}; 517};
518 518
519struct v4l2_crop { 519struct v4l2_crop {
@@ -587,7 +587,7 @@ typedef __u64 v4l2_std_id;
587 V4L2_STD_PAL_Nc |\ 587 V4L2_STD_PAL_Nc |\
588 V4L2_STD_SECAM) 588 V4L2_STD_SECAM)
589#define V4L2_STD_ATSC (V4L2_STD_ATSC_8_VSB |\ 589#define V4L2_STD_ATSC (V4L2_STD_ATSC_8_VSB |\
590 V4L2_STD_ATSC_16_VSB) 590 V4L2_STD_ATSC_16_VSB)
591 591
592#define V4L2_STD_UNKNOWN 0 592#define V4L2_STD_UNKNOWN 0
593#define V4L2_STD_ALL (V4L2_STD_525_60 |\ 593#define V4L2_STD_ALL (V4L2_STD_525_60 |\
@@ -595,7 +595,7 @@ typedef __u64 v4l2_std_id;
595 595
596struct v4l2_standard 596struct v4l2_standard
597{ 597{
598 __u32 index; 598 __u32 index;
599 v4l2_std_id id; 599 v4l2_std_id id;
600 __u8 name[24]; 600 __u8 name[24];
601 struct v4l2_fract frameperiod; /* Frames, not fields */ 601 struct v4l2_fract frameperiod; /* Frames, not fields */
@@ -610,9 +610,9 @@ struct v4l2_standard
610struct v4l2_input 610struct v4l2_input
611{ 611{
612 __u32 index; /* Which input */ 612 __u32 index; /* Which input */
613 __u8 name[32]; /* Label */ 613 __u8 name[32]; /* Label */
614 __u32 type; /* Type of input */ 614 __u32 type; /* Type of input */
615 __u32 audioset; /* Associated audios (bitfield) */ 615 __u32 audioset; /* Associated audios (bitfield) */
616 __u32 tuner; /* Associated tuner */ 616 __u32 tuner; /* Associated tuner */
617 v4l2_std_id std; 617 v4l2_std_id std;
618 __u32 status; 618 __u32 status;
@@ -647,9 +647,9 @@ struct v4l2_input
647struct v4l2_output 647struct v4l2_output
648{ 648{
649 __u32 index; /* Which output */ 649 __u32 index; /* Which output */
650 __u8 name[32]; /* Label */ 650 __u8 name[32]; /* Label */
651 __u32 type; /* Type of output */ 651 __u32 type; /* Type of output */
652 __u32 audioset; /* Associated audios (bitfield) */ 652 __u32 audioset; /* Associated audios (bitfield) */
653 __u32 modulator; /* Associated modulator */ 653 __u32 modulator; /* Associated modulator */
654 v4l2_std_id std; 654 v4l2_std_id std;
655 __u32 reserved[4]; 655 __u32 reserved[4];
@@ -671,12 +671,12 @@ struct v4l2_control
671/* Used in the VIDIOC_QUERYCTRL ioctl for querying controls */ 671/* Used in the VIDIOC_QUERYCTRL ioctl for querying controls */
672struct v4l2_queryctrl 672struct v4l2_queryctrl
673{ 673{
674 __u32 id; 674 __u32 id;
675 enum v4l2_ctrl_type type; 675 enum v4l2_ctrl_type type;
676 __u8 name[32]; /* Whatever */ 676 __u8 name[32]; /* Whatever */
677 __s32 minimum; /* Note signedness */ 677 __s32 minimum; /* Note signedness */
678 __s32 maximum; 678 __s32 maximum;
679 __s32 step; 679 __s32 step;
680 __s32 default_value; 680 __s32 default_value;
681 __u32 flags; 681 __u32 flags;
682 __u32 reserved[2]; 682 __u32 reserved[2];
@@ -779,10 +779,10 @@ struct v4l2_modulator
779 779
780struct v4l2_frequency 780struct v4l2_frequency
781{ 781{
782 __u32 tuner; 782 __u32 tuner;
783 enum v4l2_tuner_type type; 783 enum v4l2_tuner_type type;
784 __u32 frequency; 784 __u32 frequency;
785 __u32 reserved[8]; 785 __u32 reserved[8];
786}; 786};
787 787
788/* 788/*
@@ -846,14 +846,14 @@ struct v4l2_vbi_format
846 846
847struct v4l2_sliced_vbi_format 847struct v4l2_sliced_vbi_format
848{ 848{
849 __u16 service_set; 849 __u16 service_set;
850 /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field 850 /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field
851 service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field 851 service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field
852 (equals frame lines 313-336 for 625 line video 852 (equals frame lines 313-336 for 625 line video
853 standards, 263-286 for 525 line standards) */ 853 standards, 263-286 for 525 line standards) */
854 __u16 service_lines[2][24]; 854 __u16 service_lines[2][24];
855 __u32 io_size; 855 __u32 io_size;
856 __u32 reserved[2]; /* must be zero */ 856 __u32 reserved[2]; /* must be zero */
857}; 857};
858 858
859#define V4L2_SLICED_TELETEXT_B (0x0001) 859#define V4L2_SLICED_TELETEXT_B (0x0001)
@@ -866,22 +866,22 @@ struct v4l2_sliced_vbi_format
866 866
867struct v4l2_sliced_vbi_cap 867struct v4l2_sliced_vbi_cap
868{ 868{
869 __u16 service_set; 869 __u16 service_set;
870 /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field 870 /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field
871 service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field 871 service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field
872 (equals frame lines 313-336 for 625 line video 872 (equals frame lines 313-336 for 625 line video
873 standards, 263-286 for 525 line standards) */ 873 standards, 263-286 for 525 line standards) */
874 __u16 service_lines[2][24]; 874 __u16 service_lines[2][24];
875 __u32 reserved[4]; /* must be 0 */ 875 __u32 reserved[4]; /* must be 0 */
876}; 876};
877 877
878struct v4l2_sliced_vbi_data 878struct v4l2_sliced_vbi_data
879{ 879{
880 __u32 id; 880 __u32 id;
881 __u32 field; /* 0: first field, 1: second field */ 881 __u32 field; /* 0: first field, 1: second field */
882 __u32 line; /* 1-23 */ 882 __u32 line; /* 1-23 */
883 __u32 reserved; /* must be 0 */ 883 __u32 reserved; /* must be 0 */
884 __u8 data[48]; 884 __u8 data[48];
885}; 885};
886#endif 886#endif
887 887
@@ -896,9 +896,9 @@ struct v4l2_format
896 enum v4l2_buf_type type; 896 enum v4l2_buf_type type;
897 union 897 union
898 { 898 {
899 struct v4l2_pix_format pix; // V4L2_BUF_TYPE_VIDEO_CAPTURE 899 struct v4l2_pix_format pix; // V4L2_BUF_TYPE_VIDEO_CAPTURE
900 struct v4l2_window win; // V4L2_BUF_TYPE_VIDEO_OVERLAY 900 struct v4l2_window win; // V4L2_BUF_TYPE_VIDEO_OVERLAY
901 struct v4l2_vbi_format vbi; // V4L2_BUF_TYPE_VBI_CAPTURE 901 struct v4l2_vbi_format vbi; // V4L2_BUF_TYPE_VBI_CAPTURE
902#if 1 902#if 1
903 struct v4l2_sliced_vbi_format sliced; // V4L2_BUF_TYPE_SLICED_VBI_CAPTURE 903 struct v4l2_sliced_vbi_format sliced; // V4L2_BUF_TYPE_SLICED_VBI_CAPTURE
904#endif 904#endif