【发布时间】:2018-01-30 13:50:24
【问题描述】:
我正在尝试从设置为特定分辨率的 ImageReader 读取图像(当然是从 CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP 获得),但 ImageReader.acquireLastestImage 返回的图像分辨率不同!
注意:这仅在三星 Galaxy S6 上发生(据我所知),预览分辨率设置为 800x450,图像上的输出分辨率显然为 640x480。其他分辨率看起来不错,其他手机也一样。
相关代码:
Image im = mReader.acquireLatestImage();
Log.v(TAG, String.format("Image size %d x %d", im.getWidth(), im.getHeight()));
Log.v(TAG, String.format("ImageReader size %d x %d", mReader.getWidth(), mReader.getHeight()));
输出日志:
01-30 15:43:46.350 31422-31954/com.myapp V/ImageProcessor: Image size 640 x 480
01-30 15:43:46.350 31422-31954/com.myapp V/ImageProcessor: ImageReader size 800 x 450
可能出了什么问题? Android中的错误? Galaxy S6 实现中的错误?
不保证相机会遵守ImageReader表面的要求吗?
【问题讨论】:
标签: android android-image android-camera2 android-image-capture samsung-galaxy-camera