summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Kost <ensonic@users.sf.net>2010-09-10 16:55:25 +0300
committerStefan Kost <ensonic@users.sf.net>2010-09-10 17:00:58 +0300
commit1f4f4581d89e9530a3ce89f56e6e8cbfb2b80648 (patch)
treef32c49cb3b5920e0ae3c6509ff5b8c01d21f4e85
parenta08d4a5447b09204b54b6cb77373dc7ac75c211d (diff)
v4l2src: don't skip calculating the duration
-rw-r--r--sys/v4l2/v4l2src_calls.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/sys/v4l2/v4l2src_calls.c b/sys/v4l2/v4l2src_calls.c
index ebdb0b339..e33fa618a 100644
--- a/sys/v4l2/v4l2src_calls.c
+++ b/sys/v4l2/v4l2src_calls.c
@@ -229,7 +229,7 @@ gst_v4l2src_set_capture (GstV4l2Src * v4l2src, guint32 pixelformat,
}
/* Is there a reason we require the caller to always specify a framerate? */
- GST_LOG_OBJECT (v4l2src, "Desired framerate: %u/%u", fps_n, fps_d);
+ GST_DEBUG_OBJECT (v4l2src, "Desired framerate: %u/%u", fps_n, fps_d);
memset (&stream, 0x00, sizeof (struct v4l2_streamparm));
stream.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
@@ -243,10 +243,8 @@ gst_v4l2src_set_capture (GstV4l2Src * v4l2src, guint32 pixelformat,
/* Note: V4L2 provides the frame interval, we have the frame rate */
if (fractions_are_equal (stream.parm.capture.timeperframe.numerator,
stream.parm.capture.timeperframe.denominator, fps_d, fps_n)) {
- GST_LOG_OBJECT (v4l2src, "Desired framerate already set");
- v4l2src->fps_n = fps_n;
- v4l2src->fps_d = fps_d;
- goto done;
+ GST_DEBUG_OBJECT (v4l2src, "Desired framerate already set");
+ goto already_set;
}
/* We want to change the frame rate, so check whether we can. Some cheap USB
@@ -270,6 +268,8 @@ gst_v4l2src_set_capture (GstV4l2Src * v4l2src, guint32 pixelformat,
goto done;
}
+already_set:
+
v4l2src->fps_n = fps_n;
v4l2src->fps_d = fps_d;
@@ -283,8 +283,6 @@ gst_v4l2src_set_capture (GstV4l2Src * v4l2src, guint32 pixelformat,
GST_INFO_OBJECT (v4l2src,
"Set framerate to %u/%u and duration to %" GST_TIME_FORMAT, fps_n, fps_d,
GST_TIME_ARGS (v4l2src->duration));
-
-
done:
return TRUE;