123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- // This file is part of OpenCV project.
- // It is subject to the license terms in the LICENSE file found in the top-level directory
- // of this distribution and at http://opencv.org/license.html.
- #ifndef OPENCV_VIDEOIO_REGISTRY_HPP
- #define OPENCV_VIDEOIO_REGISTRY_HPP
- #include <opencv2/videoio.hpp>
- namespace cv { namespace videoio_registry {
- /** @addtogroup videoio_registry
- This section contains API description how to query/configure available Video I/O backends.
- Runtime configuration options:
- - enable debug mode: `OPENCV_VIDEOIO_DEBUG=1`
- - change backend priority: `OPENCV_VIDEOIO_PRIORITY_<backend>=9999`
- - disable backend: `OPENCV_VIDEOIO_PRIORITY_<backend>=0`
- - specify list of backends with high priority (>100000): `OPENCV_VIDEOIO_PRIORITY_LIST=FFMPEG,GSTREAMER`
- @{
- */
- /** @brief Returns backend API name or "UnknownVideoAPI(xxx)"
- @param api backend ID (#VideoCaptureAPIs)
- */
- CV_EXPORTS_W cv::String getBackendName(VideoCaptureAPIs api);
- /** @brief Returns list of all available backends */
- CV_EXPORTS_W std::vector<VideoCaptureAPIs> getBackends();
- /** @brief Returns list of available backends which works via `cv::VideoCapture(int index)` */
- CV_EXPORTS_W std::vector<VideoCaptureAPIs> getCameraBackends();
- /** @brief Returns list of available backends which works via `cv::VideoCapture(filename)` */
- CV_EXPORTS_W std::vector<VideoCaptureAPIs> getStreamBackends();
- /** @brief Returns list of available backends which works via `cv::VideoWriter()` */
- CV_EXPORTS_W std::vector<VideoCaptureAPIs> getWriterBackends();
- /** @brief Returns true if backend is available */
- CV_EXPORTS_W bool hasBackend(VideoCaptureAPIs api);
- /** @brief Returns true if backend is built in (false if backend is used as plugin) */
- CV_EXPORTS_W bool isBackendBuiltIn(VideoCaptureAPIs api);
- /** @brief Returns description and ABI/API version of videoio plugin's camera interface */
- CV_EXPORTS_W std::string getCameraBackendPluginVersion(
- VideoCaptureAPIs api,
- CV_OUT int& version_ABI,
- CV_OUT int& version_API
- );
- /** @brief Returns description and ABI/API version of videoio plugin's stream capture interface */
- CV_EXPORTS_W std::string getStreamBackendPluginVersion(
- VideoCaptureAPIs api,
- CV_OUT int& version_ABI,
- CV_OUT int& version_API
- );
- /** @brief Returns description and ABI/API version of videoio plugin's writer interface */
- CV_EXPORTS_W std::string getWriterBackendPluginVersion(
- VideoCaptureAPIs api,
- CV_OUT int& version_ABI,
- CV_OUT int& version_API
- );
- //! @}
- }} // namespace
- #endif // OPENCV_VIDEOIO_REGISTRY_HPP
|