am 58046d50: am 81d6f3e5: camera2: (legacy) Fix the comparison for fixed-focus cameras

* commit '58046d50b68f58bb2d98cdcec68068af68837913':
  camera2: (legacy) Fix the comparison for fixed-focus cameras
This commit is contained in:
Igor Murashkin
2014-08-11 20:37:14 +00:00
committed by Android Git Automerger

View File

@@ -188,10 +188,6 @@ public class LegacyMetadataMapper {
*/
mapFlash(m, p);
/*
* request.*
*/
mapRequest(m, p);
// TODO: map other fields
/*
@@ -224,6 +220,13 @@ public class LegacyMetadataMapper {
*/
mapScalerStreamConfigs(m, p);
// Order matters below: Put this last so that we can read the metadata set previously
/*
* request.*
*/
mapRequest(m, p);
}
private static void mapScalerStreamConfigs(CameraMetadataNative m, Camera.Parameters p) {
@@ -553,11 +556,23 @@ public class LegacyMetadataMapper {
* We can tell if the lens is fixed focus;
* but if it's not, we can't tell the minimum focus distance, so leave it null then.
*/
if (p.getFocusMode() == Camera.Parameters.FOCUS_MODE_FIXED) {
if (VERBOSE) {
Log.v(TAG, "mapLens - focus-mode='" + p.getFocusMode() + "'");
}
if (Camera.Parameters.FOCUS_MODE_FIXED.equals(p.getFocusMode())) {
/*
* lens.info.minimumFocusDistance
*/
m.set(LENS_INFO_MINIMUM_FOCUS_DISTANCE, LENS_INFO_MINIMUM_FOCUS_DISTANCE_FIXED_FOCUS);
if (VERBOSE) {
Log.v(TAG, "mapLens - lens.info.minimumFocusDistance = 0");
}
} else {
if (VERBOSE) {
Log.v(TAG, "mapLens - lens.info.minimumFocusDistance is unknown");
}
}
float[] focalLengths = new float[] { p.getFocalLength() };
@@ -628,7 +643,17 @@ public class LegacyMetadataMapper {
CameraCharacteristics.STATISTICS_INFO_MAX_FACE_COUNT ,
CameraCharacteristics.SYNC_MAX_LATENCY ,
};
m.set(REQUEST_AVAILABLE_CHARACTERISTICS_KEYS, getTagsForKeys(availableKeys));
List<Key<?>> characteristicsKeys = new ArrayList<>(Arrays.asList(availableKeys));
/*
* Add the conditional keys
*/
if (m.get(LENS_INFO_MINIMUM_FOCUS_DISTANCE) != null) {
characteristicsKeys.add(LENS_INFO_MINIMUM_FOCUS_DISTANCE);
}
m.set(REQUEST_AVAILABLE_CHARACTERISTICS_KEYS,
getTagsForKeys(characteristicsKeys.toArray(new Key<?>[0])));
}
/*
@@ -1141,6 +1166,11 @@ public class LegacyMetadataMapper {
}
}
if (VERBOSE) {
Log.v(TAG, "createRequestTemplate (templateId=" + templateId + ")," +
" afMode=" + afMode + ", minimumFocusDistance=" + minimumFocusDistance);
}
m.set(CaptureRequest.CONTROL_AF_MODE, afMode);
}