123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680 |
- #ifndef __OPENCV_VIDEOIO_HPP__
- #define __OPENCV_VIDEOIO_HPP__
- #include "opencv2/core.hpp"
- typedef struct CvCapture CvCapture;
- typedef struct CvVideoWriter CvVideoWriter;
- namespace cv
- {
- enum { CAP_ANY = 0,
- CAP_VFW = 200,
- CAP_V4L = 200,
- CAP_V4L2 = CAP_V4L,
- CAP_FIREWARE = 300,
- CAP_FIREWIRE = CAP_FIREWARE,
- CAP_IEEE1394 = CAP_FIREWARE,
- CAP_DC1394 = CAP_FIREWARE,
- CAP_CMU1394 = CAP_FIREWARE,
- CAP_QT = 500,
- CAP_UNICAP = 600,
- CAP_DSHOW = 700,
- CAP_PVAPI = 800,
- CAP_OPENNI = 900,
- CAP_OPENNI_ASUS = 910,
- CAP_ANDROID = 1000,
- CAP_XIAPI = 1100,
- CAP_AVFOUNDATION = 1200,
- CAP_GIGANETIX = 1300,
- CAP_MSMF = 1400,
- CAP_WINRT = 1410,
- CAP_INTELPERC = 1500,
- CAP_OPENNI2 = 1600,
- CAP_OPENNI2_ASUS = 1610,
- CAP_GPHOTO2 = 1700,
- CAP_GSTREAMER = 1800,
- CAP_FFMPEG = 1900,
- CAP_IMAGES = 2000
- };
- enum { CAP_PROP_POS_MSEC =0,
- CAP_PROP_POS_FRAMES =1,
- CAP_PROP_POS_AVI_RATIO =2,
- CAP_PROP_FRAME_WIDTH =3,
- CAP_PROP_FRAME_HEIGHT =4,
- CAP_PROP_FPS =5,
- CAP_PROP_FOURCC =6,
- CAP_PROP_FRAME_COUNT =7,
- CAP_PROP_FORMAT =8,
- CAP_PROP_MODE =9,
- CAP_PROP_BRIGHTNESS =10,
- CAP_PROP_CONTRAST =11,
- CAP_PROP_SATURATION =12,
- CAP_PROP_HUE =13,
- CAP_PROP_GAIN =14,
- CAP_PROP_EXPOSURE =15,
- CAP_PROP_CONVERT_RGB =16,
- CAP_PROP_WHITE_BALANCE_BLUE_U =17,
- CAP_PROP_RECTIFICATION =18,
- CAP_PROP_MONOCHROME =19,
- CAP_PROP_SHARPNESS =20,
- CAP_PROP_AUTO_EXPOSURE =21,
- CAP_PROP_GAMMA =22,
- CAP_PROP_TEMPERATURE =23,
- CAP_PROP_TRIGGER =24,
- CAP_PROP_TRIGGER_DELAY =25,
- CAP_PROP_WHITE_BALANCE_RED_V =26,
- CAP_PROP_ZOOM =27,
- CAP_PROP_FOCUS =28,
- CAP_PROP_GUID =29,
- CAP_PROP_ISO_SPEED =30,
- CAP_PROP_BACKLIGHT =32,
- CAP_PROP_PAN =33,
- CAP_PROP_TILT =34,
- CAP_PROP_ROLL =35,
- CAP_PROP_IRIS =36,
- CAP_PROP_SETTINGS =37,
- CAP_PROP_BUFFERSIZE =38,
- CAP_PROP_AUTOFOCUS =39
- };
- enum { CAP_MODE_BGR = 0,
- CAP_MODE_RGB = 1,
- CAP_MODE_GRAY = 2,
- CAP_MODE_YUYV = 3
- };
- enum { CAP_PROP_DC1394_OFF = -4,
- CAP_PROP_DC1394_MODE_MANUAL = -3,
- CAP_PROP_DC1394_MODE_AUTO = -2,
- CAP_PROP_DC1394_MODE_ONE_PUSH_AUTO = -1,
- CAP_PROP_DC1394_MAX = 31
- };
- enum { CAP_OPENNI_DEPTH_GENERATOR = 1 << 31,
- CAP_OPENNI_IMAGE_GENERATOR = 1 << 30,
- CAP_OPENNI_GENERATORS_MASK = CAP_OPENNI_DEPTH_GENERATOR + CAP_OPENNI_IMAGE_GENERATOR
- };
- enum { CAP_PROP_OPENNI_OUTPUT_MODE = 100,
- CAP_PROP_OPENNI_FRAME_MAX_DEPTH = 101,
- CAP_PROP_OPENNI_BASELINE = 102,
- CAP_PROP_OPENNI_FOCAL_LENGTH = 103,
- CAP_PROP_OPENNI_REGISTRATION = 104,
-
-
- CAP_PROP_OPENNI_REGISTRATION_ON = CAP_PROP_OPENNI_REGISTRATION,
- CAP_PROP_OPENNI_APPROX_FRAME_SYNC = 105,
- CAP_PROP_OPENNI_MAX_BUFFER_SIZE = 106,
- CAP_PROP_OPENNI_CIRCLE_BUFFER = 107,
- CAP_PROP_OPENNI_MAX_TIME_DURATION = 108,
- CAP_PROP_OPENNI_GENERATOR_PRESENT = 109,
- CAP_PROP_OPENNI2_SYNC = 110,
- CAP_PROP_OPENNI2_MIRROR = 111
- };
- enum { CAP_OPENNI_IMAGE_GENERATOR_PRESENT = CAP_OPENNI_IMAGE_GENERATOR + CAP_PROP_OPENNI_GENERATOR_PRESENT,
- CAP_OPENNI_IMAGE_GENERATOR_OUTPUT_MODE = CAP_OPENNI_IMAGE_GENERATOR + CAP_PROP_OPENNI_OUTPUT_MODE,
- CAP_OPENNI_DEPTH_GENERATOR_BASELINE = CAP_OPENNI_DEPTH_GENERATOR + CAP_PROP_OPENNI_BASELINE,
- CAP_OPENNI_DEPTH_GENERATOR_FOCAL_LENGTH = CAP_OPENNI_DEPTH_GENERATOR + CAP_PROP_OPENNI_FOCAL_LENGTH,
- CAP_OPENNI_DEPTH_GENERATOR_REGISTRATION = CAP_OPENNI_DEPTH_GENERATOR + CAP_PROP_OPENNI_REGISTRATION,
- CAP_OPENNI_DEPTH_GENERATOR_REGISTRATION_ON = CAP_OPENNI_DEPTH_GENERATOR_REGISTRATION
- };
- enum { CAP_OPENNI_DEPTH_MAP = 0,
- CAP_OPENNI_POINT_CLOUD_MAP = 1,
- CAP_OPENNI_DISPARITY_MAP = 2,
- CAP_OPENNI_DISPARITY_MAP_32F = 3,
- CAP_OPENNI_VALID_DEPTH_MASK = 4,
-
- CAP_OPENNI_BGR_IMAGE = 5,
- CAP_OPENNI_GRAY_IMAGE = 6
- };
- enum { CAP_OPENNI_VGA_30HZ = 0,
- CAP_OPENNI_SXGA_15HZ = 1,
- CAP_OPENNI_SXGA_30HZ = 2,
- CAP_OPENNI_QVGA_30HZ = 3,
- CAP_OPENNI_QVGA_60HZ = 4
- };
- enum { CAP_PROP_GSTREAMER_QUEUE_LENGTH = 200
- };
- enum { CAP_PROP_PVAPI_MULTICASTIP = 300,
- CAP_PROP_PVAPI_FRAMESTARTTRIGGERMODE = 301,
- CAP_PROP_PVAPI_DECIMATIONHORIZONTAL = 302,
- CAP_PROP_PVAPI_DECIMATIONVERTICAL = 303,
- CAP_PROP_PVAPI_BINNINGX = 304,
- CAP_PROP_PVAPI_BINNINGY = 305,
- CAP_PROP_PVAPI_PIXELFORMAT = 306
- };
- enum { CAP_PVAPI_FSTRIGMODE_FREERUN = 0,
- CAP_PVAPI_FSTRIGMODE_SYNCIN1 = 1,
- CAP_PVAPI_FSTRIGMODE_SYNCIN2 = 2,
- CAP_PVAPI_FSTRIGMODE_FIXEDRATE = 3,
- CAP_PVAPI_FSTRIGMODE_SOFTWARE = 4
- };
- enum { CAP_PVAPI_DECIMATION_OFF = 1,
- CAP_PVAPI_DECIMATION_2OUTOF4 = 2,
- CAP_PVAPI_DECIMATION_2OUTOF8 = 4,
- CAP_PVAPI_DECIMATION_2OUTOF16 = 8
- };
- enum { CAP_PVAPI_PIXELFORMAT_MONO8 = 1,
- CAP_PVAPI_PIXELFORMAT_MONO16 = 2,
- CAP_PVAPI_PIXELFORMAT_BAYER8 = 3,
- CAP_PVAPI_PIXELFORMAT_BAYER16 = 4,
- CAP_PVAPI_PIXELFORMAT_RGB24 = 5,
- CAP_PVAPI_PIXELFORMAT_BGR24 = 6,
- CAP_PVAPI_PIXELFORMAT_RGBA32 = 7,
- CAP_PVAPI_PIXELFORMAT_BGRA32 = 8,
- };
- enum { CAP_PROP_XI_DOWNSAMPLING = 400,
- CAP_PROP_XI_DATA_FORMAT = 401,
- CAP_PROP_XI_OFFSET_X = 402,
- CAP_PROP_XI_OFFSET_Y = 403,
- CAP_PROP_XI_TRG_SOURCE = 404,
- CAP_PROP_XI_TRG_SOFTWARE = 405,
- CAP_PROP_XI_GPI_SELECTOR = 406,
- CAP_PROP_XI_GPI_MODE = 407,
- CAP_PROP_XI_GPI_LEVEL = 408,
- CAP_PROP_XI_GPO_SELECTOR = 409,
- CAP_PROP_XI_GPO_MODE = 410,
- CAP_PROP_XI_LED_SELECTOR = 411,
- CAP_PROP_XI_LED_MODE = 412,
- CAP_PROP_XI_MANUAL_WB = 413,
- CAP_PROP_XI_AUTO_WB = 414,
- CAP_PROP_XI_AEAG = 415,
- CAP_PROP_XI_EXP_PRIORITY = 416,
- CAP_PROP_XI_AE_MAX_LIMIT = 417,
- CAP_PROP_XI_AG_MAX_LIMIT = 418,
- CAP_PROP_XI_AEAG_LEVEL = 419,
- CAP_PROP_XI_TIMEOUT = 420
- };
- enum { CAP_PROP_IOS_DEVICE_FOCUS = 9001,
- CAP_PROP_IOS_DEVICE_EXPOSURE = 9002,
- CAP_PROP_IOS_DEVICE_FLASH = 9003,
- CAP_PROP_IOS_DEVICE_WHITEBALANCE = 9004,
- CAP_PROP_IOS_DEVICE_TORCH = 9005
- };
- enum { CAP_PROP_GIGA_FRAME_OFFSET_X = 10001,
- CAP_PROP_GIGA_FRAME_OFFSET_Y = 10002,
- CAP_PROP_GIGA_FRAME_WIDTH_MAX = 10003,
- CAP_PROP_GIGA_FRAME_HEIGH_MAX = 10004,
- CAP_PROP_GIGA_FRAME_SENS_WIDTH = 10005,
- CAP_PROP_GIGA_FRAME_SENS_HEIGH = 10006
- };
- enum { CAP_PROP_INTELPERC_PROFILE_COUNT = 11001,
- CAP_PROP_INTELPERC_PROFILE_IDX = 11002,
- CAP_PROP_INTELPERC_DEPTH_LOW_CONFIDENCE_VALUE = 11003,
- CAP_PROP_INTELPERC_DEPTH_SATURATION_VALUE = 11004,
- CAP_PROP_INTELPERC_DEPTH_CONFIDENCE_THRESHOLD = 11005,
- CAP_PROP_INTELPERC_DEPTH_FOCAL_LENGTH_HORZ = 11006,
- CAP_PROP_INTELPERC_DEPTH_FOCAL_LENGTH_VERT = 11007
- };
- enum { CAP_INTELPERC_DEPTH_GENERATOR = 1 << 29,
- CAP_INTELPERC_IMAGE_GENERATOR = 1 << 28,
- CAP_INTELPERC_GENERATORS_MASK = CAP_INTELPERC_DEPTH_GENERATOR + CAP_INTELPERC_IMAGE_GENERATOR
- };
- enum { CAP_INTELPERC_DEPTH_MAP = 0,
- CAP_INTELPERC_UVDEPTH_MAP = 1,
- CAP_INTELPERC_IR_MAP = 2,
- CAP_INTELPERC_IMAGE = 3
- };
- enum { VIDEOWRITER_PROP_QUALITY = 1,
- VIDEOWRITER_PROP_FRAMEBYTES = 2,
- VIDEOWRITER_PROP_NSTRIPES = 3
- };
- enum { CAP_PROP_GPHOTO2_PREVIEW = 17001,
- CAP_PROP_GPHOTO2_WIDGET_ENUMERATE = 17002,
- CAP_PROP_GPHOTO2_RELOAD_CONFIG = 17003,
- CAP_PROP_GPHOTO2_RELOAD_ON_CHANGE = 17004,
- CAP_PROP_GPHOTO2_COLLECT_MSGS = 17005,
- CAP_PROP_GPHOTO2_FLUSH_MSGS = 17006,
- CAP_PROP_SPEED = 17007,
- CAP_PROP_APERTURE = 17008,
- CAP_PROP_EXPOSUREPROGRAM = 17009,
- CAP_PROP_VIEWFINDER = 17010
- };
- class IVideoCapture;
- class CV_EXPORTS_W VideoCapture
- {
- public:
-
- CV_WRAP VideoCapture();
-
- CV_WRAP VideoCapture(const String& filename);
-
- CV_WRAP VideoCapture(const String& filename, int apiPreference);
-
- CV_WRAP VideoCapture(int index);
- virtual ~VideoCapture();
-
- CV_WRAP virtual bool open(const String& filename);
-
- CV_WRAP virtual bool open(int index);
-
- CV_WRAP virtual bool isOpened() const;
-
- CV_WRAP virtual void release();
-
- CV_WRAP virtual bool grab();
-
- CV_WRAP virtual bool retrieve(OutputArray image, int flag = 0);
- virtual VideoCapture& operator >> (CV_OUT Mat& image);
- virtual VideoCapture& operator >> (CV_OUT UMat& image);
-
- CV_WRAP virtual bool read(OutputArray image);
-
- CV_WRAP virtual bool set(int propId, double value);
-
- CV_WRAP virtual double get(int propId) const;
-
- CV_WRAP virtual bool open(const String& filename, int apiPreference);
- protected:
- Ptr<CvCapture> cap;
- Ptr<IVideoCapture> icap;
- };
- class IVideoWriter;
- class CV_EXPORTS_W VideoWriter
- {
- public:
-
- CV_WRAP VideoWriter();
-
- CV_WRAP VideoWriter(const String& filename, int fourcc, double fps,
- Size frameSize, bool isColor = true);
- virtual ~VideoWriter();
-
- CV_WRAP virtual bool open(const String& filename, int fourcc, double fps,
- Size frameSize, bool isColor = true);
-
- CV_WRAP virtual bool isOpened() const;
-
- CV_WRAP virtual void release();
- virtual VideoWriter& operator << (const Mat& image);
-
- CV_WRAP virtual void write(const Mat& image);
-
- CV_WRAP virtual bool set(int propId, double value);
-
- CV_WRAP virtual double get(int propId) const;
-
- CV_WRAP static int fourcc(char c1, char c2, char c3, char c4);
- protected:
- Ptr<CvVideoWriter> writer;
- Ptr<IVideoWriter> iwriter;
- static Ptr<IVideoWriter> create(const String& filename, int fourcc, double fps,
- Size frameSize, bool isColor = true);
- };
- template<> CV_EXPORTS void DefaultDeleter<CvCapture>::operator ()(CvCapture* obj) const;
- template<> CV_EXPORTS void DefaultDeleter<CvVideoWriter>::operator ()(CvVideoWriter* obj) const;
- }
- #endif
|