Как да проверите дали Camera2 API е активиран на вашето устройство с Android

click fraud protection

Хардуерът на смартфона често е способен на повече от това, което софтуерът позволява по подразбиране. Това е точната причина Портове на Google Camera станаха много популярни в нашите форуми, тъй като мнозина ги виждат като лесен начин за драматично подобряване на качеството на картината на широка гама от устройства. С пренесеното приложение Google Camera можете да използвате превъзходната HDR+ оптимизация на Google, както и техния портретен режим на вашето устройство, което не е Google. Трябва обаче да сте срещали конкретен термин – „API на Camera2“ – докато сте чели за тези портове. В този урок ще научите какво всъщност означава терминът и как можете да проверите състоянието на поддръжката на Camera2 API на вашите телефони с Android.


Какво е Camera2 API?

Физическият модул на камерата на вашия телефон е невероятно сложен хардуерен елемент, но не е необходимо Android да знае всичко параметрите на ниско ниво за взаимодействие с него, благодарение на слоя за хардуерна абстракция на камерата (HAL), внедрен от SoC доставчици. Специфичният за камерата интерфейс за програмиране на приложения (API) се намира върху HAL и действа като публична рамка на ниво приложение. Накратко, Camera API позволява на приложенията да изследват функциите на камерата на устройството по рационализиран начин, без да се притесняват за дребните детайли на сензора на камерата.

Google представи API на Camera2 в Android 5.0 Lollipop като наследник на оригинала API на камерата за да определите по-добре как приложенията могат да взаимодействат с отделните камери, свързани към вашия смартфон. Той излага редица подробни контроли на камерата на приложенията, включително ефективни потоци без копиране/поточно предаване и контроли за всеки кадър на експозиция, усилване, усилване на баланса на бялото, преобразуване на цветовете, премахване на шума, изостряне и др.

Има пет различни нива на поддръжка за API на Camera2:

  • Наследство: Наследени устройства, които не поддържат функции на Camera API2, като контроли за кадър. Тези устройства предоставят възможности на приложения чрез интерфейсите Camera API2, които са приблизително същите възможности като тези, изложени на приложения чрез интерфейсите Camera API1.
  • Ограничено: Тези устройства поддържат само част от всички възможности на Camera API2.
  • Пълен: Тези устройства поддържат всички основни възможности на Camera API2 и трябва да използват Camera HAL 3.2 или по-нова версия и Android 5.0 или по-нова версия.
  • Ниво_3: Тези устройства поддържат повторна обработка на YUV и заснемане на RAW изображения, заедно с допълнителни конфигурации на изходния поток в допълнение към пълната поддръжка на Camera2 API.
  • Външен: Подобно на LIMITED устройства с някои изключения (напр. информация за някои сензори или лещи може да не бъде докладвана или да има по-малко стабилна скорост на кадрите). Това ниво се използва за външни камери, като например USB уеб камери.

Що се отнася до повечето потребители, причината всички вие да се интересувате от поддръжката на Camera2 API е, че е необходимо портовете на Google Camera да работят на вашия смартфон.


Как да проверите дали Camera2 API е активиран

Уеб страницата за Комплект за тестване на изображения част от Compatibility Test Suite (CTS) гласи това Камера HAL3 поддръжката с Camera2 API е силно препоръчителна за сертифицирани устройства работи с Android 9 или по-нова версия. Като се има предвид това, на много устройства в миналото им липсваше поддръжката на Camera2 API извън кутията. За да активират API, някои от тях изискват или root, за да променят своя build.prop, или просто отключен буутлоудър, за да изпълняват специфични за доставчика Fastboot команди. Съвсем наскоро обаче нещата започнаха да се променят.

За да разберете състоянието на поддръжката на Camera2 API на вашето устройство, изберете един от следните методи.

Метод 1: Използване на ADB

Преди да започнете с този метод, уверете се, че имате достъп до PC/Mac с Инсталирани ADB и Fastboot.

  1. На телефона си включете USB отстраняване на грешки от Опции за разработчици.
    • Може да се наложи активирайте опциите за разработчици първи.
  2. Свържете вашето устройство към PC/Mac.
  3. Отворете команден ред или PowerShell (Windows) или терминален прозорец (macOS или Linux).
    • В случай, че местоположението на двоичния файл на ADB не е дефинирано в глобалните настройки на PATH, трябва да промените работната директория на обвивката на мястото, където е поставен двоичният файл на ADB.
  4. Въведете следната команда:
    adb shell "getprop | grep HAL3"
  5. Ако резултатът е едно от следните:
    [persist.camera.HAL3.enabled]: [1]
    [persist.vendor.camera.HAL3.enabled]: [1]
    , тогава вашето устройство има Camera HAL3 с пълна поддръжка на Camera2 API.

Метод 2: Използване на терминален емулатор

Ако не искате да използвате PC/Mac, тогава можете да използвате всяко приложение за терминален емулатор, за да проверите състоянието на Camera2 API директно от телефона си.

  1. Изтеглете приложение за терминален емулатор по ваш избор. По-долу сме изброили няколко популярни.
  2. Отворете приложението и въведете следната команда:
    getprop | grep HAL3
  3. Ако резултатът е едно от следните:
    [persist.camera.HAL3.enabled]: [1]
    [persist.vendor.camera.HAL3.enabled]: [1]
    , тогава вашето устройство има Camera HAL3 с пълна поддръжка на Camera2 API.

[appbox googleplay "jackpal.androidterm"]

[appbox fdroid "com.termux"]

Имайте предвид, че поддръжката на HAL3 не означава, че всички функции на Camera2 API са налични, като a компанията все още може да модифицира функционалности като поддръжка за заснемане на RAW, ISO нива, времена на експозиция и Повече ▼. Ето защо препоръчваме да изберете третия метод, тъй като той предлага по-подробна информация.


Метод 3: Използване на специално приложение на трета страна

Не искате да се занимавате с интерфейса на командния ред? След това просто изтеглете приложението Camera2 API Probe на целевото устройство с Android от Google Play Store.

[appbox googleplay "com.airbeat.device.inspector"]

Веднъж инсталирано, приложението ще покаже две или повече секции в зависимост от броя на лещите на камерата, които вашето устройство има (напр. „Camera ID: 0“ представлява модула на задната камера). Под всеки идентификатор на камера можете да намерите подкатегория с различни функции и подробности за тяхната поддръжка. Особено се интересуваме от категорията, наречена „Ниво на поддръжка на хардуер“, която показва нивото на поддръжка на Camera2 API на устройството.

Както можете да видите, приложението не само открива точното ниво на Camera2 API за вашето устройство, но също така изброява няколко други функции, които се поддържат от модула на камерата. Информацията може да бъде полезна по време на инсталиране на приложения за камера на трети страни, като конкретен порт на Google Camera, който може да използва тези функции.

Ако искате да копаете по-дълбоко и да откриете повече информация относно поддържаните разширения Camera2 (както и CameraX), дайте Информация за CameraX от XDA признат разработчик Zacharee1 a go. Имайте предвид, че приложението изброява само функциите, които производителят на вашето устройство е предоставил на приложения на трети страни. Не трябва да се използва за изброяване на функциите, вградени в родното приложение за камера.

Информация за CameraXРазработчик: Захари Уондър

Цена: Безплатно.

Изтегли

Надяваме се, че вече можете бързо да забележите дали Camera2 API е активиран или не на вашето устройство, като използвате това ръководство. Кажете ни предпочитания от вас метод в коментарите!