diff options
author | xianming wang <mingwax@codeaurora.org> | 2019-10-08 16:11:11 +0800 |
---|---|---|
committer | xianming wang <mingwax@codeaurora.org> | 2019-10-08 16:29:11 +0800 |
commit | c058e3fdfeda1c9836024ce135e567186bfeac35 (patch) | |
tree | 305ba6f1ec98e29dfb101b6cfc7fb176525b38f3 | |
parent | 240a5a28559c5fd2e5fc54ec5bd77d73bcf9e9ea (diff) | |
download | android_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-x | src/com/android/camera/SettingsActivity.java | 6 | ||||
-rwxr-xr-x | src/com/android/camera/SettingsManager.java | 20 |
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; } |