gpt4 book ai didi

android - 未调用相机 onPreviewFrame

转载 作者:IT老高 更新时间:2023-10-28 22:17:38 27 4
gpt4 key购买 nike

当使用 Camera.PreviewCallback 实现时,在初始化相机并开始预览 (Camera.startPrevew()) 后调用 onPreviewFrame 没有问题。问题是,如果我使用 MediaRecorder 进行视频录制,onPreviewFrame 将不再被调用。

我知道使用MediaRecorder录制视频时会停止Camera.PreviewCallback,但为什么不能重新启动?

我已尝试重置相机预览回调 (setPreviewCallback(callback)) 并重新启动 startPreview,但是当我进行预览时,没有调用 onPreviewFrame。

最佳答案

你必须在surfaceChanged方法中调用setPreviewCallback,而不仅仅是在surfaceCreated中。

public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
if (mHolder.getSurface() == null){
return;
}

try {
mCamera.stopPreview();
} catch (Exception e){
// ignore: tried to stop a non-existent preview
}

try {
mCamera.setPreviewCallback(this);
mCamera.setPreviewDisplay(mHolder);
mCamera.startPreview();

} catch (Exception e){
Log.d(TAG, "Error starting camera preview: " + e.getMessage());
}
}

关于android - 未调用相机 onPreviewFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7042377/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com