Predstavený plne otvorený zásobník pre kamery MIPI

Hans de Goede, vývojár Fedora Linux pracujúci v Red Hat, predstavil na konferencii FOSDEM 2024 otvorený zásobník pre kamery MIPI (Mobile Industry Processor Interface). Pripravený otvorený zásobník ešte nebol prijatý do linuxového jadra a projektu libcamera, ale je označený ako dosiahnutý stav vhodný na testovanie širokým spektrom nadšencov. Prevádzka zásobníka bola testovaná s kamerami MIPI založenými na snímačoch ov2740, ov01a1s a hi556 používaných v notebookoch, ako sú Lenovo ThinkPad X1 yoga gen 8, Dell Latitude 9420 a HP Spectre x360 13.5 2023.

Rozhranie MIPI sa používa v mnohých nových modeloch notebookov namiesto predtým používaného streamovania videa cez zbernicu USB zo zariadení, ktoré podporujú štandard UVC (USB Video Class). MIPI poskytuje prístup k snímaču kamery pomocou prijímača CSI (Camera Serial Interface) a obrazového procesora integrovaného do CPU (ISP, Image Signal Processor), ktorý zabezpečuje tvorbu obrazu na základe nespracovaných údajov prichádzajúcich zo snímača. Intel poskytuje sadu proprietárnych ovládačov pre prácu s kamerami MIPI v systéme Linux prostredníctvom IPU6 (Imaging Processing Unit) v procesoroch Intel Tiger Lake, Alder Lake, Raptor Lake a Meteor Lake.

Hlavným problémom pri vývoji otvorených ovládačov pre kamery MIPI je skutočnosť, že hardvérové ​​rozhranie procesora ISP a v ňom implementované algoritmy spracovania obrazu zvyčajne výrobcovia CPU nezverejňujú a sú obchodným tajomstvom. Na vyriešenie tohto problému vyvinuli Linaro a Red Hat softvérovú implementáciu obrazového procesora - SoftISP, ktorá umožňuje pracovať s kamerami MIPI bez použitia proprietárnych komponentov (SoftISP je možné použiť ako náhradu za IPU6 ISP).

Implementácia SoftISP bola predložená na zahrnutie do projektu libcamera, ktorý ponúka softvérový balík pre prácu s videokamerami, kamerami a TV tunermi v systémoch Linux, Android a ChromeOS. Okrem SoftISP obsahuje zásobník pre prácu s kamerami MIPI ovládač pre snímače ov2740 bežiace na úrovni jadra a kód pre podporu prijímača CSI v jadre Linuxu, ktorý je súčasťou IPU6 procesorov Intel.

Linuxové jadro a balíky libcamera, vrátane zmien projektu, sú dostupné v COPR úložisku na inštaláciu na Fedora Linux 39. Pipewire media server môže byť použitý na zachytávanie videa z MIPI kamier. Podpora pre prácu s kamerami cez Pipewire už bola prijatá do knižnice libwebrtc. Vo Firefoxe bola možnosť práce s kamerami cez Pipewire privedená do stavu vhodného na použitie s WebRTC, počnúc vydaním 122. V predvolenom nastavení je práca s kamerami cez Pipewire vo Firefoxe zakázaná a vyžaduje „media.webrtc.camera. parameter allow-” sa aktivuje v about:config pipewire."

Zdroj: opennet.ru

Pridať komentár