Sakin farko na libcamera, tarin tallafin kyamara akan Linux

Bayan shekaru hudu na ci gaba, an fara sakin farko na aikin libcamera (0.0.1), yana ba da tarin software don aiki tare da kyamarori na bidiyo, kyamarori da masu gyara TV a Linux, Android da ChromeOS, wanda ke ci gaba da bunkasa V4L2 API. kuma a ƙarshe zai maye gurbinsa. Tunda har yanzu API ɗin ɗakin karatu yana canzawa kuma har yanzu ba a daidaita shi sosai ba, aikin ya zuwa yanzu ya haɓaka ba tare da rarraba abubuwan fitar da mutum ɗaya ta amfani da tsarin ci gaba na ci gaba ba. Dangane da buƙatar rarrabawa don ci gaba da lura da canje-canjen API waɗanda ke shafar daidaituwa, da kuma sauƙaƙe isar da ɗakunan karatu a cikin fakiti, yanzu an yanke shawarar samar da sakin lokaci-lokaci wanda ke nuna girman canje-canjen ABI da API. An rubuta lambar aikin a cikin C++ kuma an rarraba a ƙarƙashin lasisin LGPLv2.1.

Masu haɓaka na'urori na multimedia subsystems na Linux kernel ne ke haɓaka aikin tare da wasu masana'antun kamara don daidaita yanayin tare da tallafin Linux don kyamarori don wayoyin hannu da na'urori masu haɗawa waɗanda ke da alaƙa da direbobi masu mallakar su. API V4L2, wanda ya riga ya kasance a cikin kwaya ta Linux, an ƙirƙira shi lokaci ɗaya don yin aiki tare da kyamarori daban-daban na gidan yanar gizo kuma bai dace da yanayin kwanan nan na motsi ayyukan MCU akan kafaɗun CPU ba.

Ba kamar kyamarori na gargajiya ba, waɗanda ake aiwatar da ayyukan sarrafa hoto na farko akan na'ura mai sarrafa na'ura ta musamman da aka gina a cikin kyamara (MCU), a cikin na'urorin da aka saka, don rage farashi, ana aiwatar da waɗannan ayyukan akan kafaɗun babban CPU kuma suna buƙatar hadaddun direban da zai iya. ya ƙunshi abubuwan da ba buɗaɗɗen tushe masu lasisi ba. A matsayin wani ɓangare na aikin libcamera, buɗaɗɗen software masu goyon bayan software da masana'antun kayan masarufi sun yi ƙoƙarin ƙirƙirar mafita wanda, a gefe guda, ya gamsar da buƙatun masu haɓaka software na buɗaɗɗen tushe, kuma a ɗaya, yana ba da damar kare haƙƙin mallaka na masana'antun kamara.

An aiwatar da tari da ɗakin karatu na kyamarori ke bayarwa gaba ɗaya a cikin sararin mai amfani. Don tabbatar da dacewa tare da mahallin software da aikace-aikace, ana samar da matakan dacewa don V4L API, Gstreamer da Android Kamara HAL. Abubuwan da aka keɓance na musamman ga kowane kamara don hulɗa tare da kayan aiki an ƙirƙira su azaman ƙirar ƙira waɗanda ke gudana cikin matakai daban-daban kuma suna hulɗa tare da ɗakin karatu ta hanyar IPC. Modules ba su da damar kai tsaye zuwa na'urar da samun damar kayan aiki ta hanyar API matsakaici, buƙatun ta wanda ake bincika, tacewa kuma iyakance ga kawai samun damar ayyukan da ake buƙata don sarrafa kyamarar.

Hakanan ɗakin karatu yana ba da damar yin amfani da algorithms don sarrafawa da haɓaka ingancin hotuna da bidiyo (daidaituwa ta fari, rage amo, daidaitawar bidiyo, autofocus, zaɓin fallasa, da sauransu), waɗanda za a iya haɗa su ta hanyar buɗe ɗakunan karatu na waje ko na mallakar mallaka. ware kayayyaki. API ɗin yana ba da damar yin amfani da fasali kamar ƙayyadaddun ayyuka na kyamarori na waje da ginannun, ta amfani da bayanan martaba na na'ura, sarrafa haɗin kyamara da abubuwan da suka faru na cire haɗin gwiwa, sarrafa bayanan kamara a matakin firam ɗin mutum, da daidaita hotuna tare da walƙiya. Yana yiwuwa a yi aiki daban tare da kyamarori da yawa a cikin tsarin kuma tsara ɗaukar lokaci guda na rafukan bidiyo da yawa daga kyamara ɗaya (misali ɗaya tare da ƙaramin ƙuduri don taron bidiyo, wani kuma tare da babban ƙuduri don rikodin rikodi zuwa faifai).

source: budenet.ru

Add a comment