我想使用camera2 api在android中同时打开相机并设置割炬模式。但是由于打开摄像机的优先级较高,因此割炬模式已关闭。如何同时使用两者?
private void openCamera()引发CameraAccessException { CameraManager cameraManager =(CameraManager)getSystemService(Context.CAMERA_SERVICE); cameraId = cameraManager.getCameraIdList()[0];
CameraCharacteristics cc = cameraManager.getCameraCharacteristics(cameraId);
StreamConfigurationMap map = cc.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);
imageDimensions = map.getOutputSizes(SurfaceTexture.class)[0];
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
return;
}
cameraManager.openCamera(cameraId, stateCallback, null);
cameraManager.setTorchMode(cameraId, true);
}
在camera2 api中无法同时使用两者
答案 0 :(得分:0)
打开相机后,您可以在预览捕获请求中使用FLASH_MODE并将其设置为TORCH。
这意味着您需要将AE_MODE设置为ON或OFF,而不是FLASH模式之一,以使自动曝光无法控制闪光灯。