> 文章列表 > 【03 PipelineModel and PipelineContext】

【03 PipelineModel and PipelineContext】

【03 PipelineModel and PipelineContext】

PipelineModel是HAL3核心架构,对上需要开放对Pipeline创建 & 操作的API,对下需要建立Pipeline & 管理Pipeline的生命周期。

1. IPipelineModel的角色

在open/close stage,Power on/off sensor;

在config stage,根据APP的createCaptureSession里面带下来的surface list,推测Output以及按照Topological推测Pipeline各个Node是否需要创建以及各个Node的I/O buffer,建立整条PipelineModel;

在Request Stage,接到上层queue下来的request,转化为Pipleline统一的IPipelineFrame,决定这个request的I/O buffer、Topological、sub frame、dummy frame、feature set等信息;

其中:

  1. Topological是指这个request要经过的处理节点(Node),这个节点的拓扑图只能是config stage创建的PipelineModel拓扑图的子集。
  2. sub frame指是否需要多帧frame来做出这个request,例如4 frame MFNR拍照,上层只会给1个request,但做出1张MFNR结果需要4个frame叠合,所以另外3个就是sub frame。
  3. dummy frame是指是否需要多帧来产生一张3A收敛的frame结果,例如HDR一般需要EV +