使用Camera2的“ I / [MALI] [Gralloc]:lock_ycbcr:videobuffer_status无效,请使用默认值”垃圾邮件

时间:2018-09-07 18:04:49

标签: java android android-camera2

此处的相关代码:

private void setupCamera(int width, int height) {
    CameraManager cameraManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
    try {
        CameraCharacteristics cameraCharacteristics = null;
        for (String cameraId : cameraManager.getCameraIdList()) {
            mCameraId = cameraId;
            cameraCharacteristics = cameraManager.getCameraCharacteristics(mCameraId);

            if (cameraCharacteristics.get(CameraCharacteristics.LENS_FACING) ==
                    CameraCharacteristics.LENS_FACING_BACK) {
                break;
            }
        }
        StreamConfigurationMap map = cameraCharacteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);

        mImageSize = new Size(640, 480);
        mFrameDuration = map.getOutputMinFrameDuration(ImageFormat.YUV_420_888,mImageSize);
        mImageReader = ImageReader.newInstance(640,
                480,
                ImageFormat.YUV_420_888, 50);

        mSurface = mImageReader.getSurface();
        mImageReader.setOnImageAvailableListener(mOnImageAvailableListener, mImageReaderHandler);

使用Google的Camera2 API示例代码中的标准方法设置PreviewSize。

它在华硕Zenpad P028平板电脑(牛轧糖)上运行

一遍又一遍显示的日志:

 - I/[MALI][Gralloc]: lock_ycbcr: videobuffer_status is invalid, use default value

 - D/Surface: Surface::setBuffersUserDimensions(this=0x70ee1c7c00,w=640,h=480)

好像在来回重置缓冲区大小。可以预测地将帧速率降低到每帧60ms。

在我的Nexus 5P手机(棉花糖)上不会发生这种情况。

我尝试将mImageSize设置为不同的尺寸。

0 个答案:

没有答案