diff --git a/camera/exynos_camera.c b/camera/exynos_camera.c index 00c2daa..3261904 100644 --- a/camera/exynos_camera.c +++ b/camera/exynos_camera.c @@ -2235,6 +2235,12 @@ int exynos_camera_recording_start(struct exynos_camera *exynos_camera) } } + rc = exynos_v4l2_s_ctrl(exynos_camera, 0, V4L2_CID_CAMERA_FOCUS_MODE, FOCUS_MODE_CONTINOUS); + if (rc < 0) { + ALOGE("%s: s ctrl failed!", __func__); + goto error; + } + rc = exynos_v4l2_s_ctrl(exynos_camera, 2, V4L2_CID_ROTATION, exynos_camera->camera_rotation); if (rc < 0) { @@ -2291,6 +2297,11 @@ void exynos_camera_recording_stop(struct exynos_camera *exynos_camera) pthread_mutex_lock(&exynos_camera->preview_mutex); + rc = exynos_v4l2_s_ctrl(exynos_camera, 0, V4L2_CID_CAMERA_FOCUS_MODE, FOCUS_MODE_AUTO); + if (rc < 0) { + ALOGE("%s: s ctrl failed!", __func__); + } + rc = exynos_v4l2_streamoff_cap(exynos_camera, 2); if (rc < 0) { ALOGE("%s: streamoff failed!", __func__);