Skip to main content
IQ9-EVK 通过四个 MIPI CSI 接口支持摄像头传感器连接,同时支持 C-PHY 和 D-PHY 模式。

硬件架构

CSI 接口映射

DIP 开关配置

通过 DIP 开关,四个 CSI PHY 可路由到 MIPI 摄像头端口或 GMSL 摄像头端口(通过 mezzanine 扩展板)。

支持的 MIPI CSI 摄像头传感器

ov9282 摄像头传感器

Arducam imx577 摄像头传感器

Arducam 传感器需要额外的转接板(Arducam 22 针转 Qualcomm 30 针 CSI 适配器) Arducam imx577 传感器 + 22 针排线 + 转接板

Arducam imx577 摄像头传感器连接到 iq9075

ov9282 摄像头传感器连接到 iq9075

支持的分辨率

  • IQ-9075 不支持 SHDR、LDC 和 EIS 等高级功能。
  • 没有硬件 JPEG 编码器——快照使用在 CPU 上运行的软件编码器。

摄像头流媒体

运行摄像头的前提条件

  • 启用摄像头功能
在 Qualcomm Linux 2.0 上,qcom-multimedia-proprietary-image 默认包含下游摄像头软件包,但摄像头功能不会自动启用。 在设备 shell 中运行以下命令,在 qcom-multimedia-proprietary-image 上启用摄像头支持:
  • 清除 GStreamer 注册表(如需要)
如果在启用摄像头 overlay 之前执行过 GStreamer 命令,则在启用摄像头 overlay 后必须清除 GStreamer 注册表。 运行以下命令清除注册表:

单摄像头流

上述命令以 720p、30 FPS 的配置启动摄像头。 来自摄像头传感器的帧会被 fakesink 丢弃。 如果 gst 管道状态变为如下所示的 “PLAYING”,则表示摄像头正在运行。 由于此命令将摄像头帧输出到 fakesink,设备上不会保存任何内容。 如果管道状态变为 PLAYING,则摄像头正在运行。按 Ctrl+C 停止。

视频编码

此命令以 720p、30 FPS 的配置启动摄像头,并在 h264 视频编码后将其保存为视频文件。如果 gst 管道状态变为 “PLAYING”,则表示摄像头正在运行。 要停止摄像头,请按 CTRL+C。 设备上会生成 /opt/mux_avc.mp4。可以在主机 PC 上运行以下 scp 命令从设备拉取录制的内容:

视频编码 + 快照

1

启动管道

2

拍摄快照

在交互式菜单中:(1) Ready → (3) Playing → (p) Plugin Mode → (11) camerasrc → (37) capture-image → (1) Snapshot → 输入数量
3

停止并获取文件

按 Enter → b(返回)→ q(退出)。

使用离线 IFE 的多摄像头

IQ-9075 具有两个用于实时 bayer 转 YUV 处理的 IFE。使用实时 IFE 最多可同时运行两路摄像头。 离线 IFE(Offline IFE) 功能允许单个 IFE 以离线模式处理两路摄像头,从而实现最多四路摄像头的并发流。 每个传感器连接到一个 IFE-Lite 硬件实例,数据通过 RDI 端口转储到 DDR。 使用单个 IFE 硬件,通过总线取数引擎 SFE Lite 从两个 IFE-Lite 读取数据,并以离线模式处理数据。 采用这种方法时,摄像头帧不会直接送入 IFE,而是从 IFE_LITE 路由并转储到 DDR 中。然后通过取数引擎 SFE Lite 提供给 IFE 进行 bayer 转 YUV 处理。

验证多摄像头运行

将四个 OV9292 MIPI 摄像头连接到四个 MIPI CSI 插槽(0、1、2 和 3) 为每路摄像头运行带 multicamera-hint=true 的 GST 命令以启用此功能。例如:
在用户日志中查看以下打印以确认离线 IFE 功能已启用

故障排查

1

检查摄像头模块连接和 DIP 开关设置

2

重启 cam-server

3

运行单流测试

收集日志并搜索 probe success
预期的探测成功日志:
如果没有出现探测成功日志,请检查排线连接或摄像头模块。
启用 CSI 调试日志并收集 dmesg:
启动摄像头,并在日志中检查 SOF/EOF IRQ 消息。 预期日志:

收集调试日志

资源