【Camera2 教程三】Camera2预览包括预览图像旋转方向和预览尺寸选择详解

时间:2024-04-12 10:10:00

上一章《Camera2相机打开和关闭接口调用详细说明》我们学习了如何开启和关闭相机,接下来我们来学习如何开启预览。

一, 获取预览尺寸

在第一章我们提到了 CameraCharacteristics 是一个只读的相机信息提供者,其内部携带大量的相机信息,包括代表相机朝向的 LENS_FACING;判断闪光灯是否可用的 FLASH_INFO_AVAILABLE;获取所有可用 AE 模式的 CONTROL_AE_AVAILABLE_MODES 等等。如果你对 Camera1 比较熟悉,那么 CameraCharacteristics 有点像 Camera1 的 Camera.CameraInfo 或者 Camera.Parameters。CameraCharacteristics 以键值对的方式提供相机信息,你可以通过 CameraCharacteristics.get() 方法获取相机信息,该方法要求你传递一个 Key 以确定你要获取哪方面的相机信息,例如下面的代码展示了如何获取摄像头方向信息:

对于每个摄像头ID,使用CameraManager的getCameraCharacteristics(String cameraId)方法来获取该摄像头的特性。在CameraCharacteristics中,你可以使用LENS_FACING键来获取摄像头的方向。这个键的值可以是LENS_FACING_FRONT或LENS_FACING_BACK,分别表示前置摄像头和后置摄像头。

for