|
|
|
@ -26,6 +26,8 @@
@@ -26,6 +26,8 @@
|
|
|
|
|
#include <linux/videodev2.h> |
|
|
|
|
#include <libv4l2.h> |
|
|
|
|
|
|
|
|
|
#include "../floatimg.h" |
|
|
|
|
|
|
|
|
|
#define CLEAR(x) memset(&(x), 0, sizeof(x)) |
|
|
|
|
|
|
|
|
|
struct buffer { |
|
|
|
@ -80,6 +82,7 @@ struct buffer *buffers;
@@ -80,6 +82,7 @@ struct buffer *buffers;
|
|
|
|
|
int period = 10; /* delai entre les captures */ |
|
|
|
|
int nbre_capt = 1; /* nombre de captures */ |
|
|
|
|
int opt; |
|
|
|
|
double t_debut, t_final; |
|
|
|
|
|
|
|
|
|
while ((opt = getopt(argc, argv, "d:hn:p:v")) != -1) { |
|
|
|
|
switch(opt) { |
|
|
|
@ -142,6 +145,7 @@ for (n_buffers = 0; n_buffers < req.count; ++n_buffers) {
@@ -142,6 +145,7 @@ for (n_buffers = 0; n_buffers < req.count; ++n_buffers) {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
t_debut = fimg_timer_set(0); |
|
|
|
|
for (i = 0; i < n_buffers; ++i) { |
|
|
|
|
CLEAR(buf); |
|
|
|
|
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; |
|
|
|
@ -194,6 +198,9 @@ for (i = 0; i < nbre_capt; i++) {
@@ -194,6 +198,9 @@ for (i = 0; i < nbre_capt; i++) {
|
|
|
|
|
xioctl(fd, VIDIOC_QBUF, &buf); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
t_final = fimg_timer_get(0); |
|
|
|
|
fprintf(stderr, "elapsed time %g s.\n", t_final); |
|
|
|
|
|
|
|
|
|
type = V4L2_BUF_TYPE_VIDEO_CAPTURE; |
|
|
|
|
xioctl(fd, VIDIOC_STREAMOFF, &type); |
|
|
|
|
for (i = 0; i < n_buffers; ++i) { |
|
|
|
|