⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 capture_v4l.h

📁 一个可以进行视频采集和显示的源代码,在LINUX操作系统下使用,可通过修改移植到ARM.
💻 H
字号:
/*==========================================================================  $Id$  capture_v4l.h: Header file for capturing image using Video4Linux.  Written by Naoyuki Ichimura, AIST, 2001.==========================================================================*/#include <stdio.h> #include <stdlib.h>#include <math.h>#include <string.h>#include <sys/types.h> 		/* for open() */#include <sys/stat.h>#include <fcntl.h>#include <sys/ioctl.h> 		/* for ioctl() */#include <unistd.h>		/* for mmap() */#include <sys/mman.h>#include <linux/videodev.h> 	/* for V4L *//*=====================================================  Definitions for Video4Linux=====================================================*/#define DEFAULT_DEVICE_NAME	"/dev/video"	/* device file name */#define MAX_NO_CHANNEL		10		/* maximum number of channel of frame grabber */#define CAPTURE_IMAGE_WIDTH	640		/* image width */	#define CAPTURE_IMAGE_HEIGHT	480		/* image height */#define RGB			3 		/* number of bit plane */#define COMPOSITE1		0		/* for IO-DATA GV-VCP2M/PCI */#define COMPOSITE2		1#define S_VIDEO			2#define DOWN_SAMPLING_RATE	2		/* to remove even number field */#define IMAGE_WIDTH_DS		CAPTURE_IMAGE_WIDTH/DOWN_SAMPLING_RATE 	/* image size after down sampling */#define IMAGE_HEIGHT_DS		CAPTURE_IMAGE_HEIGHT/DOWN_SAMPLING_RATE/*=====================================================  Function Prototypes=====================================================*/int CaptureV4LOpen( char *device_name );int CaptureV4LGetDeviceCapability( int fd , struct video_capability *vcap );void CaptureV4LDisplayDeviceCapability( struct video_capability vcap );int CaptureV4LGetChannelInfo( int fd , struct video_channel vch[MAX_NO_CHANNEL] , int no_channel );void CaptureV4LDisplayChannelInfo( struct video_channel vch[MAX_NO_CHANNEL] , int no_channel );int CaptureV4LGetPictureInfo( int fd , struct video_picture *vp );void CaptureV4LDisplayPictureInfo( struct video_picture vp );int CaptureV4LGetMemoryMapInfo( int fd , struct video_mbuf *vm );void CaptureV4LDisplayMemoryMapInfo( struct video_mbuf vm );int CaptureV4LSelectChannel( int fd , struct video_channel vch[MAX_NO_CHANNEL] , int channel_no );int CaptureV4LMemoryMapping( int fd , struct video_mbuf vm );int CaptureV4LSimpleCapture( int fd , struct video_mmap *vmap );int CaptureV4LDoubleBufferingInitCapture( int fd , struct video_mmap *vmap );int CaptureV4LDoubleBufferingCaptureWait( int fd , struct video_mmap *vmap ) ;int CaptureV4LDoubleBufferingCaptureNextFrame( int fd , struct video_mmap *vmap );unsigned char *CaptureV4LSetImage( struct video_mmap vmap , struct video_mbuf vm );void CaptureV4LSetImageDownSamplingForOpenGL( struct video_mmap vmap , struct video_mbuf vm , int down_sampling_rate , unsigned char *image , unsigned char *disp_image );

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -