我目前正在开发一个使用 Camera2 的应用程序。我在缩放和翻译的 TextureView 上显示预览(我只需要显示图像的一部分)。我的问题是我需要分析整个图像。
我的 CameraDevice.StateCallback 中有什么:
@Override
public void onOpened(CameraDevice camera) {
mCameraDevice = camera;
SurfaceTexture texture = mTextureView.getSurfaceTexture();
texture.setDefaultBufferSize(mPreviewSize.getWidth(), mPreviewSize.getHeight());
Surface surface = new Surface(texture);
try {
mPreviewBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);
} catch (CameraAccessException e){
e.printStackTrace();
}
try {
mCameraDevice.createCaptureSession(Arrays.asList(surface), mPreviewStateCallback, null);
mPreviewBuilder.addTarget(surfaceFull);
} catch (CameraAccessException e) {
e.printStackTrace();
}
}
在我的 SurfaceTextureListener 中:
@Override
public void onSurfaceTextureUpdated(SurfaceTexture surface) {
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
my_analyze(mTextureView.getBitmap());
}
});
thread.start();
}
位图只是我在 TextureView 中看到的(这是合乎逻辑的),但我想要整个图像。
可能吗 ?
谢谢, NiCLO