summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2018-08-05 06:50:11 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2018-08-05 06:50:10 -0700
commit198f4d83c8c5db3196c483af0585a60344c4d0c5 (patch)
tree87e4caea42b04c6ceb84fb66b65317ecb628922f
parent0dce92c13ff0c2be6cb0984468fefcb49518fd8f (diff)
parent4c647eb4a568f34c425888bef3bd230049114dcb (diff)
downloadandroid_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-xres/values/camera2arrays.xml20
-rwxr-xr-xres/values/qcomstrings.xml14
-rwxr-xr-xres/xml/capture_preferences.xml14
-rwxr-xr-xres/xml/setting_menu_preferences.xml17
-rwxr-xr-xsrc/com/android/camera/CaptureModule.java29
-rwxr-xr-xsrc/com/android/camera/SettingsManager.java2
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";