CameraX PreviewView Screenshot

Viewed 1698

I want to convert CameraX preview to bitmap from previewView. Something similar to textureView.bitmap

I have tried it with a textureview and it works perferctly, i can take a screenshot of the cameraview but the camera is stretched.

2 Answers

I finally found the answer in this link

First set preferred implementationmode to TextureView as below:

previewView.preferredImplementationMode = PreviewView.ImplementationMode.TEXTURE_VIEW

Then get the bitmap

fun getPreviewViewBitmap(width: Int, height: Int): Bitmap? {
    val previewChildView = previewView.getChildAt(0)

    if (previewChildView is TextureView)
        return previewChildView.getBitmap(width, height)

    return null
}

Note: I have only tested on a few devices and it works great.

Cheers.

Related