Setting camera parameters on Android 2.2.2 fixed. Old Android does not support continuous-video focus mode.

This commit is contained in:
Alexander Smorkalov 2012-04-10 09:02:50 +00:00
parent 38befe3336
commit 54001572d5
4 changed files with 29 additions and 5 deletions

View File

@ -71,9 +71,15 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde
}
params.setPreviewSize(getFrameWidth(), getFrameHeight());
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
List<String> FocusModes = params.getSupportedFocusModes();
if (FocusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO))
{
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
}
mCamera.setParameters(params);
/* Now allocate the buffer */
params = mCamera.getParameters();
int size = params.getPreviewSize().width * params.getPreviewSize().height;

View File

@ -71,7 +71,13 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde
}
params.setPreviewSize(getFrameWidth(), getFrameHeight());
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
List<String> FocusModes = params.getSupportedFocusModes();
if (FocusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO))
{
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
}
mCamera.setParameters(params);
/* Now allocate the buffer */

View File

@ -70,7 +70,13 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde
}
params.setPreviewSize(getFrameWidth(), getFrameHeight());
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
List<String> FocusModes = params.getSupportedFocusModes();
if (FocusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO))
{
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
}
mCamera.setParameters(params);
/* Now allocate the buffer */

View File

@ -70,7 +70,13 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde
}
params.setPreviewSize(getFrameWidth(), getFrameHeight());
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
List<String> FocusModes = params.getSupportedFocusModes();
if (FocusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO))
{
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
}
mCamera.setParameters(params);
/* Now allocate the buffer */