adding extra buffer parameter
authorStevenPuttemans <steven.puttemans@kuleuven.be>
Wed, 12 Nov 2014 09:48:24 +0000 (10:48 +0100)
committerDikay900 <dark900@xyz.de>
Tue, 26 May 2015 16:08:22 +0000 (18:08 +0200)
Conflicts:
modules/highgui/include/opencv2/highgui/highgui_c.h
modules/highgui/src/cap_dc1394_v2.cpp

fix typo

modules/videoio/include/opencv2/videoio/videoio_c.h
modules/videoio/src/cap_dc1394_v2.cpp

index 692def9..f5166bf 100644 (file)
@@ -183,6 +183,7 @@ enum
     CV_CAP_PROP_ROLL          =35,
     CV_CAP_PROP_IRIS          =36,
     CV_CAP_PROP_SETTINGS      =37,
+    CV_CAP_PROP_BUFFERSIZE    =38,
 
     CV_CAP_PROP_AUTOGRAB      =1024, // property for videoio class CvCapture_Android only
     CV_CAP_PROP_SUPPORTED_PREVIEW_SIZES_STRING=1025, // readonly, tricky property, returns cpnst char* indeed
index 20ec79b..3dcd204 100644 (file)
@@ -278,6 +278,7 @@ CvCaptureCAM_DC1394_v2_CPP::CvCaptureCAM_DC1394_v2_CPP()
     dcCam = 0;
     isoSpeed = 400;
     fps = 15;
+    // Resetted the value here to 1 in order to ensure only a single frame is stored in the buffer!
     nDMABufs = 8;
     started = false;
     cameraId = 0;
@@ -735,6 +736,11 @@ bool CvCaptureCAM_DC1394_v2_CPP::setProperty(int propId, double value)
           return false;
         isoSpeed = cvRound(value);
         break;
+    case CV_CAP_PROP_BUFFERSIZE:
+        if(started)
+            return false;
+        nDMABufs = value;
+        break;
         //The code below is based on coriander, callbacks.c:795, refer to case RANGE_MENU_MAN :
          default:
              if (propId<CV_CAP_PROP_MAX_DC1394 && dc1394properties[propId]!=-1