iSoftISP,MIPI 相机的开放堆栈

软ISP

SoftISP 在 fosdem 2024 上的展示

FOSDEM 2024 会议,Hans de Goede, 与 Red Hat 合作的 Fedora 开发人员, 我说说目前的问题 已在许多计算机中识别出最近的英特尔笔记本电脑,因为它们已经更换了 UVC USB 摄像头模块 标准配备连接到 IPU6 的原始 MIPI 相机传感器。

提到 采用MIPI接口代替USB总线视频传输, 这在支持 UVC(USB 视频类)标准的设备上很常见。 MIPI 通过相机串行接口 (CSI) 接收器和 CPU 内置的图像信号处理器 (ISP) 提供对相机传感器的访问。

这种方法可以根据直接来自传感器的原始数据进行图像捕获。 Intel 提供了一组专有驱动程序 通过 Intel Tiger Lake、Alder Lake、Raptor Lake 和 Meteor Lake 处理器上的 IPU6 与 Linux 上的 MIPI 相机配合使用。

IPU6 的 ISP 部分的硬件接口和所使用的图像处理算法都被视为商业秘密,到目前为止,Linux 对 IPU6 的唯一支持是基于树外内核驱动程序,其顶部具有专有的用户空间堆栈目前可在 rpmfusion 上使用。

Linaro 和 Red Hat 都发现缺乏对各种 ARM 和 X86 芯片的 ISP 支持是一个问题。 Linaro 已经启动了一个项目,向 libcamera 添加 SoftwareISP 组件,以使这些相机无需专有软件即可工作,红帽已与 Linaro 合作致力于此项目。

汉斯,提一下 发展中的主要困难 MIPI 相机的开放驱动程序 它位于 事实上 硬件接口 ISP处理器 和图像处理算法 一般在其中实现 CPU 制造商不会公开,并作为商业秘密保存。为了解决这个问题,Linaro 和 Red Hat 合作开发了一种名为 SoftISP 的图像处理器软件实现,它允许在不依赖专有组件的情况下使用 MIPI 相机。

实施 SoftISP 已被提议包含在 libcamera 项目中, 它提供了一个软件堆栈,可与 Linux、Android 和 ChromeOS 系统上的摄像机、相机和电视调谐器配合使用。除了 SoftISP 之外,用于 MIPI 相机的堆栈还包括在内核级别运行的 ov2740 传感器驱动程序,以及支持 Linux 内核中 CSI 接收器的代码,Linux 内核是英特尔处理器 IPU6 的一部分。

目前,SoftISP 堆栈 尚未被 Linux 内核或 libcamera 项目接受, 但发展被认为已经达到了适合广大爱好者尝试的阶段。该堆栈的功能已通过基于 Lenovo、Dell 和 HP 笔记本电脑的各种传感器的 MIPI 相机进行了测试。

对这个项目感兴趣, 您应该知道,Linux 内核和 libcamera 软件包(包括项目更改)现已在存储库中提供 用于在 Fedora 39 上安装的 COPR。 Pipewire 媒体服务器可用于从 MIPI 相机捕获视频,并且通过 Pipewire 对相机的支持已集成到 libwebrtc 库中。

除此之外,值得一提的是,在 Firefox 中,通过 Pipewire 处理摄像头的功能从版本 122 开始已经达到了适合与 WebRTC 一起使用的状态。默认情况下,Firefox 中通过 Pipewire 处理摄像头的功能是禁用并需要参数“media.webrtc.camera.allow-pipewire» 在关于:配置。

最后,如果您有兴趣能够 了解更多,您可以在中查看详细信息 以下链接。


成为第一个发表评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。