summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/VideoMenu.java
diff options
context:
space:
mode:
authorweijiew <weijiew@codeaurora.org>2016-08-04 10:49:18 +0800
committerweijiew <weijiew@codeaurora.org>2016-08-16 09:19:02 +0800
commit0fa0d86695d9f359e1c32e24b4e1cf39748555b4 (patch)
tree680b7a1ea733b6dc1da2a18b42a2054652b22168 /src/com/android/camera/VideoMenu.java
parent9f65ee95c61d70d6f7c34cd8bedea61ff1cdf2d1 (diff)
downloadandroid_packages_apps_Snap-0fa0d86695d9f359e1c32e24b4e1cf39748555b4.tar.gz
android_packages_apps_Snap-0fa0d86695d9f359e1c32e24b4e1cf39748555b4.tar.bz2
android_packages_apps_Snap-0fa0d86695d9f359e1c32e24b4e1cf39748555b4.zip
SnapdragonCamera: disable HFR when image stabilization turned on
HFR/HSR recording not supported with image stabilization, timelapse,HDR option.HFR/HSR menu must be disable when image stabilization,timelapse,HDR option are turn on Change-Id: I12573e57dab274297dff82b1a9082bc7602f2933 CRs-fixed: 1046239
Diffstat (limited to 'src/com/android/camera/VideoMenu.java')
-rw-r--r--src/com/android/camera/VideoMenu.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/com/android/camera/VideoMenu.java b/src/com/android/camera/VideoMenu.java
index a482a919d..aae59faf7 100644
--- a/src/com/android/camera/VideoMenu.java
+++ b/src/com/android/camera/VideoMenu.java
@@ -676,6 +676,7 @@ public class VideoMenu extends MenuController
overrideMenuFor4K();
overrideMenuForCDSMode();
overrideMenuForSeeMore();
+ overrideMenuForVideoHighFrameRate();
}
private void overrideMenuForLocation() {
@@ -759,6 +760,38 @@ public class VideoMenu extends MenuController
}
+ private void overrideMenuForVideoHighFrameRate() {
+ ListPreference disPref = mPreferenceGroup
+ .findPreference(CameraSettings.KEY_DIS);
+ ListPreference frameIntervalPref = mPreferenceGroup
+ .findPreference(CameraSettings.KEY_VIDEO_TIME_LAPSE_FRAME_INTERVAL);
+ ListPreference videoHDRPref = mPreferenceGroup
+ .findPreference(CameraSettings.KEY_VIDEO_HDR);
+ String disMode = disPref.getValue();
+ String videoHDR = videoHDRPref == null ? "off" : videoHDRPref.getValue();
+ String frameIntervalStr = frameIntervalPref.getValue();
+ int timeLapseInterval = Integer.parseInt(frameIntervalStr);
+ int PERSIST_EIS_MAX_FPS = android.os.SystemProperties
+ .getInt("persist.camcorder.eis.maxfps", 30);
+ ListPreference hfrPref = mPreferenceGroup
+ .findPreference(CameraSettings.KEY_VIDEO_HIGH_FRAME_RATE);
+ String highFrameRate = hfrPref.getValue();
+ boolean isHFR = "hfr".equals(highFrameRate.substring(0,3));
+ boolean isHSR = "hsr".equals(highFrameRate.substring(0,3));
+ int rate = 0;
+ if ( isHFR || isHSR ) {
+ String hfrRate = highFrameRate.substring(3);
+ rate = Integer.parseInt(hfrRate);
+ }
+
+ if ((disMode.equals("enable") && rate > PERSIST_EIS_MAX_FPS)
+ || !videoHDR.equals("off")
+ || timeLapseInterval != 0) {
+ mListMenu.setPreferenceEnabled(CameraSettings.KEY_VIDEO_HIGH_FRAME_RATE, false);
+ }
+
+ }
+
@Override
public void overrideSettings(final String... keyvalues) {
super.overrideSettings(keyvalues);
@@ -792,6 +825,7 @@ public class VideoMenu extends MenuController
mListMenu = popup1;
overridePreferenceAccessibility();
+ overrideMenuForVideoHighFrameRate();
}
public void popupDismissed(boolean topPopupOnly) {