我正在尝试在使用SurfaceView时更改相机的分辨率。我正在使用以下实现:url。我的相机具有2592 x 1944像素的分辨率,但是当我从相机获取byte [],然后将其转换为位图时,位图的分辨率为2048 x 1536。是否有一种方法可以更改这个问题?
Camera.Parameters.setPictureSize()
。
基本工作流程如下:
Camera.Parameters cp = mCamera.getParameters(); // get the current params
cp.set...(); // change something
mCamera.setParameters(cp); // write the params back
mCamera是在此情况下使用的相机对象。
这也在Camera
类文档中的第2和第3步中有所说明。
确保您通过此函数设置的每个分辨率都得到支持。您可以通过 Camera.Parameters.getSupportedPictureSizes()
获取设备支持的分辨率列表。