使用CameraX拍摄视频-setLensFacing()无法解析

问题描述 投票:0回答:1

我试图用CameraX拍摄视频。为此,我阅读了SO帖子herehere。但是,当我复制粘贴代码并对其进行一点调整时,setLensFacing()方法有一个未解决的引用:

videoCapture = VideoCaptureConfig.Builder().apply {
                setTargetRotation(binding.viewFinder.display.rotation)
                setLensFacing(lensFacing)
            }.build()

我稍微调整了代码,因为您不再需要将配置对象传递给VideoCapture。您可以直接构建它。此时,Android Studio告诉我setLensFacing(lensFacing)尚未解决。我有点困惑,因为在此page上有一个不错的文档,并且VideoCaptureConfig.Builder()包含setLensFacing()

我希望有人可以提供帮助。

android video-capture android-camerax
1个回答
0
投票

摄像机选择不再通过用例完成。您编写的代码只有在-I think- 1.0.0-alpha08版本之前才可以使用。

现在选择镜头的方法是将一个(或多个)用例绑定到生命周期时使用CameraSelector。这样,所有用例都使用相同的lensFacing。

所以您可以写:

val cameraSelector = CameraSelector.Builder().requireLensFacing(lensFacing).build()
// Or alternatively if you want a specific lens, like the back facing lens
val cameraSelector = CameraSelector.DEFAULT_BACK_CAMERA

val videoCapture = VideoCaptureConfig.Builder().build()
processCameraProvider.bindToLifecycle(lifecycleOwner, cameraSelector, videoCapture)

请注意,目前,VideoCapture用例已隐藏在camerax API中,并且仍处于早期开发状态。

© www.soinside.com 2019 - 2024. All rights reserved.