Android Camera2 拉伸问题
Camera2在一些低端机器上出现拉伸问题,当然首先排除不是笔者低级错误设置的分辨率有问题。 Camera2在某些机型上画面拉伸,表象是我们设置16:9的输出(当然是查询到支持的分辨率),但是Camera实际输出的是4:3。 整个过程如下: 获取Camera支持的输出分辨率 StreamConfigurationMap streamConfigurationMap = cameraInfo .get (CameraCharacteristics .SCALER _STREAM_CONFIGURATION_MAP) ; outputSizes = streamConfigurationMap .getOutputSizes (SurfaceTexture .class ) ; getBestMatchCameraPreviewSize(outputSizes) ; 笔者选取oppo a37f为例,其支持的分辨率如下: 选择适合的分辨率 public static TESizei getClosestSupportedSize ( List<TESizei> supportedSizes, final int requestedWidth, final int requestedHeight) { return Collections.min(supportedSizes, new