diff --git a/modules/videoio/include/opencv2/videoio.hpp b/modules/videoio/include/opencv2/videoio.hpp index c8c5d67c77..c38875f7d2 100644 --- a/modules/videoio/include/opencv2/videoio.hpp +++ b/modules/videoio/include/opencv2/videoio.hpp @@ -650,6 +650,16 @@ public: */ CV_WRAP virtual bool open(int index); + /** @brief Open a camera for video capturing + + @overload + + This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. + Parameters are similar as the constructor VideoCapture(int index),except it takes an additional argument apiPreference. + @return open(cameraNum + apiPreference). + */ + CV_WRAP bool open(int cameraNum, int apiPreference); + /** @brief Returns true if video capturing has been initialized already. If the previous call to VideoCapture constructor or VideoCapture::open() succeeded, the method returns diff --git a/modules/videoio/src/cap.cpp b/modules/videoio/src/cap.cpp index d5aec38ded..f61cc4c3ff 100644 --- a/modules/videoio/src/cap.cpp +++ b/modules/videoio/src/cap.cpp @@ -606,6 +606,11 @@ bool VideoCapture::open(int index) cap.reset(cvCreateCameraCapture(index)); return isOpened(); } +bool VideoCapture::open(int cameraNum, int apiPreference) +{ + cameraNum = cameraNum + apiPreference; + return open(cameraNum); +} bool VideoCapture::isOpened() const {