S'ha introduït una pila totalment oberta per a càmeres MIPI

Hans de Goede, un desenvolupador de Fedora Linux que treballa a Red Hat, va presentar una pila oberta per a càmeres MIPI (Mobile Industry Processor Interface) a la conferència FOSDEM 2024. La pila oberta preparada encara no ha estat acceptada al nucli de Linux i al projecte libcamera, però està marcada com a ha arribat a un estat adequat per a la prova d'una àmplia gamma d'entusiastes. El funcionament de la pila s'ha provat amb càmeres MIPI basades en sensors ov2740, ov01a1s i hi556 utilitzats en ordinadors portàtils com Lenovo ThinkPad X1 ioga gen 8, Dell Latitude 9420 i HP Spectre x360 13.5 2023.

La interfície MIPI s'utilitza en molts models de portàtils nous en lloc de la transmissió de vídeo utilitzada anteriorment a través del bus USB des de dispositius que admeten l'estàndard UVC (USB Video Class). MIPI proporciona accés al sensor de la càmera mitjançant un receptor CSI (Camera Serial Interface) i un processador d'imatge integrat a la CPU (ISP, Image Signal Processor), que proporciona la formació d'imatges a partir de les dades en brut procedents del sensor. Intel ofereix un conjunt de controladors propietaris per treballar amb càmeres MIPI a Linux mitjançant IPU6 (Unitat de processament d'imatges) als processadors Intel Tiger Lake, Alder Lake, Raptor Lake i Meteor Lake.

La principal dificultat per desenvolupar controladors oberts per a càmeres MIPI es deu al fet que la interfície de maquinari del processador ISP i els algorismes de processament d'imatges que s'hi implementen normalment no són revelats pels fabricants de CPU i són un secret comercial. Per resoldre aquest problema, Linaro i Red Hat han desenvolupat una implementació de programari del processador d'imatges - SoftISP, que permet treballar amb càmeres MIPI sense utilitzar components propietaris (SoftISP es pot utilitzar com a substitut de l'ISP IPU6).

La implementació de SoftISP s'ha presentat per incloure'l al projecte libcamera, que ofereix una pila de programari per treballar amb càmeres de vídeo, càmeres i sintonitzadors de TV a Linux, Android i ChromeOS. A més de SoftISP, la pila per treballar amb càmeres MIPI inclou un controlador per a sensors ov2740 que s'executen al nivell del nucli i codi per donar suport al receptor CSI al nucli Linux, que forma part de la IPU6 dels processadors Intel.

El nucli de Linux i els paquets libcamera, inclosos els canvis del projecte, estan disponibles al repositori COPR per instal·lar-los a Fedora Linux 39. El servidor multimèdia Pipewire es pot utilitzar per capturar vídeo de càmeres MIPI. El suport per treballar amb càmeres mitjançant Pipewire ja s'ha adoptat a la biblioteca libwebrtc. A Firefox, la capacitat de treballar amb càmeres mitjançant Pipewire s'ha portat a un estat adequat per utilitzar-lo amb WebRTC, a partir de la versió 122. De manera predeterminada, treballar amb càmeres mitjançant Pipewire a Firefox està desactivat i requereix el fitxer “media.webrtc.camera. El paràmetre allow-” s'activarà a about:config pipewire.

Font: opennet.ru

Afegeix comentari