diff options
author | weijiew <weijiew@codeaurora.org> | 2016-08-04 10:49:18 +0800 |
---|---|---|
committer | weijiew <weijiew@codeaurora.org> | 2016-08-16 09:19:02 +0800 |
commit | 0fa0d86695d9f359e1c32e24b4e1cf39748555b4 (patch) | |
tree | 680b7a1ea733b6dc1da2a18b42a2054652b22168 /src/com/android/camera/VideoMenu.java | |
parent | 9f65ee95c61d70d6f7c34cd8bedea61ff1cdf2d1 (diff) | |
download | android_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.java | 34 |
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) { |