videoio: preserve conflict with common properties
authorAlexander Alekhin <alexander.alekhin@intel.com>
Thu, 1 Dec 2016 12:17:33 +0000 (15:17 +0300)
committerAlexander Alekhin <alexander.alekhin@intel.com>
Thu, 1 Dec 2016 12:37:12 +0000 (15:37 +0300)
Usage:
    writer.set(cv::CAP_PROP_IMAGES_BASE + cv::IMWRITE_JPEG_QUALITY, 80);

modules/videoio/include/opencv2/videoio.hpp
modules/videoio/src/cap_images.cpp

index c38875f..458e63d 100644 (file)
@@ -556,6 +556,20 @@ enum { CAP_PROP_GPHOTO2_PREVIEW           = 17001, //!< Capture only preview fro
 
 //! @} gPhoto2
 
+
+/** @name Images backend
+    @{
+*/
+
+/** @brief Images backend properties
+
+*/
+enum { CAP_PROP_IMAGES_BASE = 18000,
+       CAP_PROP_IMAGES_LAST = 19000 // excluding
+     };
+
+//! @} Images
+
 //! @} videoio_flags_others
 
 
index 4554186..f87c554 100644 (file)
@@ -393,9 +393,13 @@ bool CvVideoWriter_Images::open( const char* _filename )
 
 bool CvVideoWriter_Images::setProperty( int id, double value )
 {
-    params.push_back( id );
-    params.push_back( static_cast<int>( value ) );
-    return true;
+    if (id >= cv::CAP_PROP_IMAGES_BASE && id < cv::CAP_PROP_IMAGES_LAST)
+    {
+        params.push_back( id - cv::CAP_PROP_IMAGES_BASE );
+        params.push_back( static_cast<int>( value ) );
+        return true;
+    }
+    return false; // not supported
 }