Android 高通Camx架構學習 - 第1章
一、Camx整體架構圖
IFE:影像前端 IPE:影像處理引擎 BPS:Bayer 處理區段
二、Camx基本元件及其概念
1) UseCase
A set of streams configured by the client combined with a set of static properties specifying the processing of those streams (由客戶端配置的一組流,這組流是有著一系列靜態屬性相結合描述的流。) See createCaptureSession in the Android CameraDevice documentation
//UseCase: 預覽+錄影 List<Surface> surfaces = new ArrayList<>(); if(previewSurface != null && previewSurface.isValid()){ surfaces.add(previewSurface); mPreviewBuilder.addTarget(previewSurface); } if(mMediaRecorder != null && mMediaRecorderSurface != null && mMediaRecorderSurface.isValid()){ surfaces.add(mMediaRecorderSurface); mPreviewBuilder.addTarget(mMediaRecorderSurface); } mCameraDevice.createCaptureSession(surfaces,...,...);
2)Feature
3)Node
4) pipeline
5)session
6)Link
7) Port
8)Topologies
A topology is a directed acyclic graph (DAG) specifying an instantiation of a use case (拓撲是一個指定用例例項化的有向無環圖(DAG)) XML definition of use cases and associated topologies For CamX, this graph defines the HW, SW, and non-Qualcomm processing nodes, and the data flow between the nodes
元件之間的關係
三、程式碼目錄結構
1)CamX中的目錄
core分為hal與chi目錄:存放CamX的核心實現模組 hal/:實現hal3介面的hal/目錄 chi/:負責CHI進行互動的chi/目錄 hwl/:存放自身演算法具有獨立運算能力的硬體node---受到csl管理 swl/:存放並不具有獨立運算能力,必須依靠CPU才能實現的node csl/:負責camx與camera driver的通訊模組, 為camx提供了統一的Camera driver控制介面
2) chi-cdk中的目錄
core/:存放CHI實現的核心模組,負責與Camx進行互動並且實現了CHI的總體框架 以及業務處理。 oem/qcom/topolog/:存放使用者自定義的Usecase xml配置資訊 oem/qcom/node/:存放使用者自定義功能的node oem/qcom/module/:存放不同的sensor的配置檔案,在初始化sensor時候需要用到。 oem/qcom/tuning/:存放不同場景下的效果引數的配置檔案。 oem/qcom/sensor/:存放不同sensor的只有資訊以及暫存器配置引數 oem/qcom/actuator/:存放不同對焦模組的配置資訊。 oem/qcom/ois/:存放防抖模組的配置資訊。 oem/qcom/flash/:存放閃光燈模組的配置資訊。 oem/qcom/eeprom/:存放eeprom外部儲存模組的配置資訊。 oem/qcom/fd/:存放人臉識別模組的配置資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70006715/viewspace-2791617/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Android 學習筆記架構篇Android筆記架構
- 通過遊戲學習計算機架構 - embeddedartistry遊戲計算機架構Dart
- codis架構學習架構
- 深入高可用架構原理與實踐 書籍學習架構
- 初學 Android 架構元件之 LifecycleAndroid架構元件
- 初學 Android 架構元件之 ViewModelAndroid架構元件View
- 高通 QUP模組學習
- 架構學習-多工架構
- Java架構師如何學習?Java架構
- 架構演化學習思考(3)架構
- Android架構合集Android架構
- Android MVP 架構AndroidMVP架構
- 架構學習筆記系列四——架構師軟文架構筆記
- 高可用架構架構
- 普通Android碼農,該如何逆襲月薪 5W 的移動端架構師?(Android架構師詳細學習資源)Android架構
- MySQL 高可用架構之 MMM 架構MySql架構
- 架構學習筆記系列三架構筆記
- 架構學習筆記系列二架構筆記
- 架構學習筆記系列一架構筆記
- Hadoop學習(二)——MapReduce\Yarn架構HadoopYarn架構
- 學習-zabbix架構及術語架構
- Android-MVP架構AndroidMVP架構
- Android Flux架構初探AndroidUX架構
- 架構師眼中的高併發架構架構
- 架構演化學習思考(4) --- IOC的學習認識架構
- 高併發架構架構
- 高通的自研架構晶片,正在整合生成式AI世界架構晶片AI
- Laravel深入學習5 – 應用架構Laravel應用架構
- 架構師眼裡的高併發架構架構
- Android系統架構圖Android架構
- 架構雜談(Android、Web)架構AndroidWeb
- Android 什麼是架構?Android架構
- Android-系統架構Android架構
- Android新元件架構——LifecylceAndroid元件架構
- Android專案架構搭建Android架構
- Android 元件化架構概要Android元件化架構
- 第3章 系統架構架構
- 《微服務架構設計模式》讀書筆記 | 第3章 微服務架構中的程式間通訊微服務架構設計模式筆記