Loading core/java/android/hardware/camera2/legacy/LegacyMetadataMapper.java +3 −2 Original line number Diff line number Diff line Loading @@ -415,8 +415,9 @@ public class LegacyMetadataMapper { Range<Integer>[] ranges = new Range[rangesSize]; int i = 0; for (int[] r : fpsRanges) { ranges[i++] = Range.create(r[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], r[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); ranges[i++] = Range.create( (int) Math.floor(r[Camera.Parameters.PREVIEW_FPS_MIN_INDEX] / 1000.0), (int) Math.ceil(r[Camera.Parameters.PREVIEW_FPS_MAX_INDEX] / 1000.0)); } m.set(CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES, ranges); } Loading core/java/android/hardware/camera2/legacy/LegacyRequestMapper.java +11 −9 Original line number Diff line number Diff line Loading @@ -162,17 +162,19 @@ public class LegacyRequestMapper { if (aeFpsRange != null) { int[] legacyFps = convertAeFpsRangeToLegacy(aeFpsRange); // TODO - Should we enforce that all HAL1 devices must include (30, 30) FPS range? boolean supported = false; int[] rangeToApply = null; for(int[] range : params.getSupportedPreviewFpsRange()) { if (legacyFps[0] == range[0] && legacyFps[1] == range[1]) { supported = true; // Round range up/down to integer FPS value int intRangeLow = (int) Math.floor(range[0] / 1000.0) * 1000; int intRangeHigh = (int) Math.ceil(range[1] / 1000.0) * 1000; if (legacyFps[0] == intRangeLow && legacyFps[1] == intRangeHigh) { rangeToApply = range; break; } } if (supported) { params.setPreviewFpsRange(legacyFps[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], legacyFps[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); if (rangeToApply != null) { params.setPreviewFpsRange(rangeToApply[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], rangeToApply[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); } else { Log.w(TAG, "Unsupported FPS range set [" + legacyFps[0] + "," + legacyFps[1] + "]"); } Loading Loading @@ -626,8 +628,8 @@ public class LegacyRequestMapper { private static int[] convertAeFpsRangeToLegacy(Range<Integer> fpsRange) { int[] legacyFps = new int[2]; legacyFps[Parameters.PREVIEW_FPS_MIN_INDEX] = fpsRange.getLower(); legacyFps[Parameters.PREVIEW_FPS_MAX_INDEX] = fpsRange.getUpper(); legacyFps[Parameters.PREVIEW_FPS_MIN_INDEX] = fpsRange.getLower() * 1000; legacyFps[Parameters.PREVIEW_FPS_MAX_INDEX] = fpsRange.getUpper() * 1000; return legacyFps; } Loading Loading
core/java/android/hardware/camera2/legacy/LegacyMetadataMapper.java +3 −2 Original line number Diff line number Diff line Loading @@ -415,8 +415,9 @@ public class LegacyMetadataMapper { Range<Integer>[] ranges = new Range[rangesSize]; int i = 0; for (int[] r : fpsRanges) { ranges[i++] = Range.create(r[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], r[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); ranges[i++] = Range.create( (int) Math.floor(r[Camera.Parameters.PREVIEW_FPS_MIN_INDEX] / 1000.0), (int) Math.ceil(r[Camera.Parameters.PREVIEW_FPS_MAX_INDEX] / 1000.0)); } m.set(CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES, ranges); } Loading
core/java/android/hardware/camera2/legacy/LegacyRequestMapper.java +11 −9 Original line number Diff line number Diff line Loading @@ -162,17 +162,19 @@ public class LegacyRequestMapper { if (aeFpsRange != null) { int[] legacyFps = convertAeFpsRangeToLegacy(aeFpsRange); // TODO - Should we enforce that all HAL1 devices must include (30, 30) FPS range? boolean supported = false; int[] rangeToApply = null; for(int[] range : params.getSupportedPreviewFpsRange()) { if (legacyFps[0] == range[0] && legacyFps[1] == range[1]) { supported = true; // Round range up/down to integer FPS value int intRangeLow = (int) Math.floor(range[0] / 1000.0) * 1000; int intRangeHigh = (int) Math.ceil(range[1] / 1000.0) * 1000; if (legacyFps[0] == intRangeLow && legacyFps[1] == intRangeHigh) { rangeToApply = range; break; } } if (supported) { params.setPreviewFpsRange(legacyFps[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], legacyFps[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); if (rangeToApply != null) { params.setPreviewFpsRange(rangeToApply[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], rangeToApply[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); } else { Log.w(TAG, "Unsupported FPS range set [" + legacyFps[0] + "," + legacyFps[1] + "]"); } Loading Loading @@ -626,8 +628,8 @@ public class LegacyRequestMapper { private static int[] convertAeFpsRangeToLegacy(Range<Integer> fpsRange) { int[] legacyFps = new int[2]; legacyFps[Parameters.PREVIEW_FPS_MIN_INDEX] = fpsRange.getLower(); legacyFps[Parameters.PREVIEW_FPS_MAX_INDEX] = fpsRange.getUpper(); legacyFps[Parameters.PREVIEW_FPS_MIN_INDEX] = fpsRange.getLower() * 1000; legacyFps[Parameters.PREVIEW_FPS_MAX_INDEX] = fpsRange.getUpper() * 1000; return legacyFps; } Loading