Android Camera 2 API-加速预览

时间:2019-11-18 08:12:02

标签: android performance android-camera2

我正在Android设备上的TextureView上预览USB相机。 我观察到渲染缓慢。

场景是-有一个物体(例如一个瓶子)将相机聚焦。有五颜六色的灯光(白色,红色,黄色等)。我通过逐个切换灯光来捕获对象的照片。假设我打开任何灯,那么预览大约需要2秒钟才能反映对象上的颜色变化。

下面是代码。

SurfaceTexture texture = textureView.getSurfaceTexture();
assert texture != null;
Surface surface = new Surface(texture);
CameraManager manager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
texture.setDefaultBufferSize(viewWidth,viewHeight);
CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraId);
captureRequestBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE);
captureRequestBuilder.set(CaptureRequest.CONTROL_SCENE_MODE, CaptureRequest.CONTROL_SCENE_MODE_ACTION);
captureRequestBuilder.set(CaptureRequest.CONTROL_SCENE_MODE,CaptureRequest.CONTROL_SCENE_MODE_HDR);
captureRequestBuilder.set(CaptureRequest.EDGE_MODE,CaptureRequest.EDGE_MODE_ZERO_SHUTTER_LAG);
captureRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_OFF);
captureRequestBuilder.addTarget(surface);

1 个答案:

答案 0 :(得分:0)

我认为,如果您使用TEMPLATE_PREVIEW而不是TEMPLATE_STILL_CAPTURE,将会获得更好的结果。