2024年10月26日 第33讲 AE自动曝光实战 极客笔记
本讲是Android Camera专题系列的第33讲,我们介绍Android Camera2 API专题的AE自动曝光实战。
更多资源:
资源 | 描述 |
---|---|
在线课程 | 极客笔记在线课程 |
知识星球 | 星球名称:深入浅出Android Camera 星球ID: 17296815 |
极客笔记圈 |
Preview#initCameraParameters
|-->CameraController2#setSceneMode
|-->CameraSettings#setSceneMode
|-->根据当前的scene mode来设置CaptureRequest.CONTROL_MODE
CameraController2#createPreviewRequest
|--> CameraSettings#setupBuilder
|--> CameraSettings#setAEMode
|-->根据是否自动曝光和Flash状态设置AE Mode
MainActivity#cameraSetup
|--> SeekBar exposure_seek_bar = findViewById(R.id.exposure_seekbar)
|--> exposure_seek_bar.setOnSeekBarChangeListener(null)
|--> exposure_seek_bar.setMax( preview.getMaximumExposure() - min_exposure )
|--> exposure_seek_bar.setProgress( preview.getCurrentExposure() - min_exposure )
|--> exposure_seek_bar.setOnSeekBarChangeListener(new OnSeekBarChangeListener()
onProgressChanged
|--> Preview.setExposure
|--> CameraController2.setExposureCompensation
|--> CameraSettings.setExposureCompensation
|--> 设置CONTROL_AE_EXPOSURE_COMPENSATION
|--> showToast(getExposureCompensationString(new_exposure), 0, true)
MainActivity#clickedExposureLock
|--> Preview#toggleExposureLock
|--> CameraController2#setAutoExposureLock
|--> set CaptureRequest.CONTROL_AE_LOCK value
本文链接:http://so.lmcjl.com/news/16251/