当 ImageReader 表面作为目标添加到 Camera2 时,性能显着下降

问题描述

当我添加粗体行时,预览的帧率显着下降(60 毫秒到 210 毫秒)。小背景我是 https://github.com/googlecreativelab/shadercam 示例,使用表面视图显示相机预览并记录它。不知道为什么当我将 ImageReader 添加为目标预览时,由于帧速率下降而变得非常慢。 我正在使用不同的线程(BackgroundHandler)来打开相机。

    mImageReader = ImageReader.newInstance(preViewSize.getWidth(),preViewSize.getHeight(),ImageFormat.YUV_420_888,/*maxImages*/1);
    mImageReader.setonImageAvailableListener(
            mOnImageAvailableListener,null);



    Surface previewSurface = new Surface(mSurfaceTexture);
    mSurfaces.add(previewSurface);
    mPreviewbuilder.addTarget(previewSurface);

    Surface readerSurface = mImageReader.getSurface();
    mSurfaces.add(readerSurface);
    **mPreviewbuilder.addTarget(readerSurface);**

    mCameraDevice.createCaptureSession(mSurfaces,mCaptureSessionStateCallback,mBackgroundHandler);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)