1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| bool CaptureDev::Init(int aDevice)
{
if (maVideoCap.isOpened())
maVideoCap.release();
#ifdef NATIVE_BUILD
// Linux
// FIXME : propose a list of active devices
//maVideoCap.open(maDevNumber);
maDevNumber = aDevice;
maVideoCap.open(maDevNumber);
#else
// Windows
// http://docs.opencv.org/trunk/d0/da7/videoio_overview.html
maVideoCap.open(maDevNumber + cv::CAP_DSHOW);
#endif /* NATIVE_BUILD */
if (!maVideoCap.isOpened() || !bFirstFrameSuccess())
std::cerr << "***Could not initialize capturing...***" << std::endl;
#if defined(_WIN32) || defined (WIN32)
// works only on Windows
setFourCC(CV_FOURCC('M','J','P','G'));
#endif
initializeFrameSize();
#ifdef NATIVE_BUILD
setCaptureFPS(LINUX_DEFAULT_FRAMERATE);
#endif
mfCaptureFPS = getCaptureFPS();
return true;
} |
Partager