Camera2相机预览变形问题
初始化surface的时候要注意,相机的width和height是颠倒的,所以要将width赋值给surface的height,height赋值给surface的width
下面展示一些 内联代码片
。
mTextureView.setSurfaceTextureListener(new TextureView.SurfaceTextureListener() {
@Override
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture,int width, int height) {
System.out.println("Surface Available");
surfaceTexture.setDefaultBufferSize(height, width);//这里赋值顺序其实是(width,height)
mPreviewSurface = new Surface(surfaceTexture);
try {
createCaptureSession();
} catch (CameraAccessException e) {
e.printStackTrace();
}
}
@Override
public void onSurfaceTextureSizeChanged(SurfaceTexture surfaceTexture,int width, int height) {
}
@Override
public boolean onSurfaceTextureDestroyed(@NonNull SurfaceTexture surfaceTexture) {
return false;
}
@Override
public void onSurfaceTextureUpdated(@NonNull SurfaceTexture surfaceTexture) {
}
});