首页 > 解决方案 > 试图超过最大出队缓冲区计数 (12)

问题描述

我正在构建一个应用程序相机(api2),我显示相机预览、捕获和显示图像后。

它有效,但我的 logcat 有错误:

dequeueBuffer: attempting to exceed the max dequeued buffer count (12)

这是我的代码相机预览:

fun cameraPreview(){
    if(camOutputSizeWidth > camOutputSizeHeight){
        val layoutParam = RelativeLayout.LayoutParams(widthPixels,(widthPixels*camOutputSizeWidth)/(camOutputSizeHeight))
        mytextureView.layoutParams = layoutParam
    }else{
        val layoutParam = RelativeLayout.LayoutParams(widthPixels,(widthPixels*camOutputSizeHeight)/(camOutputSizeWidth))
        mytextureView.layoutParams = layoutParam
    }

    val texture = mytextureView.surfaceTexture
    texture.setDefaultBufferSize(camOutputSizeWidth, camOutputSizeWidth)

    val surface  = Surface(texture)
    captureRequestBuilder = mCamera.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW)
    captureRequestBuilder.addTarget(surface)
    mCamera.createCaptureSession(arrayListOf(surface),CameraPreviewSessionCallback(), null)
}

为什么会出现这个错误?如何解决?

标签: androidkotlin

解决方案


推荐阅读