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 42struct 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}; 56struct 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}; 72struct 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 */ 99struct 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 */ 134struct 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}; 160struct 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}; 167struct 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 */ 184struct 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}; 195struct 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 */ 204struct 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}; 211struct video_key 212{ 213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214 __u8 key[8]; 215 __u32 flags; 216}; 217struct 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) 226struct 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}; 236struct 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 */ 249struct 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}; 261struct 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 */ 269struct 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