Camera.Parameters params = camera.getParameters();
params.setPreviewFormat(ImageFormat.NV21);
params.setPreviewFrameRate(15);
List<Camera.Size> supportedSizes = params.getSupportedPreviewSizes();
// Chose one of the supportedSizes
Camera.Size chosenSize = chooseSize(supportedSizes);
params.setPreviewSize(chosenSize.width, chosenSize.height);
camera.setParameters(params);
Camera.Size previewSize = camera.getParameters().getPreviewSize();
// Set the size of the SurfaceView to be proportional to the
// aspect ratio of the preview size.
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
previewSize.width * 3, previewSize.height * 3);
mySurfaceView.setLayoutParams(layoutParams);