Android examples for Camera:Camera Preview
set Best Camera Preview FPS
import java.util.Arrays; import java.util.Collection; import java.util.Iterator; import java.util.List; import android.hardware.Camera; import android.util.Log; public class Main { private static final String TAG = ""; private static final int MIN_FPS = 10; private static final int MAX_FPS = 20; public static void setBestPreviewFPS(Camera.Parameters parameters) { setBestPreviewFPS(parameters, MIN_FPS, MAX_FPS); }//from w w w . j ava2 s. c om public static void setBestPreviewFPS(Camera.Parameters parameters, int minFPS, int maxFPS) { List<int[]> supportedPreviewFpsRanges = parameters.getSupportedPreviewFpsRange(); if (supportedPreviewFpsRanges != null && !supportedPreviewFpsRanges.isEmpty()) { int[] suitableFPSRange = null; for (int[] fpsRange : supportedPreviewFpsRanges) { int thisMin = fpsRange[Camera.Parameters.PREVIEW_FPS_MIN_INDEX]; int thisMax = fpsRange[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]; if (thisMin >= minFPS * 1000 && thisMax <= maxFPS * 1000) { suitableFPSRange = fpsRange; break; } } if (suitableFPSRange == null) { Log.i(TAG, "Sem intervalo de QPS adequado?"); } else { int[] currentFpsRange = new int[2]; parameters.getPreviewFpsRange(currentFpsRange); if (Arrays.equals(currentFpsRange, suitableFPSRange)) { Log.i(TAG, Arrays.toString(suitableFPSRange)); } else { Log.i(TAG, Arrays.toString(suitableFPSRange)); parameters.setPreviewFpsRange(suitableFPSRange[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], suitableFPSRange[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); } } } } }