From ca4bfb2e473ee6fd2ce257129a9a73e2bca1152f Mon Sep 17 00:00:00 2001 From: Lasse Laukkanen Date: Mon, 4 May 2009 10:33:18 +0300 Subject: camerabin: ignore night mode handling if already in night mode --- gst/camerabin/gstcamerabinphotography.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/gst/camerabin/gstcamerabinphotography.c b/gst/camerabin/gstcamerabinphotography.c index de95a196..cb17abca 100644 --- a/gst/camerabin/gstcamerabinphotography.c +++ b/gst/camerabin/gstcamerabinphotography.c @@ -382,14 +382,18 @@ static void gst_camerabin_handle_scene_mode (GstCameraBin * camera, GstSceneMode scene_mode) { if (scene_mode == GST_PHOTOGRAPHY_SCENE_MODE_NIGHT) { - GST_DEBUG ("enabling night mode, lowering fps"); - /* Make camerabin select the lowest allowed frame rate */ - camera->night_mode = TRUE; - /* Remember frame rate before setting night mode */ - camera->pre_night_fps_n = camera->fps_n; - camera->pre_night_fps_d = camera->fps_d; - g_signal_emit_by_name (camera, "user-res-fps", camera->width, - camera->height, 0, 0, 0); + if (!camera->night_mode) { + GST_DEBUG ("enabling night mode, lowering fps"); + /* Make camerabin select the lowest allowed frame rate */ + camera->night_mode = TRUE; + /* Remember frame rate before setting night mode */ + camera->pre_night_fps_n = camera->fps_n; + camera->pre_night_fps_d = camera->fps_d; + g_signal_emit_by_name (camera, "user-res-fps", camera->width, + camera->height, 0, 0, 0); + } else { + GST_DEBUG ("night mode already enabled"); + } } else { if (camera->night_mode) { GST_DEBUG ("disabling night mode, restoring fps to %d/%d", -- cgit v1.2.1