CameraX is using the wide angle camera

Viewed 842

I've set up the CameraX to use the the back facing camera requireLensFacing(CameraSelector.LENS_FACING_BACK), but testing on a phone with multiple cameras, it uses the wide angle one. How can I let it use the regular camera instead?

https://developer.android.com/training/camerax

val cameraSelector = CameraSelector.Builder()
    .requireLensFacing(CameraSelector.LENS_FACING_BACK)
    .build()

val preview = Preview.Builder()
    .setTargetResolution(Size(binding.preview.width, binding.preview.height))
    .build()

val imageAnalysis = ImageAnalysis.Builder()
    .setTargetResolution(Size(binding.preview.width, binding.preview.height))
    .setBackpressureStrategy(ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST)
    .build()
    .also {
        it.setAnalyzer(cameraExecutor, analyzer)
    }

cameraProvider.unbindAll()

cameraProvider.bindToLifecycle(viewLifecycleOwner, cameraSelector, preview, imageAnalysis).also { camera ->
    camera.cameraControl.setZoomRatio(2F)
    preview.setSurfaceProvider(binding.preview.createSurfaceProvider(camera.cameraInfo))
}
0 Answers
Related