diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java index 97112bed11cf89631b5f1961903e5acfe5e0ae88..12993c776b7cf53039e62c656690ec5ca2121218 100644 --- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java +++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java @@ -93,7 +93,7 @@ public class VirtualCamera implements Camera.PreviewCallback { public int startPreview() { mCamera = Camera.open(mCameraId); - Camera.Parameters param = mCamera.getParameters(); + Camera.Parameters param = setDefaultParameters(mCamera.getParameters()); if (mIsUseH264) { param.setPreviewFormat(AvcEncoder.getImageFormat()); } else { @@ -107,7 +107,6 @@ public class VirtualCamera implements Camera.PreviewCallback { param.setPreviewSize(mWidth, mHeight); } - mCamera.setParameters(param); List mFpsRangeList = new LinkedList(); mFpsRangeList = param.getSupportedPreviewFpsRange(); for (int[] ele : mFpsRangeList) { @@ -117,6 +116,7 @@ public class VirtualCamera implements Camera.PreviewCallback { param.setPreviewFrameRate(mFps); } } + mCamera.setParameters(param); try { mSurfaceHolder = ParamBundle.getSurfaceHolder(); @@ -232,6 +232,9 @@ public class VirtualCamera implements Camera.PreviewCallback { } sb.deleteCharAt(sb.length() - 1); param.set("focus-mode-values", sb.toString()); + if (sb.toString().contains(FOCUS_MODE_CONTINUOUS_PICTURE)) { + param.setFocusMode(FOCUS_MODE_CONTINUOUS_PICTURE); + } List picSize = param.getSupportedPictureSizes(); sb = new StringBuilder();