patch-2.1.94 linux/include/linux/videodev.h

Next file: linux/include/linux/videotext.h
Previous file: linux/include/linux/umsdos_fs.p
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.93/linux/include/linux/videodev.h linux/include/linux/videodev.h
@@ -17,14 +17,20 @@
 	int (*ioctl)(struct video_device *, unsigned int , void *);
 	int (*mmap)(struct video_device *, const char *, unsigned long);
 	int (*initialize)(struct video_device *);	
-	void *private;
+	void *priv;		/* Used to be 'private' but that upsets C++ */
 	int busy;
 	int minor;
 };
 
 extern int videodev_init(void);
 #define VIDEO_MAJOR	81
-extern int video_register_device(struct video_device *);
+extern int video_register_device(struct video_device *, int type);
+
+#define VFL_TYPE_GRABBER	0
+#define VFL_TYPE_VBI		1
+#define VFL_TYPE_RADIO		2
+#define VFL_TYPE_VTX		3
+
 extern void video_unregister_device(struct video_device *);
 #endif
 
@@ -39,10 +45,9 @@
 #define VID_TYPE_SCALES		128	/* Scalable */
 #define VID_TYPE_MONOCHROME	256	/* Monochrome only */
 
-
 struct video_capability
 {
-	char	name[32];
+	char name[32];
 	int type;
 	int channels;	/* Num channels */
 	int audios;	/* Num audio devices */
@@ -111,6 +116,11 @@
 #define VIDEO_AUDIO_BASS	8
 #define VIDEO_AUDIO_TREBLE	16	
 	char    name[16];
+#define VIDEO_SOUND_MONO	1
+#define VIDEO_SOUND_STEREO	2
+#define VIDEO_SOUND_LANG1	3
+#define VIDEO_SOUND_LANG2	4
+        __u16   mode;
 };
 
 struct video_clip
@@ -139,6 +149,12 @@
 	int	bytesperline;
 };
 
+struct video_mmap
+{
+	unsigned int frame;		/* Frame (0 or 1) for double buffer */
+	int height,width;
+	unsigned int format;
+};
 
 struct video_key
 {
@@ -163,6 +179,8 @@
 #define VIDIOCSFREQ		_IOW('v',15, unsigned long)		/* Set tuner */
 #define VIDIOCGAUDIO		_IOR('v',16, struct video_audio)	/* Get audio info */
 #define VIDIOCSAUDIO		_IOW('v',17, struct video_audio)	/* Audio source, mute etc */
+#define VIDIOCSYNC		_IO('v',18)				/* Sync with mmap grabbing */
+#define VIDIOCMCAPTURE		_IOW('v',19, struct video_mmap)		/* Grab frames */
 
 
 #define BASE_VIDIOCPRIVATE	192		/* 192-255 are private */
@@ -172,6 +190,8 @@
 #define VID_HARDWARE_QCAM_BW	2
 #define VID_HARDWARE_PMS	3
 #define VID_HARDWARE_QCAM_C	4
+#define VID_HARDWARE_PSEUDO	5
+#define VID_HARDWARE_SAA5249	6
 
 /*
  *	Initialiser list

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov