summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxianming wang <mingwax@codeaurora.org>2019-10-08 16:11:11 +0800
committerxianming wang <mingwax@codeaurora.org>2019-10-08 16:29:11 +0800
commitc058e3fdfeda1c9836024ce135e567186bfeac35 (patch)
tree305ba6f1ec98e29dfb101b6cfc7fb176525b38f3
parent240a5a28559c5fd2e5fc54ec5bd77d73bcf9e9ea (diff)
downloadandroid_packages_apps_Snap-c058e3fdfeda1c9836024ce135e567186bfeac35.tar.gz
android_packages_apps_Snap-c058e3fdfeda1c9836024ce135e567186bfeac35.tar.bz2
android_packages_apps_Snap-c058e3fdfeda1c9836024ce135e567186bfeac35.zip
SnapdragonCamera: Disable MPEG4 when enable EIS and less 720P
Disable MPEG4 encoder when enable EIS and video quality less than 720P. CRs-Fixed: 2532891 Change-Id: I48c450c47b77500562aa53c31edbae5caf873a0b
-rwxr-xr-xsrc/com/android/camera/SettingsActivity.java6
-rwxr-xr-xsrc/com/android/camera/SettingsManager.java20
2 files changed, 26 insertions, 0 deletions
diff --git a/src/com/android/camera/SettingsActivity.java b/src/com/android/camera/SettingsActivity.java
index ae7b48293..3fef92493 100755
--- a/src/com/android/camera/SettingsActivity.java
+++ b/src/com/android/camera/SettingsActivity.java
@@ -159,6 +159,12 @@ public class SettingsActivity extends PreferenceActivity {
if ( (pref.getKey().equals(SettingsManager.KEY_MANUAL_WB)) ) {
updateManualWBSettings();
}
+
+ if (pref.getKey().equals(SettingsManager.KEY_VIDEO_QUALITY) ||
+ pref.getKey().equals(SettingsManager.KEY_DIS) ||
+ pref.getKey().equals(SettingsManager.KEY_EIS_VALUE)) {
+ updatePreference(SettingsManager.KEY_VIDEO_ENCODER);
+ }
}
}
};
diff --git a/src/com/android/camera/SettingsManager.java b/src/com/android/camera/SettingsManager.java
index 253108603..41e12af98 100755
--- a/src/com/android/camera/SettingsManager.java
+++ b/src/com/android/camera/SettingsManager.java
@@ -1091,6 +1091,9 @@ public class SettingsManager implements ListMenu.SettingsListener {
filterVideoEncoderProfileOptions();
} else if (pref.getKey().equals(KEY_PICTURE_FORMAT)) {
filterHeifSizeOptions();
+ } else if (pref.getKey().equals(KEY_DIS) ||
+ pref.getKey().equals(KEY_EIS_VALUE)) {
+ filterVideoEncoderOptions();
}
}
@@ -1941,6 +1944,23 @@ public class SettingsManager implements ListMenu.SettingsListener {
}
}
}
+
+ ListPreference videoQuality = mPreferenceGroup.findPreference(KEY_VIDEO_QUALITY);
+ String videoSize = videoQuality.getValue();
+ int indexX = videoSize.indexOf('x');
+ int width = Integer.parseInt(videoSize.substring(0, indexX));
+ int height = Integer.parseInt(videoSize.substring(indexX + 1));
+ // Video quality less than 720P
+ boolean isLess720P = width < 1280 && height < 720;
+
+ ListPreference disPref = mPreferenceGroup.findPreference(KEY_DIS);
+ ListPreference eisPref = mPreferenceGroup.findPreference(KEY_EIS_VALUE);
+ if (isLess720P &&
+ "on".equals(disPref.getValue()) &&
+ !("disable".equals(eisPref.getValue()))) {
+ supported.remove("mpeg-4-sp");
+ }
+
return supported;
}