CameraService.cpp (frameworks\base\services\camera\libcameraservice)
看一下hw_get_module是怎么回事
中调用hw_get_module
void CameraService::onFirstRef()
{
BnCameraService::onFirstRef();
if (hw_get_module(CAMERA_HARDWARE_MODULE_ID,
(const hw_module_t **)&mModule) < 0) {
LOGE("Could not load camera HAL module");
mNumberOfCameras = 0;
}
else {
mNumberOfCameras = mModule->get_number_of_cameras();
if (mNumberOfCameras > MAX_CAMERAS) {
LOGE("Number of cameras(%d) > MAX_CAMERAS(%d).",
mNumberOfCameras, MAX_CAMERAS);
mNumberOfCameras = MAX_CAMERAS;
}
for (int i = 0; i < mNumberOfCameras; i++) {
setCameraFree(i);
}
}
}
看一下hw_get_module是怎么回事
int hw_get_module(const char *id, const struct hw_module_t

本文探讨了在Android系统中如何调用Camera的HAL模块,通过hw_get_module函数进行封装,实际调用源自hw_get_module_by_class@Hardware.c。这个过程涉及硬件抽象层(HAL)的交互,理解这一流程对于Android系统的相机功能开发至关重要。
最低0.47元/天 解锁文章
489

被折叠的 条评论
为什么被折叠?



