kuvakooste.
ensiksikin täytyy sanoa, että en ole koodari / ohjelmisto – ekspertti ollenkaan, joten tämä tulee maallikon näkökulmasta enkä aio – ilmeisistä syistä-kaivautua liian syvälle pinnan alla oleviin teknisempiin seikkoihin.
nyt, mikä on API? API tulee sanoista”application programming interface”. Käyttöjärjestelmä käyttää ohjelmointirajapintoja (API) antaakseen (kolmannen osapuolen) kehittäjille työkaluja ja pääsyn tiettyihin järjestelmän osiin käyttääkseen niitä sovelluksissaan. Käänteisesti tämä tarkoittaa sitä, että käyttöjärjestelmän tekijä voi myös rajoittaa pääsyä tiettyihin järjestelmän osiin. Lainatakseni Wikipediasta: ”yleisesti ottaen se on joukko selkeästi määriteltyjä viestintämenetelmiä eri ohjelmistokomponenttien välillä. Hyvä API helpottaa tietokoneohjelman kehittämistä tarjoamalla kaikki rakennuspalikat, jotka ohjelmoija sitten kokoaa yhteen.”Nyt tiedät sen.
Androidin versioon 4.4 (KitKat) asti käyttöjärjestelmään upotettujen kameratoimintojen käyttöoikeusrajapinta oli hyvin rajallinen. Version 5 (Lollipop) myötä Google esitteli niin sanotun Camera2-API: n, jonka avulla kamerasovellusten kehittäjät pääsevät paremmin käsiksi kameran kehittyneempiin hallintalaitteisiin, kuten manuaaliseen valotukseen (ISO, suljinnopeus), tarkennukseen, RAAKAKAAPPAUKSEEN jne. Vaikka puhelimen valmistajat itse eivät välttämättä ole täysin riippuvaisia Googlen uudesta API: sta, koska he voivat muokata oman versionsa Android – käyttöjärjestelmästä, kolmannen osapuolen sovelluskehittäjät ovat suuressa laajuudessa-he voivat työskennellä vain niille annetuilla työkaluilla.
joten onko jokaisessa Lollipopia käyttävässä Android-laitteessa Uusi Camera 2 API? Kyllä ja ei. Vaikka Camera2 API on uusi standardi Camera API Android Lollipopista lähtien, tämän API: n toteutuksessa on eri tasoja, jotka vaihtelevat eri puhelinvalmistajien ja laitteiden välillä. Camera2-toteutuksessa on neljä eri tasoa: Legacy, Limited, Full ja Level 3. ”Legacy” tarkoittaa, että vain vanhan Camera1-API: n ominaisuudet ovat käytettävissä, ”Limited” tarkoittaa, että jotkin uuden API: n ominaisuudet ovat käytettävissä, ”Full” tarkoittaa, että kaikki Camera2: n uudet perusominaisuudet ovat käytettävissä ja ”Level 3” Lisää tämän päälle joitakin bonusominaisuuksia, kuten RAW Capturen.
toteutustasosta riippuen näitä ominaisuuksia voi käyttää edistyneissä kuvankaappaussovelluksissa – tai sitten ei. App kuten Filmic Pro voidaan asentaa vain, jos Camera2 tuki taso on vähintään ’täysi’ -muuten voit asentaa vain vähemmän feature-pakattu Filmic Plus. Lumio Cam taas voidaan asentaa useimpiin laitteisiin, mutta pro-tilan voi aktivoida manuaalisella valotuksella ja tarkennuksella vain, jos tukitaso on jälleen vähintään ’täysi’. Joten jos olet kiinnostunut käyttämään kehittyneitä kolmannen osapuolen sovelluksia valokuvien kaappaamiseen tai videon tallentamiseen manuaalisilla valotussäätimillä jne. haluat olla laite, joka ainakin on ’täysi’ Camera2 API tuki.
mutta millä laitteilla on ”täysi” Kamera2-tuki? Tällä hetkellä on kaksi pääluokkaa: Google hardware (puhelimet) ja (monet/useimmat) lippulaiva puhelimet, jotka julkaistiin jälkeen Android Lollipop tuli ulos. Itse asiassa, näyttää siltä, että jälkimmäinen todella sai vain Android 6 Marshmallow (luulen puhelimen päättäjät tarvitsi jonkin aikaa selvittää, mistä tässä oli kyse 😉 ei tule yllätyksenä, että Google antaa omille laitteilleen täyden tuen (Nexus & Pixel lines). Tämä tarkoittaa, että jopa lähes muinainen, ennen Lollipop-laite, kuten alkuperäinen Nexus 5, on saanut täyden tuen sillä välin (käyttöjärjestelmän päivityksen kautta). Tietenkin kaikki Nexus puhelimet sen jälkeen (Nexus 6, Nexus 5X, Nexus 6P) ovat mukana ja se on sanomattakin selvää Googlen Pixel puhelimet samoin.
nyt suunnataan muille älypuhelinvalmistajille (ns.OEM-valmistajat, alkuperäiset laitevalmistajat), kuten Samsung, LG, HTC, Huawei, Sony, Lenovo / Motorola, OnePlus jne. Monet heistä tarjoavat ainakin ratkaisevan ”täyden” tukitason lippulaivoilleen, jotka tulivat ulos Android 6 Marshmallow-asennettuna, jotkut jo niillä, jotka tulivat ulos Android 5 Lollipopilla: Samsung sen S-sarja (S6, S6 Edge, S6 Edge Plus päivityksen kautta, S7, S7 Edge jne.), LG sen G-sarja (alkaen g4) ja V-sarja (alkaen V10), HTC (alkaen HTC 10), Lenovo/Motorola (alkaen Moto Z), OnePlus (alkaen OnePlus 3/3T), ja Sony (alkaen Xperia Z5 kautta päivityksen sikäli kuin tiedän). Sony on kuitenkin erikoistapaus: heidän Xperia sarja on mustalla listalla Kehittäjät FilmicPro/Plus koska suuria ongelmia, jotka tapahtuivat niiden laitteiden – et voi asentaa sovelluksia Sony puhelimeen tällä hetkellä. Toisaalta on myös muutamia suuria älypuhelinten OEM-valmistajia, joilla on vielä tarjota täyttä Kamera2-tukea lippulaivoilleen, näkyvin Musta Lammas on Huawei P & Mate-sarjallaan, jopa upouusi Huawei P10 kaikkine kamerakykyineen on vain rajallinen tuki. Sama pätee-yllättävää-Huawein budjettibrändi Honoriin. Muita OEM-valmistajia, jotka eivät tarjoa täyttä Camera2-tukea lippulaivoissaan, ovat Asus (Zenfone 3) ja Blackberry (KeyOne). Toivotaan, että he pian lisäävät tämän tuen ja toivotaan myös, että asianmukainen tuki valuu alas keskialueen ja ehkä jopa lähtötason puhelimet Android universe.
Oletko utelias, mikä Kamera2-tukitaso puhelimessasi on? Voit käyttää kahta eri sovellusta (molemmat ilmaisia) Google Play-Kaupassa testataksesi Kamera2-toteutuksen tasoa laitteellasi. Kamera2-luotain & Kamera2-luotain.
löydät myös (luonnollisesti epätäydellisen) Listan Android-laitteista ja niiden Camera2 API-tuen tasosta täältä, jonka on luonut ja ylläpitänyt sovelluksen kehittäjä ”Camera2 probe”:
https://github.com/TobiasWeis/android-camera2probe/wiki
Jos sinulla on laite, jota ei ole listattu, voit auttaa listan laajentamisessa lähettämällä laitteesi tulokset (ei kuitenkaan henkilötietoja) kehittäjälle (sovelluksen alareunassa on erityinen painike).
Jos haluat tarkempaa tietoa Camera2 API: sta, tutustu näihin lähteisiin:
https://spectrastudy.com/camera2-api-on-mwc-2015-devices/
https://developer.android.com/reference/android/hardware/camera2/package-summary.html
kuten aina, jos sinulla on kysymyksiä tai kommentteja, pudota ne tänne tai lyö minut ylös Twitterissä @smartfilming. Jos pidät tämän artikkelin, myös harkita tilaamalla minun ilmainen sähke kanava (t.me / smartfilming) saada ilmoituksen uusista blogikirjoituksista ja saada kuukausittain kymmenen Telegram Takeaways uutiskirje tärkeistä asioista, joita tapahtui mobiilivideoiden maailmassa.
Katso kaikki blogikirjoitukseni täältä.
sijoitan paljon aikaa ja työtä tähän blogiin ja maksan jopa siitä, että pidän sen mainoksettomana häiriöttömän lukukokemuksen vuoksi. Jos löydät jonkin sisällön hyödylliseksi, harkitse pienen lahjoituksen tekemistä PayPalin kautta (klikkaa alla olevaa PayPal-painiketta). Arvostan sitä suuresti. Kiitoksia! 🙂