How can I adjust the FPS that my v4l2 camera captures at?
1 | initial version |
How can I adjust the FPS that my v4l2 camera captures at?
2 | No.2 Revision |
How can I adjust the FPS that my v4l2 camera captures at?
The following patch seems to solve it, but is there any other way? From 0ad873a3682a1d7354b8c233e71fc76c7bb319b1 Mon Sep 17 00:00:00 2001 From: Anders Musikka [email protected] Date: Wed, 13 Feb 2013 08:45:04 +0100 Subject: [PATCH] Add FPS adjust possibility
modules/highgui/src/cap_libv4l.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
diff --git a/modules/highgui/src/cap_libv4l.cpp b/modules/highgui/src/cap_libv4l.cpp index 63a2ff9..179c90f 100644 --- a/modules/highgui/src/cap_libv4l.cpp +++ b/modules/highgui/src/cap_libv4l.cpp @@ -1665,6 +1665,22 @@ static int icvSetPropertyCAM_V4L(CvCaptureCAM_V4L* capture, int property_id, dou width = height = 0; } break; + case CV_CAP_PROP_FPS: + { + struct v4l2_streamparm streamparm; + struct v4l2_fract *tpf; + memset (&streamparm, 0, sizeof (streamparm)); + streamparm.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; + tpf = &streamparm.parm.capture.timeperframe; + tpf->numerator = 1; + tpf->denominator = cvRound(value); + retval=1; + if (ioctl(capture->deviceHandle, VIDIOC_S_PARM, &streamparm) < 0) { + fprintf(stderr,"Failed to set camera FPS: %s\n",strerror(errno)); + retval=0; + } + break; + } default: retval = icvSetControl(capture, property_id, value);
1.7.9.5
3 | No.3 Revision |
How can I adjust the FPS that my v4l2 camera captures at?
The following patch seems to solve it, but is there any other way? From 0ad873a3682a1d7354b8c233e71fc76c7bb319b1 Mon Sep 17 00:00:00 2001 From: Anders Musikka [email protected] Date: Wed, 13 Feb 2013 08:45:04 +0100 Subject: [PATCH] Add FPS adjust possibility
---
modules/highgui/src/cap_libv4l.cpp | 16 ++++++++++++++++
1 file changed, 16 1.7.9.5
4 | No.4 Revision |
How can I adjust the FPS that my v4l2 camera captures at?
The following patch seems to solve it, but is there any other way?
From 0ad873a3682a1d7354b8c233e71fc76c7bb319b1 way?
From 0ad873a3682a1d7354b8c233e71fc76c7bb319b1 Mon Sep 17 00:00:00
20012001 From:AndersAnders Musikka [email protected] Date: Wed, 13 Feb 2013 08:45:04 +0100 Subject: [PATCH] Add FPSadjustadjust possibility
---
modules/highgui/src/cap_libv4l.cpp | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/modules/highgui/src/cap_libv4l.cpp b/modules/highgui/src/cap_libv4l.cpp
index 63a2ff9..179c90f 100644
--- a/modules/highgui/src/cap_libv4l.cpp
+++ b/modules/highgui/src/cap_libv4l.cpp
@@ -1665,6 +1665,22 @@ static int icvSetPropertyCAM_V4L(CvCaptureCAM_V4L* capture, int property_id, dou
width = height = 0;
}
break;
+ case CV_CAP_PROP_FPS:
+ {
+ struct v4l2_streamparm streamparm;
+ struct v4l2_fract *tpf;
+ memset (&streamparm, 0, sizeof (streamparm));
+ streamparm.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
+ tpf = &streamparm.parm.capture.timeperframe;
+ tpf->numerator = 1;
+ tpf->denominator = cvRound(value);
+ retval=1;
+ if (ioctl(capture->deviceHandle, VIDIOC_S_PARM, &streamparm) < 0) {
+ fprintf(stderr,"Failed to set camera FPS: %s\n",strerror(errno));
+ retval=0;
+ }
+ break;
+ }
default:
retval = icvSetControl(capture, property_id, value);
}
--
1.7.9.5