Teljesen nyitott köteg a MIPI kamerákhoz

Hans de Goede, a Red Hatnél dolgozó Fedora Linux fejlesztő a FOSDEM 2024 konferencián bemutatta a MIPI (Mobile Industry Processor Interface) kamerák nyílt veremét. Az előkészített nyílt verem még nem került be a Linux kernelbe és a libcamera projektbe, de meg van jelölve, hogy elérte a rajongók széles köre általi tesztelésre alkalmas állapotot. A verem működését ov2740, ov01a1s és hi556 szenzorokon alapuló MIPI kamerákkal tesztelték, amelyeket olyan laptopokban használtak, mint a Lenovo ThinkPad X1 yoga gen 8, a Dell Latitude 9420 és a HP Spectre x360 13.5 2023.

A MIPI interfészt számos új laptopmodellben használják a korábban használt, az UVC (USB Video Class) szabványt támogató eszközökről érkező, USB buszon keresztüli videó streamelés helyett. A MIPI egy CSI vevő (Camera Serial Interface) és egy CPU-ba integrált képfeldolgozó (ISP, Image Signal Processor) segítségével biztosít hozzáférést a kamera érzékelőjéhez, amely az érzékelőtől érkező nyers adatok alapján képalkotást biztosít. Az Intel egy sor szabadalmaztatott illesztőprogramot biztosít a MIPI kamerákkal való munkavégzéshez Linux alatt az IPU6-on (Imaging Processing Unit) keresztül az Intel Tiger Lake, Alder Lake, Raptor Lake és Meteor Lake processzorokban.

A MIPI kamerák nyílt meghajtóprogramjainak fejlesztésének fő nehézsége abból adódik, hogy az ISP processzor hardveres interfészét és a benne megvalósított képfeldolgozó algoritmusokat a CPU-gyártók általában nem hozzák nyilvánosságra, és az üzleti titok. A probléma megoldására a Linaro és a Red Hat kifejlesztette a képfeldolgozó szoftver megvalósítását - a SoftISP-t, amely lehetővé teszi a MIPI kamerákkal való munkát saját komponensek használata nélkül (a SoftISP az IPU6 ISP helyettesítőjeként használható).

A SoftISP implementációt beküldték a libcamera projektbe, amely szoftvercsomagot kínál videokamerákkal, kamerákkal és TV tunerekkel való munkához Linux, Android és ChromeOS rendszeren. A SoftISP mellett a MIPI kamerákkal való munkavégzésre szolgáló verem tartalmazza a kernel szinten futó ov2740 érzékelők illesztőprogramját és a Linux kernel CSI-vevőjének támogatására szolgáló kódot, amely az Intel processzorok IPU6 része.

A Linux kernel és a libcamera csomagok, beleértve a projekt módosításait is, elérhetők a COPR tárolóban Fedora Linux 39-re való telepítéshez. A Pipewire médiaszerver használható videó rögzítésére MIPI kamerákról. A Pipewire-n keresztüli kamerákkal való munka támogatása már bekerült a libwebrtc könyvtárba. A Firefoxban a Pipewire-n keresztüli kamerákkal való munkavégzés a WebRTC-vel való használatra alkalmas állapotba került, a 122-es kiadástól kezdve. A Firefoxban a Pipewire-n keresztüli kamerákkal való munkavégzés alapértelmezés szerint le van tiltva, és ehhez a „media.webrtc.camera. Az about:config pipewire-ben aktiválandó engedélyezés-” paraméter."

Forrás: opennet.ru

Hozzászólás