亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? videodev.h

?? 這是一個(gè)市場(chǎng)上常見電視卡的驅(qū)動(dòng)程序源代碼
?? H
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
#ifndef __LINUX_VIDEODEV_H
#define __LINUX_VIDEODEV_H

#include <linux/types.h>
#include <linux/version.h>

#define HAVE_V4L2 1
#include <linux/videodev2.h>

#ifdef __KERNEL__

#include <linux/poll.h>
#include <linux/mm.h>
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,69)
#include <linux/devfs_fs_kernel.h>
#endif
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0)
#include <linux/device.h>
#endif

struct video_device
{
	/* device info */
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
	struct device *dev;
#endif
	char name[32];
	int type;       /* v4l1 */
	int type2;      /* v4l2 */
	int hardware;
	int minor;

	/* device ops + callbacks */
	struct file_operations *fops;
	void (*release)(struct video_device *vfd);

#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
	/* old, obsolete interface -- dropped in 2.5.x, don't use it */
	int (*open)(struct video_device *, int mode);
	void (*close)(struct video_device *);
	long (*read)(struct video_device *, char *, unsigned long, int noblock);
	long (*write)(struct video_device *, const char *, unsigned long, int noblock);
	unsigned int (*poll)(struct video_device *, struct file *, poll_table *);
	int (*ioctl)(struct video_device *, unsigned int , void *);
	int (*mmap)(struct video_device *, const char *, unsigned long);
	int (*initialize)(struct video_device *);       
#endif

#if 1 /* to be removed in 2.7.x */
	/* obsolete -- fops->owner is used instead */
	struct module *owner;
	/* dev->driver_data will be used instead some day.
	 * Use the video_{get|set}_drvdata() helper functions,
	 * so the switch over will be transparent for you.
	 * Or use {pci|usb}_{get|set}_drvdata() directly. */
	void *priv;
#endif

	/* for videodev.c intenal usage -- please don't touch */
	int users;                     /* video_exclusive_{open|close} ... */
	struct semaphore lock;         /* ... helper function uses these   */
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,69)
	devfs_handle_t devfs_handle;   /* devfs */
#else
	char devfs_name[64];           /* devfs */
#endif
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
	struct class_device class_dev; /* sysfs */
#endif
};

#define VIDEO_MAJOR	81

#define VFL_TYPE_GRABBER	0
#define VFL_TYPE_VBI		1
#define VFL_TYPE_RADIO		2
#define VFL_TYPE_VTX		3

extern int video_register_device(struct video_device *, int type, int nr);
extern void video_unregister_device(struct video_device *);
extern struct video_device* video_devdata(struct file*);

#if LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0)
#define to_video_device(cd) container_of(cd, struct video_device, class_dev)
static inline void
video_device_create_file(struct video_device *vfd,
			 struct class_device_attribute *attr)
{
	class_device_create_file(&vfd->class_dev, attr);
}
static inline void
video_device_remove_file(struct video_device *vfd,
			 struct class_device_attribute *attr)
{
	class_device_remove_file(&vfd->class_dev, attr);
}
#endif

/* helper functions to alloc / release struct video_device, the
   later can be used for video_device->release() */
struct video_device *video_device_alloc(void);
void video_device_release(struct video_device *vfd);

/* helper functions to access driver private data. */
static inline void *video_get_drvdata(struct video_device *dev)
{
	return dev->priv;
}

static inline void video_set_drvdata(struct video_device *dev, void *data)
{
	dev->priv = data;
}

extern int video_exclusive_open(struct inode *inode, struct file *file);
extern int video_exclusive_release(struct inode *inode, struct file *file);
extern int video_usercopy(struct inode *inode, struct file *file,
			  unsigned int cmd, unsigned long arg,
			  int (*func)(struct inode *inode, struct file *file,
				      unsigned int cmd, void *arg));
#endif /* __KERNEL__ */

#define VID_TYPE_CAPTURE	1	/* Can capture */
#define VID_TYPE_TUNER		2	/* Can tune */
#define VID_TYPE_TELETEXT	4	/* Does teletext */
#define VID_TYPE_OVERLAY	8	/* Overlay onto frame buffer */
#define VID_TYPE_CHROMAKEY	16	/* Overlay by chromakey */
#define VID_TYPE_CLIPPING	32	/* Can clip */
#define VID_TYPE_FRAMERAM	64	/* Uses the frame buffer memory */
#define VID_TYPE_SCALES		128	/* Scalable */
#define VID_TYPE_MONOCHROME	256	/* Monochrome only */
#define VID_TYPE_SUBCAPTURE	512	/* Can capture subareas of the image */
#define VID_TYPE_MPEG_DECODER	1024	/* Can decode MPEG streams */
#define VID_TYPE_MPEG_ENCODER	2048	/* Can encode MPEG streams */
#define VID_TYPE_MJPEG_DECODER	4096	/* Can decode MJPEG streams */
#define VID_TYPE_MJPEG_ENCODER	8192	/* Can encode MJPEG streams */

struct video_capability
{
	char name[32];
	int type;
	int channels;	/* Num channels */
	int audios;	/* Num audio devices */
	int maxwidth;	/* Supported width */
	int maxheight;	/* And height */
	int minwidth;	/* Supported width */
	int minheight;	/* And height */
};


struct video_channel
{
	int channel;
	char name[32];
	int tuners;
	__u32  flags;
#define VIDEO_VC_TUNER		1	/* Channel has a tuner */
#define VIDEO_VC_AUDIO		2	/* Channel has audio */
	__u16  type;
#define VIDEO_TYPE_TV		1
#define VIDEO_TYPE_CAMERA	2	
	__u16 norm;			/* Norm set by channel */
};

struct video_tuner
{
	int tuner;
	char name[32];
	unsigned long rangelow, rangehigh;	/* Tuner range */
	__u32 flags;
#define VIDEO_TUNER_PAL		1
#define VIDEO_TUNER_NTSC	2
#define VIDEO_TUNER_SECAM	4
#define VIDEO_TUNER_LOW		8	/* Uses KHz not MHz */
#define VIDEO_TUNER_NORM	16	/* Tuner can set norm */
#define VIDEO_TUNER_STEREO_ON	128	/* Tuner is seeing stereo */
#define VIDEO_TUNER_RDS_ON      256     /* Tuner is seeing an RDS datastream */
#define VIDEO_TUNER_MBS_ON      512     /* Tuner is seeing an MBS datastream */
	__u16 mode;			/* PAL/NTSC/SECAM/OTHER */
#define VIDEO_MODE_PAL		0
#define VIDEO_MODE_NTSC		1
#define VIDEO_MODE_SECAM	2
#define VIDEO_MODE_AUTO		3
	__u16 signal;			/* Signal strength 16bit scale */
};

struct video_picture
{
	__u16	brightness;
	__u16	hue;
	__u16	colour;
	__u16	contrast;
	__u16	whiteness;	/* Black and white only */
	__u16	depth;		/* Capture depth */
	__u16   palette;	/* Palette in use */
#define VIDEO_PALETTE_GREY	1	/* Linear greyscale */
#define VIDEO_PALETTE_HI240	2	/* High 240 cube (BT848) */
#define VIDEO_PALETTE_RGB565	3	/* 565 16 bit RGB */
#define VIDEO_PALETTE_RGB24	4	/* 24bit RGB */
#define VIDEO_PALETTE_RGB32	5	/* 32bit RGB */	
#define VIDEO_PALETTE_RGB555	6	/* 555 15bit RGB */
#define VIDEO_PALETTE_YUV422	7	/* YUV422 capture */
#define VIDEO_PALETTE_YUYV	8
#define VIDEO_PALETTE_UYVY	9	/* The great thing about standards is ... */
#define VIDEO_PALETTE_YUV420	10
#define VIDEO_PALETTE_YUV411	11	/* YUV411 capture */
#define VIDEO_PALETTE_RAW	12	/* RAW capture (BT848) */
#define VIDEO_PALETTE_YUV422P	13	/* YUV 4:2:2 Planar */
#define VIDEO_PALETTE_YUV411P	14	/* YUV 4:1:1 Planar */
#define VIDEO_PALETTE_YUV420P	15	/* YUV 4:2:0 Planar */
#define VIDEO_PALETTE_YUV410P	16	/* YUV 4:1:0 Planar */
#define VIDEO_PALETTE_PLANAR	13	/* start of planar entries */
#define VIDEO_PALETTE_COMPONENT 7	/* start of component entries */
};

struct video_audio
{
	int	audio;		/* Audio channel */
	__u16	volume;		/* If settable */
	__u16	bass, treble;
	__u32	flags;
#define VIDEO_AUDIO_MUTE	1
#define VIDEO_AUDIO_MUTABLE	2
#define VIDEO_AUDIO_VOLUME	4
#define VIDEO_AUDIO_BASS	8
#define VIDEO_AUDIO_TREBLE	16	
#define VIDEO_AUDIO_BALANCE	32
	char    name[16];
#define VIDEO_SOUND_MONO	1
#define VIDEO_SOUND_STEREO	2
#define VIDEO_SOUND_LANG1	4
#define VIDEO_SOUND_LANG2	8
        __u16   mode;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区视频网站| 97se狠狠狠综合亚洲狠狠| 国产欧美日韩另类视频免费观看| 一本色道久久综合精品竹菊| 久久国产生活片100| 亚洲免费三区一区二区| 精品少妇一区二区三区日产乱码| 91视频国产资源| 国产精品一品视频| 日本欧美一区二区| 一区二区三区欧美亚洲| 国产精品区一区二区三区| 日韩视频免费观看高清完整版在线观看 | 欧美艳星brazzers| 国产一区二区三区免费看| 亚洲精品免费一二三区| wwwwww.欧美系列| 欧美自拍偷拍一区| 国产夫妻精品视频| 五月天一区二区| 国产精品久久久久久久裸模| 日韩午夜在线观看视频| av高清久久久| 国内久久婷婷综合| 午夜欧美大尺度福利影院在线看| 国产人妖乱国产精品人妖| 在线不卡中文字幕播放| 91看片淫黄大片一级在线观看| 男女男精品视频网| 一区二区三区精品视频在线| 国产亚洲精品aa| 日韩亚洲欧美一区二区三区| 在线国产亚洲欧美| 97久久精品人人澡人人爽| 国产中文字幕一区| 七七婷婷婷婷精品国产| 一区二区三区.www| 亚洲视频电影在线| 中文字幕不卡的av| 久久日韩粉嫩一区二区三区| 欧美日韩精品欧美日韩精品一| 色综合欧美在线| 成人黄色小视频| 国产成人精品网址| 久久精品国产网站| 青青草一区二区三区| 天天综合网 天天综合色| 伊人开心综合网| 亚洲人成小说网站色在线| 中文字幕av一区二区三区高| 久久久亚洲国产美女国产盗摄| 欧美一二区视频| 91精品国产手机| 欧美日韩1区2区| 欧美疯狂性受xxxxx喷水图片| 成人激情免费视频| 国产成人免费高清| 久草精品在线观看| 日韩**一区毛片| 亚洲成人综合视频| 亚洲视频在线观看三级| 亚洲欧美一区二区三区久本道91 | 久久精品二区亚洲w码| 亚洲精品视频在线观看免费| 玉足女爽爽91| 亚洲h动漫在线| 午夜成人免费电影| 天天综合网天天综合色| 日本v片在线高清不卡在线观看| 舔着乳尖日韩一区| 日韩av在线免费观看不卡| 日日夜夜免费精品视频| 亚洲超碰精品一区二区| 夜夜精品浪潮av一区二区三区 | 亚洲视频一区在线| 最好看的中文字幕久久| 亚洲欧洲99久久| 亚洲精品ww久久久久久p站| 亚洲成人免费看| 久热成人在线视频| 国产一区二区三区精品视频| 国产成a人亚洲| 91丨九色丨国产丨porny| 色婷婷精品久久二区二区蜜臂av| 欧美这里有精品| 91精品国产综合久久蜜臀| 精品日韩一区二区三区免费视频| 久久精品日产第一区二区三区高清版| 国产视频一区二区在线| 亚洲日本一区二区三区| 亚洲成a人在线观看| 久久91精品国产91久久小草| 不卡在线观看av| 91精品福利在线| 欧美不卡视频一区| 国产精品亲子伦对白| 亚洲三级电影网站| 美国欧美日韩国产在线播放| 国产成人精品免费视频网站| 91久久人澡人人添人人爽欧美| 欧美一三区三区四区免费在线看| 日本一区二区三区电影| 亚洲国产精品久久久久婷婷884| 免费观看在线色综合| 99精品偷自拍| 欧美一区二区私人影院日本| 欧美国产视频在线| 亚洲观看高清完整版在线观看| 国产在线视视频有精品| 日本乱人伦aⅴ精品| 欧美精品一区二区三区一线天视频| 国产精品人人做人人爽人人添| 日韩中文字幕一区二区三区| 国产成人亚洲精品狼色在线| 欧美艳星brazzers| 国产天堂亚洲国产碰碰| 午夜精品爽啪视频| 成人免费视频视频在线观看免费 | 视频一区二区国产| eeuss鲁片一区二区三区在线看| 在线播放亚洲一区| 亚洲欧美激情插| 国产一区二区女| 91精品国产色综合久久不卡电影| 国产精品嫩草久久久久| 精品一区二区三区在线观看 | 欧美一级片在线看| 亚洲人精品一区| 国产精品一区二区在线播放| 欧美制服丝袜第一页| 国产精品久久久久久久裸模| 欧美aa在线视频| 欧美亚州韩日在线看免费版国语版| 国产亚洲综合色| 麻豆成人久久精品二区三区红 | 成人性生交大片免费看视频在线| 91精品久久久久久久91蜜桃| 亚洲一区二区视频在线观看| 成人午夜视频在线| 久久久蜜桃精品| 蜜桃在线一区二区三区| 欧美亚日韩国产aⅴ精品中极品| 国产清纯美女被跳蛋高潮一区二区久久w| 婷婷综合五月天| 欧美伊人久久久久久久久影院 | 成人av在线网站| 久久综合给合久久狠狠狠97色69| 日韩国产欧美在线播放| 欧美视频一区二区三区四区 | 精品一区二区久久| 精品国产一区二区三区四区四| 日本特黄久久久高潮| 欧美剧在线免费观看网站| 亚洲成人免费观看| 欧美精品在欧美一区二区少妇| 亚洲精选免费视频| 色先锋aa成人| 亚洲精品高清在线观看| 日本乱人伦aⅴ精品| 亚洲一二三四区不卡| 欧美综合天天夜夜久久| 亚洲国产精品久久久久秋霞影院| 欧美日本一道本在线视频| 日韩—二三区免费观看av| 精品欧美一区二区久久| 国产伦精一区二区三区| 久久久不卡影院| 麻豆精品久久久| 91精品国产麻豆| 激情文学综合丁香| 欧美韩国日本一区| 91麻豆免费视频| 亚洲伦理在线精品| 99视频在线精品| 一区二区视频免费在线观看| 7777精品伊人久久久大香线蕉完整版 | 日韩一区二区免费高清| 麻豆高清免费国产一区| 久久久一区二区| proumb性欧美在线观看| 亚洲一区二区在线播放相泽| 91麻豆精品国产无毒不卡在线观看| 日韩精品欧美精品| 久久久久久99久久久精品网站| 国产老肥熟一区二区三区| 中文字幕中文字幕一区二区| 在线免费观看不卡av| 日韩精品免费视频人成| 久久精品一区八戒影视| 一本一本久久a久久精品综合麻豆| 亚洲电影一级黄| 精品国产免费人成电影在线观看四季| 国产精品一品视频| 亚洲黄色录像片| 欧美va亚洲va| 99精品视频在线播放观看| 日韩精品电影一区亚洲| 国产精品三级在线观看| 制服丝袜亚洲网站| 成人av在线网站|