Android 13.0 Camera2 静音时拍照去掉快门声音
1.概述
在13.0系统rom定制化开发时,在Camera2静音情况下有快门拍照声音,这就不符合使用规范了
静音的情况下拍照也不应该发出声音,所以在静音拍照流程中要求去掉快门声音,接下来具体实现
相关的功能
2.Camera2静音拍照去掉快门声音核心代码
/packages/apps/Camera2/src/com/android/camera/one/v2/photo/PictureTakerImpl.java
/packages/apps/Camera2/src/com/android/camera/one/v2/photo/PictureCallbackAdapter.java
/packages/apps/Camera2/src/com/android/camera/CaptureModule.java
3.Camera2静音拍照去掉快门声音核心代码功能分析
在Camera2中,Hal层: 硬件抽象层,Android 定义好了Framework服务与HAL层通信的协议及接口,HAL层如何实现有各个Vendor自己实现,如Qcom的老架构
mm-Camera,新架构Camx架构,Mtk的P之后的Hal3架构.在这里主要就是HardwareSpecImpl.java的相关方法来实现对
硬件要求的调用功能
CaptureModule的主要功能就是在Camera2开启预览后onOpened回调onCameraOpened后,在onCameraOpened中会执行oneCamera的startPreview
传入一个surface和CaptureReadyCallback开启预览
PictureCallbackAdapter,它的主要功能就是Camera2拍照的回调功能
3.1 拍照功能在PictureTakerImpl.java中
在实现Camera2静音拍照去掉