为什么 camera2 支持的预览尺寸宽度总是大于高度?
Why camera2 supported preview size width always bigger than height?
我正在做一个使用 camera2 API 的项目。当我使用以下方式获取支持的输出预览大小列表时:
StreamConfigurationMap map = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);
Size[] choices = map.getOutputSizes(SurfaceTexture.class);
输出大小列表 始终 return 宽度>高度的值,尽管屏幕的宽度
当我使用 getResources().getDisplayMetrics()
(或任何类似方法)检查 width/height 时,它总是 return 宽度
根据我看到的值,在 2 种情况下 width/height 可能会交换它们的值。 (w:1920,h:1080 预览尺寸。w:1080,h:1920 屏幕尺寸)。
那么它们之间有什么不同呢?请帮助我!
手机上的摄像头传统上是为设备的横向设计的。我们使用 90° 旋转来在设备处于纵向时正确显示相机框架。
详细解释如下:
https://developer.android.com/training/camera/cameradirect.html#TaskOrientation
我正在做一个使用 camera2 API 的项目。当我使用以下方式获取支持的输出预览大小列表时:
StreamConfigurationMap map = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);
Size[] choices = map.getOutputSizes(SurfaceTexture.class);
输出大小列表 始终 return 宽度>高度的值,尽管屏幕的宽度
当我使用 getResources().getDisplayMetrics()
(或任何类似方法)检查 width/height 时,它总是 return 宽度
根据我看到的值,在 2 种情况下 width/height 可能会交换它们的值。 (w:1920,h:1080 预览尺寸。w:1080,h:1920 屏幕尺寸)。
那么它们之间有什么不同呢?请帮助我!
手机上的摄像头传统上是为设备的横向设计的。我们使用 90° 旋转来在设备处于纵向时正确显示相机框架。
详细解释如下: https://developer.android.com/training/camera/cameradirect.html#TaskOrientation