1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19 #ifndef __LINUX_VIDEODEV_H 20 #define __LINUX_VIDEODEV_H 21 #include <linux/types.h> 22 #include <linux/ioctl.h> 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 #include <linux/videodev2.h> 25 #define VID_TYPE_CAPTURE 1 26 #define VID_TYPE_TUNER 2 27 #define VID_TYPE_TELETEXT 4 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 #define VID_TYPE_OVERLAY 8 30 #define VID_TYPE_CHROMAKEY 16 31 #define VID_TYPE_CLIPPING 32 32 #define VID_TYPE_FRAMERAM 64 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 #define VID_TYPE_SCALES 128 35 #define VID_TYPE_MONOCHROME 256 36 #define VID_TYPE_SUBCAPTURE 512 37 #define VID_TYPE_MPEG_DECODER 1024 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 #define VID_TYPE_MPEG_ENCODER 2048 40 #define VID_TYPE_MJPEG_DECODER 4096 41 #define VID_TYPE_MJPEG_ENCODER 8192 42 struct video_capability 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 { 45 char name[32]; 46 int type; 47 int channels; 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 int audios; 50 int maxwidth; 51 int maxheight; 52 int minwidth; 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 int minheight; 55 }; 56 struct video_channel 57 { 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 int channel; 60 char name[32]; 61 int tuners; 62 __u32 flags; 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 #define VIDEO_VC_TUNER 1 65 #define VIDEO_VC_AUDIO 2 66 __u16 type; 67 #define VIDEO_TYPE_TV 1 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 #define VIDEO_TYPE_CAMERA 2 70 __u16 norm; 71 }; 72 struct video_tuner 73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 { 75 int tuner; 76 char name[32]; 77 unsigned long rangelow, rangehigh; 78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 __u32 flags; 80 #define VIDEO_TUNER_PAL 1 81 #define VIDEO_TUNER_NTSC 2 82 #define VIDEO_TUNER_SECAM 4 83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 #define VIDEO_TUNER_LOW 8 85 #define VIDEO_TUNER_NORM 16 86 #define VIDEO_TUNER_STEREO_ON 128 87 #define VIDEO_TUNER_RDS_ON 256 88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 #define VIDEO_TUNER_MBS_ON 512 90 __u16 mode; 91 #define VIDEO_MODE_PAL 0 92 #define VIDEO_MODE_NTSC 1 93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 #define VIDEO_MODE_SECAM 2 95 #define VIDEO_MODE_AUTO 3 96 __u16 signal; 97 }; 98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 struct video_picture 100 { 101 __u16 brightness; 102 __u16 hue; 103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 __u16 colour; 105 __u16 contrast; 106 __u16 whiteness; 107 __u16 depth; 108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 __u16 palette; 110 #define VIDEO_PALETTE_GREY 1 111 #define VIDEO_PALETTE_HI240 2 112 #define VIDEO_PALETTE_RGB565 3 113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 #define VIDEO_PALETTE_RGB24 4 115 #define VIDEO_PALETTE_RGB32 5 116 #define VIDEO_PALETTE_RGB555 6 117 #define VIDEO_PALETTE_YUV422 7 118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 #define VIDEO_PALETTE_YUYV 8 120 #define VIDEO_PALETTE_UYVY 9 121 #define VIDEO_PALETTE_YUV420 10 122 #define VIDEO_PALETTE_YUV411 11 123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124 #define VIDEO_PALETTE_RAW 12 125 #define VIDEO_PALETTE_YUV422P 13 126 #define VIDEO_PALETTE_YUV411P 14 127 #define VIDEO_PALETTE_YUV420P 15 128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129 #define VIDEO_PALETTE_YUV410P 16 130 #define VIDEO_PALETTE_PLANAR 13 131 #define VIDEO_PALETTE_COMPONENT 7 132 }; 133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 struct video_audio 135 { 136 int audio; 137 __u16 volume; 138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 __u16 bass, treble; 140 __u32 flags; 141 #define VIDEO_AUDIO_MUTE 1 142 #define VIDEO_AUDIO_MUTABLE 2 143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 #define VIDEO_AUDIO_VOLUME 4 145 #define VIDEO_AUDIO_BASS 8 146 #define VIDEO_AUDIO_TREBLE 16 147 #define VIDEO_AUDIO_BALANCE 32 148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 char name[16]; 150 #define VIDEO_SOUND_MONO 1 151 #define VIDEO_SOUND_STEREO 2 152 #define VIDEO_SOUND_LANG1 4 153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 #define VIDEO_SOUND_LANG2 8 155 __u16 mode; 156 __u16 balance; 157 __u16 step; 158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 }; 160 struct video_clip 161 { 162 __s32 x,y; 163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 __s32 width, height; 165 struct video_clip *next; 166 }; 167 struct video_window 168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169 { 170 __u32 x,y; 171 __u32 width,height; 172 __u32 chromakey; 173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 __u32 flags; 175 struct video_clip __user *clips; 176 int clipcount; 177 #define VIDEO_WINDOW_INTERLACE 1 178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179 #define VIDEO_WINDOW_CHROMAKEY 16 180 #define VIDEO_CLIP_BITMAP -1 181 #define VIDEO_CLIPMAP_SIZE (128 * 625) 182 }; 183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184 struct video_capture 185 { 186 __u32 x,y; 187 __u32 width, height; 188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189 __u16 decimation; 190 __u16 flags; 191 #define VIDEO_CAPTURE_ODD 0 192 #define VIDEO_CAPTURE_EVEN 1 193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194 }; 195 struct video_buffer 196 { 197 void *base; 198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199 int height,width; 200 int depth; 201 int bytesperline; 202 }; 203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204 struct video_mmap 205 { 206 unsigned int frame; 207 int height,width; 208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209 unsigned int format; 210 }; 211 struct video_key 212 { 213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214 __u8 key[8]; 215 __u32 flags; 216 }; 217 struct video_mbuf 218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219 { 220 int size; 221 int frames; 222 int offsets[VIDEO_MAX_FRAME]; 223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224 }; 225 #define VIDEO_NO_UNIT (-1) 226 struct video_unit 227 { 228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229 int video; 230 int vbi; 231 int radio; 232 int audio; 233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 234 int teletext; 235 }; 236 struct vbi_format { 237 __u32 sampling_rate; 238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 239 __u32 samples_per_line; 240 __u32 sample_format; 241 __s32 start[2]; 242 __u32 count[2]; 243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244 __u32 flags; 245 #define VBI_UNSYNC 1 246 #define VBI_INTERLACED 2 247 }; 248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 249 struct video_info 250 { 251 __u32 frame_count; 252 __u32 h_size; 253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254 __u32 v_size; 255 __u32 smpte_timecode; 256 __u32 picture_type; 257 __u32 temporal_reference; 258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 259 __u8 user_data[256]; 260 }; 261 struct video_play_mode 262 { 263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 264 int mode; 265 int p1; 266 int p2; 267 }; 268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 269 struct video_code 270 { 271 char loadwhat[16]; 272 int datasize; 273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 274 __u8 *data; 275 }; 276 #define VIDIOCGCAP _IOR('v',1,struct video_capability) 277 #define VIDIOCGCHAN _IOWR('v',2,struct video_channel) 278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 279 #define VIDIOCSCHAN _IOW('v',3,struct video_channel) 280 #define VIDIOCGTUNER _IOWR('v',4,struct video_tuner) 281 #define VIDIOCSTUNER _IOW('v',5,struct video_tuner) 282 #define VIDIOCGPICT _IOR('v',6,struct video_picture) 283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 284 #define VIDIOCSPICT _IOW('v',7,struct video_picture) 285 #define VIDIOCCAPTURE _IOW('v',8,int) 286 #define VIDIOCGWIN _IOR('v',9, struct video_window) 287 #define VIDIOCSWIN _IOW('v',10, struct video_window) 288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 289 #define VIDIOCGFBUF _IOR('v',11, struct video_buffer) 290 #define VIDIOCSFBUF _IOW('v',12, struct video_buffer) 291 #define VIDIOCKEY _IOR('v',13, struct video_key) 292 #define VIDIOCGFREQ _IOR('v',14, unsigned long) 293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 294 #define VIDIOCSFREQ _IOW('v',15, unsigned long) 295 #define VIDIOCGAUDIO _IOR('v',16, struct video_audio) 296 #define VIDIOCSAUDIO _IOW('v',17, struct video_audio) 297 #define VIDIOCSYNC _IOW('v',18, int) 298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 299 #define VIDIOCMCAPTURE _IOW('v',19, struct video_mmap) 300 #define VIDIOCGMBUF _IOR('v',20, struct video_mbuf) 301 #define VIDIOCGUNIT _IOR('v',21, struct video_unit) 302 #define VIDIOCGCAPTURE _IOR('v',22, struct video_capture) 303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 304 #define VIDIOCSCAPTURE _IOW('v',23, struct video_capture) 305 #define VIDIOCSPLAYMODE _IOW('v',24, struct video_play_mode) 306 #define VIDIOCSWRITEMODE _IOW('v',25, int) 307 #define VIDIOCGPLAYINFO _IOR('v',26, struct video_info) 308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 309 #define VIDIOCSMICROCODE _IOW('v',27, struct video_code) 310 #define VIDIOCGVBIFMT _IOR('v',28, struct vbi_format) 311 #define VIDIOCSVBIFMT _IOW('v',29, struct vbi_format) 312 #define BASE_VIDIOCPRIVATE 192 313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 314 #define VID_WRITE_MPEG_AUD 0 315 #define VID_WRITE_MPEG_VID 1 316 #define VID_WRITE_OSD 2 317 #define VID_WRITE_TTX 3 318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 319 #define VID_WRITE_CC 4 320 #define VID_WRITE_MJPEG 5 321 #define VID_PLAY_VID_OUT_MODE 0 322 #define VID_PLAY_GENLOCK 1 323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 324 #define VID_PLAY_NORMAL 2 325 #define VID_PLAY_PAUSE 3 326 #define VID_PLAY_SINGLE_FRAME 4 327 #define VID_PLAY_FAST_FORWARD 5 328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 329 #define VID_PLAY_SLOW_MOTION 6 330 #define VID_PLAY_IMMEDIATE_NORMAL 7 331 #define VID_PLAY_SWITCH_CHANNELS 8 332 #define VID_PLAY_FREEZE_FRAME 9 333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 334 #define VID_PLAY_STILL_MODE 10 335 #define VID_PLAY_MASTER_MODE 11 336 #define VID_PLAY_MASTER_NONE 1 337 #define VID_PLAY_MASTER_VIDEO 2 338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 339 #define VID_PLAY_MASTER_AUDIO 3 340 #define VID_PLAY_ACTIVE_SCANLINES 12 341 #define VID_PLAY_RESET 13 342 #define VID_PLAY_END_MARK 14 343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 344 #endif 345