首页 > 解决方案 > 有没有办法从 Camera X 中的固定点进行自动曝光?

问题描述

我正在开发一个应用程序,该应用程序要求我始终从预览图像的中心设置框架的曝光。我正在开发 CameraXin Android,我想知道是否有一种干净的方法可以做到这一点?Ps:感谢Java Snippets。谢谢

编辑:

我已经实现了一个功能来做同样的事情,但是因为它不是通过点击激活的,所以很难判断我的功能是正常工作还是正常的自动对焦和自动曝光。

以下是我已经实现的代码,由于项目限制,我必须使用 CameraX“1.0.0-alpha06”版本:

private void setUpTapToFocus(CameraControl cameraControl) {
        Log.v("Metering Point","inFunction");
        //Can't use sensorOrientedMeteringPointFactory because of CameraX version
        MeteringPointFactory factory = new SensorOrientedMeteringPointFactory(viewFinder.getWidth(),viewFinder.getHeight());
        int centerWidth = viewFinder.getWidth()/2;
        int centerHeight = viewFinder.getHeight()/2;
        MeteringPoint point = factory.createPoint(centerWidth,centerHeight);
        cameraControl.startFocusAndMetering(FocusMeteringAction.Builder.from(point).
        .setAutoFocusCallback(isSuccess -> Log.v("SKAXC Point","Focused").
        .setAutoCancelDuration(1,TimeUnit.SECONDS).build());
}

onCreate(){
        CameraControl cameraControl = CameraX.getCameraControl(CameraX.LensFacing.BACK);
        setUpTapToFocus(cameraControl);
}

标签: javaandroidandroid-camerax

解决方案


推荐阅读