vidinput_v4l.h

来自「安装 H323需要的pwlib库」· C头文件 代码 · 共 88 行

H
88
字号
#include <sys/mman.h>#include <sys/time.h>#include <ptlib.h>#include <ptlib/videoio.h>#include <ptlib/vconvert.h>#include <linux/videodev.h>class PVideoInputV4lDevice: public PVideoInputDevice{public:  PVideoInputV4lDevice();  ~PVideoInputV4lDevice();  static PStringList GetInputDeviceNames();  PStringList GetDeviceNames() const  { return GetInputDeviceNames(); }  BOOL Open(const PString &deviceName, BOOL startImmediate);  BOOL IsOpen();  BOOL Close();  BOOL Start();  BOOL Stop();  BOOL IsCapturing();  PINDEX GetMaxFrameBytes();  BOOL GetFrame(PBYTEArray & frame);  BOOL GetFrameData(BYTE*, PINDEX*);  BOOL GetFrameDataNoDelay(BYTE*, PINDEX*);  BOOL GetFrameSizeLimits(unsigned int&, unsigned int&,			  unsigned int&, unsigned int&);  BOOL TestAllFormats();  BOOL SetFrameSize(unsigned int, unsigned int);  BOOL SetFrameRate(unsigned int);  BOOL VerifyHardwareFrameSize(unsigned int, unsigned int);  BOOL GetParameters(int*, int*, int*, int*, int*);  BOOL SetColourFormat(const PString&);  int GetContrast();  BOOL SetContrast(unsigned int);  int GetBrightness();  BOOL SetBrightness(unsigned int);  int GetWhiteness();  BOOL SetWhiteness(unsigned int);  int GetColour();  BOOL SetColour(unsigned int);  int GetHue();  BOOL SetHue(unsigned int);  BOOL SetVideoChannelFormat(int, PVideoDevice::VideoFormat);  BOOL SetVideoFormat(PVideoDevice::VideoFormat);  int GetNumChannels();  BOOL SetChannel(int);  BOOL NormalReadProcess(BYTE*, PINDEX*);  void ClearMapping();  int    videoFd;  struct video_capability videoCapability;  int    canMap;  // -1 = don't know, 0 = no, 1 = yes  int    colourFormatCode;  PINDEX hint_index;  BYTE *videoBuffer;  PINDEX frameBytes;    BOOL   pendingSync[2];    int    currentFrame;  struct video_mbuf frame;  struct video_mmap frameBuffer[2];  };

⌨️ 快捷键说明

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