From 29d9543e780e0bb0509feca4461810332510df74 Mon Sep 17 00:00:00 2001
From: jinwu <jinwu@codeaurora.org>
Date: Wed, 15 Jul 2020 21:03:30 +0800
Subject: [PATCH] Snapcam: Fix preview fps changed after recording

Checking preview fps value before recording start, if it's not 30
then resend capture requests with video buffer added.

Change-Id: Ib313cd279814bf2d3acc853eef2c6dae3a971d56
---
 src/com/android/camera/CaptureModule.java | 22 +++++++++-------------
 1 file changed, 9 insertions(+), 13 deletions(-)

diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java
index 5e37a3c3f..26780542e 100755
--- a/src/com/android/camera/CaptureModule.java
+++ b/src/com/android/camera/CaptureModule.java
@@ -2175,8 +2175,7 @@ public class CaptureModule implements CameraModule, PhotoController,
                 } else {
                     int preivewFPS = mSettingsManager.getVideoPreviewFPS(mVideoSize,
                             mSettingsManager.getVideoFPS());
-                    if(mSettingsManager.getVideoFPS() == NORMAL_SESSION_MAX_FPS
-                            && preivewFPS == 30){
+                    if(preivewFPS == 30) {
                         mVideoRecordRequestBuilder.addTarget(mMediaRecorderSurface);
                     }
                     configureCameraSessionWithParameters(cameraId, surfaces,
@@ -5821,17 +5820,14 @@ public class CaptureModule implements CameraModule, PhotoController,
                 mUI.clearFocus();
             }
             mUI.hideUIwhileRecording();
-            if (isHighSpeedRateCapture()) {
-                List<CaptureRequest> slowMoRequests  = mSuperSlomoCapture ?
-                        createSSMBatchRequest(mVideoRecordRequestBuilder) :
-                        ((CameraConstrainedHighSpeedCaptureSession) mCurrentSession).
-                                createHighSpeedRequestList(mVideoRecordRequestBuilder.build());
-                mCurrentSession.setRepeatingBurst(slowMoRequests, mCaptureCallback,
-                        mCameraHandler);
-            } else {
-                mVideoRecordRequestBuilder.addTarget(mMediaRecorderSurface);
-                mCurrentSession.setRepeatingRequest(mVideoRecordRequestBuilder.build(),
-                        mCaptureCallback, mCameraHandler);
+            if (!isHighSpeedRateCapture()) {
+                int preivewFPS = mSettingsManager.getVideoPreviewFPS(mVideoSize,
+                        mSettingsManager.getVideoFPS());
+                if (preivewFPS != 30) {
+                    mVideoRecordRequestBuilder.addTarget(mMediaRecorderSurface);
+                    mCurrentSession.setRepeatingRequest(mVideoRecordRequestBuilder.build(),
+                            mCaptureCallback, mCameraHandler);
+                }
             }
             mCameraHandler.removeMessages(CANCEL_TOUCH_FOCUS, mCameraId[cameraId]);
             if (!mFrameProcessor.isFrameListnerEnabled() && !startMediaRecorder() ||
-- 
GitLab