BambooSlips' blog

Archives · 2022

Home

About

Archives

loading..
Android

HIDL

OverviewCamera框架分为五层,即APP、Service、Provider、Driver及Hardware: 由上图可知,HIDL位于Service和Provider层之间。HIDL即HAL接口定义语言(Hardware Interface Definition Language, 发音为“hide-l”),它是用于指定HAL和用户之间接口的一种接口描述语言(IDL)。但根据google官方资料,从Android之后,HIDL已被废弃,Android将在其所有位置改用AIDL。 HIDL旨在用于进程间的通信(IPC),它成功地将Camera Hal MOdule从Camera Service中解耦出来,并承担着对Camera HAL的封装工作,减轻并降低了开发者的工作量和开发难度。 HIDL开发..

Read more
loading..
Android

CamX & Chi

OverviewCamX-CHI架构是为了更精细化控制底层硬件,同时方便手机厂商自定义一些功能而提出的。它将一些高度统一的功能性接口抽离出来放到CamX中,将可定制化的部分放到CHI中供厂商修改以实现各自独有的特色功能。这样做的好处是:即便开发者对CamX不是很了解,也可以很方便地加入自定义的功能,从而降低开发者在高通平台的开发门槛。 目录结构 图中CamX代表了功能性接口的代码实现集合,CHI则代表了可定制化需求的代码实现集合。CamX对上作为HAL3接口的实现,对下通过V4L2框架与Kernel保持通讯,并以互相dlopen so库的方式与CHI交互以获取对方的操作接口。 各个目录的用途待续…… 各个部件UsecaseUsecase是CamX-CHI中最大的抽象概念,其中包含这多条用于实现特定功能的Pi..

Read more