Kwekutanga kuburitswa kwe libcamera, stack yekutsigirwa kwekamera paLinux

Mushure memakore mana ebudiriro, yekutanga kuburitswa kweiyo libcamera purojekiti (0.0.1) yakaumbwa, ichipa software stack yekushanda nemavhidhiyo makamera, makamera uye TV tuners muLinux, Android uye ChromeOS, inoenderera mberi nekuvandudzwa kweV4L2 API. uye pakupedzisira ichaitsiva. Sezvo raibhurari's API ichiri kuchinja uye haisati yanyatsodzikamiswa, chirongwa ichi chave pari zvino chagadziridzwa pasina kubatanidza kuburitswa kwega pachishandiswa modhi yekusimudzira inoenderera. Mukupindura kudiwa kwekugovera kuchengetedza shanduko yeAPI inokanganisa kuenderana, uye kurerutsa kuendeswa kwemaraibhurari mumapakeji, sarudzo yave kuitwa kuti nguva nenguva ibudise kuburitswa kunoratidza kukura kwekuchinja kweABI neAPI. Iyo kodhi yeprojekiti yakanyorwa muC ++ uye yakagoverwa pasi pe LGPLv2.1 rezinesi.

Iyo purojekiti iri kuvandudzwa nevagadziri vemultimedia subsystems yeLinux kernel pamwe nevamwe vagadziri vekamera kuitira kugadzirisa mamiriro ezvinhu neLinux rutsigiro rwemakamera emafoni efoni nemidziyo yakamisikidzwa yakasungirirwa kune vatyairi. API V4L2, yatovepo muLinux kernel, pane imwe nguva yakagadzirwa kuti ishande nemakamera echinyakare ewebhu uye haina kunyatso kuchinjika kune yazvino maitiro ekufambisa MCU kushanda pamafudzi eCPU.

Kusiyana nemakamera echinyakare, mune ekutanga magadzirirwo emifananidzo anoitwa pane yakasarudzika processor yakavakirwa mukamera (MCU), mumidziyo yakamisikidzwa, kuderedza mutengo, mabasa aya anoitwa pamapfudzi eCPU huru uye inoda mutyairi akaoma kunzwisisa. inosanganisira zvisiri-open-source rezinesi zvikamu. Sechikamu cheiyo libcamera purojekiti, yakavhurika sosi software vanotsigira uye vagadziri vehardware vakaedza kugadzira mhinduro yekukanganisika iyo, kune rumwe rutivi, inogutsa zvinodikanwa zveyakavhurika sosi software vanogadzira, uye kune imwe, inobvumira kuchengetedza pfuma yehungwaru yevagadziri vekamera.

Iyo stack inopihwa ne libcamera raibhurari inoshandiswa zvachose munzvimbo yemushandisi. Kuti ive nechokwadi chekuenderana nenzvimbo dziripo dzesoftware uye mashandisirwo, maseru ekuenderana anopihwa iyo V4L API, Gstreamer uye Android Kamera HAL. Proprietary zvinhu zvakanangana nekamera yega yega yekudyidzana nemidziyo yakagadzirwa semamodule anomhanya nenzira dzakasiyana uye anodyidzana neraibhurari kuburikidza neIPC. Mamodule haawane yakananga kumudziyo uye kuwana michina kuburikidza nepakati API, zvikumbiro kuburikidza iyo inotariswa, kusefa uye inogumira kungowana chete kushanda kunodiwa kudzora kamera.

Iyo raibhurari inopawo mukana kune maalgorithms ekugadzirisa uye kuvandudza mhando yemifananidzo nemavhidhiyo (chena chiyero kugadziridzwa, kuderedza ruzha, kudzikamisa vhidhiyo, autofocus, kuratidzwa kusarudzwa, nezvimwewo), iyo inogona kubatanidzwa nenzira yakavhurika ekunze maraibhurari kana muridzi. isolated modules. Iyo API inopa mukana kune maficha akadai sekuona mashandiro emakamera aripo ekunze uye akavakirwa-mukati, uchishandisa mapikicha emidziyo, kubata kamera yekubatanidza uye kudzima zviitiko, kutonga kamera data kutorwa padanho remunhu, uye kuwiriranisa mifananidzo neflash. Zvinokwanisika kushanda zvakasiyana nemakamera akati wandei muhurongwa uye kuronga kubatwa panguva imwe chete kweakawanda evhidhiyo hova kubva kune imwe kamera (semuenzaniso, imwe ine yakaderera resolution yevhidhiyo musangano, uye imwe ine yakakwirira resolution yekurekodha archival kune disk).

Source: opennet.ru

Voeg