本讲是Camera KMD ISP子系统专题的第19讲,我们讲解Camera KMD ISP子系统CRM之精准控制RT硬件设备。
更多资源:
资源 | 描述 |
---|---|
在线课程 | 极客笔记在线课程 |
知识星球 | 星球名称:深入浅出Android Camera 星球ID: 17296815 |
极客笔记圈 |
CRM如何对RT设备进行精准控制
CRM的工作内容
- 监控Link request是否得到schedule
-
监控link上各个device的request是否ready
-
监控SOF/EOF等trigger信号,决定各个设备配置哪个request
Schedule link request
设备notify crm device request ready
日志:
谁驱动CRM控制设备
notify crm sof trigger
link->req.apply_data
Crm将各设备当前SOF需要配置的requested 信息会填到 link->req.apply_data[CAM_PIPELINE_DELAY_MAX]中
/**
* struct cam_req_mgr_apply
* @idx : corresponding input queue slot index
* @pd : pipeline delay of device
* @req_id : req id for dev with above pd to process
* @skip_idx: skip applying settings when this is set.
*/
struct cam_req_mgr_apply {
int32_t idx;
int32_t pd;
int64_t req_id;
int32_t skip_idx;
};
CRM Per-frame Control演绎
Per-frame control举例
日志:
Early PCR
What is EPCR
在stream on之前提前配置HW.
如何开启EPCR
echo NumPCRsBeforeStreamOn=0x1 >> camxoverridesettings.txt
"org.codeaurora.qcamera3.sessionParameters.numPCRsBeforeStreamOn"
如何识别EPCR是否开启成功
EPCR On
EPCR Off
相机启动时ISP丢帧讲解
开启EPCR丢帧举例
关闭EPCR丢3帧
日志:
关闭EPCR丢2帧
日志: