private static Camera.Size chooseVideoSize(BaseCaptureInterface ci, List<Camera.Size> choices) { Camera.Size backupSize = null; for (Camera.Size size : choices) { if (size.height <= ci.videoPreferredHeight()) { if (size.width == size.height * ci.videoPreferredAspect()) return size; if (ci.videoPreferredHeight() >= size.height) backupSize = size; } } if (backupSize != null) return backupSize; LOG(CameraFragment.class, "Couldn't find any suitable video size"); return choices.get(choices.size() - 1); }