diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2018-08-05 06:50:11 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-08-05 06:50:10 -0700 |
commit | 198f4d83c8c5db3196c483af0585a60344c4d0c5 (patch) | |
tree | 87e4caea42b04c6ceb84fb66b65317ecb628922f | |
parent | 0dce92c13ff0c2be6cb0984468fefcb49518fd8f (diff) | |
parent | 4c647eb4a568f34c425888bef3bd230049114dcb (diff) | |
download | android_packages_apps_Snap-198f4d83c8c5db3196c483af0585a60344c4d0c5.tar.gz android_packages_apps_Snap-198f4d83c8c5db3196c483af0585a60344c4d0c5.tar.bz2 android_packages_apps_Snap-198f4d83c8c5db3196c483af0585a60344c4d0c5.zip |
Merge "SnapdragonCamera: Complete the function of MFNR/MFSR"
-rwxr-xr-x | res/values/camera2arrays.xml | 20 | ||||
-rwxr-xr-x | res/values/qcomstrings.xml | 14 | ||||
-rwxr-xr-x | res/xml/capture_preferences.xml | 14 | ||||
-rwxr-xr-x | res/xml/setting_menu_preferences.xml | 17 | ||||
-rwxr-xr-x | src/com/android/camera/CaptureModule.java | 29 | ||||
-rwxr-xr-x | src/com/android/camera/SettingsManager.java | 2 |
6 files changed, 96 insertions, 0 deletions
diff --git a/res/values/camera2arrays.xml b/res/values/camera2arrays.xml index 0c07ed743..8c877476b 100755 --- a/res/values/camera2arrays.xml +++ b/res/values/camera2arrays.xml @@ -1195,4 +1195,24 @@ for time lapse recording --> <item>@string/pref_camera2_stats_visualizer_entry_value_enable_hist</item> </string-array> + <string-array name="pref_camera2_capture_mfnr_entries" translatable="false"> + <item>@string/pref_camera2_capture_mfnr_entry_disable</item> + <item>@string/pref_camera2_capture_mfnr_entry_enable</item> + </string-array> + + <string-array name="pref_camera2_capture_mfnr_entryvalues" translatable="false"> + <item>@string/pref_camera2_capture_mfnr_entry_value_disable</item> + <item>@string/pref_camera2_capture_mfnr_entry_value_enable</item> + </string-array> + + <string-array name="pref_camera2_capture_mfsr_entries" translatable="false"> + <item>@string/pref_camera2_capture_mfsr_entry_disable</item> + <item>@string/pref_camera2_capture_mfsr_entry_enable</item> + </string-array> + + <string-array name="pref_camera2_capture_mfsr_entryvalues" translatable="false"> + <item>@string/pref_camera2_capture_mfsr_entry_value_disable</item> + <item>@string/pref_camera2_capture_mfsr_entry_value_enable</item> + </string-array> + </resources> diff --git a/res/values/qcomstrings.xml b/res/values/qcomstrings.xml index 8ce41625c..8d12e70f6 100755 --- a/res/values/qcomstrings.xml +++ b/res/values/qcomstrings.xml @@ -1273,5 +1273,19 @@ <string name="pref_camera2_stats_visualizer_entry_value_enable_be" translatable="false">2</string> <string name="pref_camera2_stats_visualizer_entry_value_enable_hist" translatable="false">3</string> + <string name="pref_camera2_capture_mfnr_title" translatable="true">Capture MFNR</string> + <string name="pref_camera2_capture_mfnr_default" translatable="false">0</string> + <string name="pref_camera2_capture_mfnr_entry_enable" translatable="true">enable</string> + <string name="pref_camera2_capture_mfnr_entry_disable" translatable="true">disable</string> + <string name="pref_camera2_capture_mfnr_entry_value_enable" translatable="false">1</string> + <string name="pref_camera2_capture_mfnr_entry_value_disable" translatable="false">0</string> + + <string name="pref_camera2_capture_mfsr_title" translatable="true">Capture MFSR</string> + <string name="pref_camera2_capture_mfsr_default" translatable="false">0</string> + <string name="pref_camera2_capture_mfsr_entry_enable" translatable="true">enable</string> + <string name="pref_camera2_capture_mfsr_entry_disable" translatable="true">disable</string> + <string name="pref_camera2_capture_mfsr_entry_value_enable" translatable="false">1</string> + <string name="pref_camera2_capture_mfsr_entry_value_disable" translatable="false">0</string> + </resources> diff --git a/res/xml/capture_preferences.xml b/res/xml/capture_preferences.xml index 94fc08fb7..bc74e280b 100755 --- a/res/xml/capture_preferences.xml +++ b/res/xml/capture_preferences.xml @@ -441,4 +441,18 @@ camera:entries="@array/pref_camera2_stats_visualizer_entries" camera:entryValues="@array/pref_camera2_stats_visualizer_entryvalues" /> + <ListPreference + camera:key="pref_camera2_capture_mfnr_key" + camera:defaultValue="@string/pref_camera2_capture_mfnr_default" + camera:title="@string/pref_camera2_capture_mfnr_title" + camera:entries="@array/pref_camera2_capture_mfnr_entries" + camera:entryValues="@array/pref_camera2_capture_mfnr_entryvalues" /> + + <ListPreference + camera:key="pref_camera2_capture_mfsr_key" + camera:defaultValue="@string/pref_camera2_capture_mfsr_default" + camera:title="@string/pref_camera2_capture_mfsr_title" + camera:entries="@array/pref_camera2_capture_mfsr_entries" + camera:entryValues="@array/pref_camera2_capture_mfsr_entryvalues" /> + </PreferenceGroup> diff --git a/res/xml/setting_menu_preferences.xml b/res/xml/setting_menu_preferences.xml index bae2c4ba1..da47590be 100755 --- a/res/xml/setting_menu_preferences.xml +++ b/res/xml/setting_menu_preferences.xml @@ -455,5 +455,22 @@ android:layout="@layout/preference" android:summary="%s"/> + <ListPreference + android:key="pref_camera2_capture_mfnr_key" + android:defaultValue="@string/pref_camera2_capture_mfnr_default" + android:title="@string/pref_camera2_capture_mfnr_title" + android:entries="@array/pref_camera2_capture_mfnr_entries" + android:entryValues="@array/pref_camera2_capture_mfnr_entryvalues" + android:layout="@layout/preference" + android:summary="%s"/> + + <ListPreference + android:key="pref_camera2_capture_mfsr_key" + android:defaultValue="@string/pref_camera2_capture_mfsr_default" + android:title="@string/pref_camera2_capture_mfsr_title" + android:entries="@array/pref_camera2_capture_mfsr_entries" + android:entryValues="@array/pref_camera2_capture_mfsr_entryvalues" + android:layout="@layout/preference" + android:summary="%s"/> </PreferenceCategory> </PreferenceScreen> diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java index 449242cb3..6bcbc126d 100755 --- a/src/com/android/camera/CaptureModule.java +++ b/src/com/android/camera/CaptureModule.java @@ -358,6 +358,11 @@ public class CaptureModule implements CameraModule, PhotoController, public static final CaptureRequest.Key<Byte> earlyPCR = new CaptureRequest.Key<>("org.quic.camera.EarlyPCRenable.EarlyPCRenable", byte.class); + public static final CaptureRequest.Key<Integer> capture_mfnr_enable = + new CaptureRequest.Key<>("org.codeaurora.qcamera3.mfnr_enable", Integer.class); + public static final CaptureRequest.Key<Integer> capture_mfsr_enable = + new CaptureRequest.Key<>("org.codeaurora.qcamera3.mfsr_enable", Integer.class); + private boolean[] mTakingPicture = new boolean[MAX_NUM_CAM]; private int mControlAFMode = CameraMetadata.CONTROL_AF_MODE_CONTINUOUS_PICTURE; private int mLastResultAFState = -1; @@ -2039,6 +2044,8 @@ public class CaptureModule implements CameraModule, PhotoController, } VendorTagUtil.setCdsMode(captureBuilder, 2);// CDS 0-OFF, 1-ON, 2-AUTO applySettingsForCapture(captureBuilder, id); + applyCaptureMFNR(captureBuilder); + applyCaptureMFSR(captureBuilder); if (mUI.getCurrentProMode() == ProMode.MANUAL_MODE) { float value = mSettingsManager.getFocusValue(SettingsManager.KEY_FOCUS_DISTANCE); applyFocusDistance(captureBuilder, String.valueOf(value)); @@ -4373,6 +4380,28 @@ public class CaptureModule implements CameraModule, PhotoController, } } + private void applyCaptureMFNR(CaptureRequest.Builder builder) { + String value = mSettingsManager.getValue(SettingsManager.KEY_CAPTURE_MFNR_VALUE); + if (value != null) { + try { + builder.set(CaptureModule.capture_mfnr_enable, Integer.parseInt(value)); + } catch (IllegalArgumentException e) { + Log.w(TAG, "cannot find vendor tag: " + capture_mfnr_enable.toString()); + } + } + } + + private void applyCaptureMFSR(CaptureRequest.Builder builder) { + String value = mSettingsManager.getValue(SettingsManager.KEY_CAPTURE_MFSR_VALUE); + if (value != null) { + try { + builder.set(CaptureModule.capture_mfsr_enable, Integer.parseInt(value)); + } catch (IllegalArgumentException e) { + Log.w(TAG, "cannot find vendor tag: " + capture_mfsr_enable.toString()); + } + } + } + private void setOpModeForVideoStream(int cameraId) { int index = getSensorTableHFRRange(); if (index != -1) { diff --git a/src/com/android/camera/SettingsManager.java b/src/com/android/camera/SettingsManager.java index e184f1d30..3f5aab79f 100755 --- a/src/com/android/camera/SettingsManager.java +++ b/src/com/android/camera/SettingsManager.java @@ -152,6 +152,8 @@ public class SettingsManager implements ListMenu.SettingsListener { public static final String KEY_AUTO_HDR = "pref_camera2_auto_hdr_key"; public static final String KEY_HDR = "pref_camera2_hdr_key"; public static final String KEY_VIDEO_HDR_VALUE = "pref_camera2_video_hdr_key"; + public static final String KEY_CAPTURE_MFNR_VALUE = "pref_camera2_capture_mfnr_key"; + public static final String KEY_CAPTURE_MFSR_VALUE = "pref_camera2_capture_mfsr_key"; public static final String KEY_SAVERAW = "pref_camera2_saveraw_key"; public static final String KEY_ZOOM = "pref_camera2_zoom_key"; public static final String KEY_SHARPNESS_CONTROL_MODE = "pref_camera2_sharpness_control_key"; |