基于嵌入式Linux的视频采集系统16-----源程序----v4l_driver.h

2019-07-13 04:39发布

本文来自:
http://blog.chinaunix.net/uid-23093301-id-86405.html

#ifndef V4L12_DRIVER_H_ #define V4L12_DRIVER_H_
#include #include using namespace std;
#include #include #include #include #include #include #include #include #include
#include "def.h"

#define NB_BUFFER 4 #define DHT_SIZE 432
class CVideoDriver { //public: // static CVideoDriver& instance(); //private: // static CVideoDriver* globle_ptr; public: CVideoDriver(); ~CVideoDriver(); int start(const string& dev,const int& width,const int& height,const int& fps,const int& format); int capture(unsigned char* pimage); int close();
int enalbe(); int disable();
//! for control int v4l2_up_control(const int& control); private: /******************** cnfig Private Field ************************/ video_input m_video_input; string usb_video_device_name; int m_cap_width; int       m_cap_height; int m_cap_fps; int m_cap_fmt;

private: int init_device(); /* @fn * @brief set capture format */ int set_format(); /* @fn   * brief set framerate */  int set_framerate(); /*@fn  * @brief set maped buffer */ int set_map_buffer(); int isv4l2Control(const int& control,struct v4l2_queryctrl& queryctrl); int v4l2GetControl(const int& control) ; };


#endif