我在使用surfaceview时尝试更改相机的分辨率。我正在使用这样的实现:url。我的相机具有2592 x 1944像素的分辨率,但是当我从Camera获得byte []然后转换为Bitmap时,Bitmap有2048 x 1536.有一种方法可以改变它吗?
答案 0 :(得分:2)
您必须更改相机参数;在这种情况下使用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
class documentation中也记录了这一点。在第2步和第3步。
确保支持您通过此功能设置的每个分辨率。您可以通过Camera.Parameters.getSupportedPictureSizes()
获取设备支持的分辨率列表。