在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java  Android/ E/BufferQueueProducer 錯誤

E/BufferQueueProducer 錯誤

使用MediaProjection API進行屏幕截圖的時候,會不斷給出:

E/BufferQueueProducer: [ImageReader-1080x1920f1m2-22674-60] dequeueBuffer: BufferQueue has been abandoned

這樣一個錯誤提示,大概一秒鐘報十幾次...
截圖的代碼如下:

    ImageReader imageReader = ImageReader.newInstance(screen.getWidth(),
            screen.getHeight(), PixelFormat.RGBA_8888, 2);
            
    VirtualDisplay virtualDisplay = mediaProjection.createVirtualDisplay("screen-mirror",
            screen.getWidth(), screen.getHeight(), screen.getDensity(),
            DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR, imageReader.getSurface(),
            null, null);
            
    SystemClock.sleep(1000);
    Image image = imageReader.acquireLatestImage();
    int width = image.getWidth();
    int height = image.getHeight();
    final Image.Plane[] planes = image.getPlanes();
    final ByteBuffer buffer = planes[0].getBuffer();
    //每個像素的間距
    int pixelStride = planes[0].getPixelStride();
    //總的間距
    int rowStride = planes[0].getRowStride();
    int rowPadding = rowStride - pixelStride * width;
    Bitmap bitmap = Bitmap.createBitmap(width + rowPadding / pixelStride, height, Bitmap.Config.ARGB_8888);

    bitmap.copyPixelsFromBuffer(buffer);
    bitmap = Bitmap.createBitmap(bitmap, 0, 0, screen.getWidth(), screen.getHeight());
    image.close();
    imageReader.close();

要怎么才能去掉這個錯誤提示啊

回答
編輯回答
憶往昔

我也 遇到了 這個問題,有人知道怎么解決嗎

2017年12月1日 01:35
編輯回答
陌璃

遇到同樣的問題,請問解決了嗎,咨詢下解決方案

2018年3月13日 22:21