Cómo comprobar si la API Camera2 está habilitada en su dispositivo Android

click fraud protection

El hardware de un teléfono inteligente suele ser capaz de hacer más que lo que el software permite de forma predeterminada. Esta es la razón exacta por la que Puertos de la cámara de Google se han vuelto muy populares en nuestros foros, ya que muchos los ven como una manera fácil de mejorar drásticamente la calidad de la imagen en una amplia gama de dispositivos. Con la aplicación Google Camera portada, puede utilizar la optimización superior HDR+ de Google, así como su modo retrato en su dispositivo que no sea de Google. Sin embargo, debe haber encontrado un término en particular: "Camera2 API" - mientras leía sobre estos puertos. En este tutorial, aprenderá qué significa realmente el término y cómo puede verificar el estado de la compatibilidad con la API Camera2 en sus teléfonos Android.


¿Qué es la API de Camera2?

El módulo físico de la cámara de su teléfono es una pieza de hardware increíblemente compleja, pero Android no necesita saberlo todo. los parámetros de bajo nivel para interactuar con él, gracias a la cámara Hardware Abstraction Layer (HAL) implementada por SoC vendedores. La interfaz de programación de aplicaciones (API) específica de la cámara reside encima de HAL y actúa como un marco público a nivel de aplicación. En pocas palabras, la API de la cámara permite a las aplicaciones probar las funciones de la cámara en un dispositivo de manera simplificada, sin preocuparse por el meollo de la cuestión del sensor de la cámara.

Google presentó el API de cámara 2 en Android 5.0 Lollipop como sucesor del original API de cámara para definir mejor cómo las aplicaciones pueden interactuar con las cámaras individuales conectadas a su teléfono inteligente. Expone una serie de controles granulares de la cámara a las aplicaciones, incluidos flujos eficientes de ráfaga/transmisión sin copia. y controles por cuadro de exposición, ganancia, ganancia de balance de blancos, conversión de color, eliminación de ruido, nitidez y más.

Hay cinco niveles de soporte diferentes para la API Camera2:

  • Legado: Dispositivos heredados que no admiten funciones de Camera API2, como controles por cuadro. Estos dispositivos exponen capacidades a las aplicaciones a través de las interfaces Camera API2 que son aproximadamente las mismas capacidades que las expuestas a las aplicaciones a través de las interfaces Camera API1.
  • Limitado: Estos dispositivos admiten solo un subconjunto de todas las capacidades de Camera API2.
  • Lleno: Estos dispositivos admiten todas las capacidades principales de Camera API2 y deben usar Camera HAL 3.2 o superior y Android 5.0 o superior.
  • Nivel 3: Estos dispositivos admiten el reprocesamiento YUV y la captura de imágenes RAW, junto con configuraciones de flujo de salida adicionales además de la compatibilidad total con la API Camera2.
  • Externo: Similar a los dispositivos LIMITADOS con algunas excepciones (por ejemplo, es posible que parte de la información del sensor o la lente no se informe o tenga velocidades de fotogramas menos estables). Este nivel se utiliza para cámaras externas como cámaras web USB.

Como para la mayoría de los usuarios, la razón por la que todos deberían preocuparse por la compatibilidad con la API de Camera2 es que es necesario que los puertos de la cámara de Google funcionen en su teléfono inteligente.


Cómo comprobar si la API Camera2 está habilitada

La página web para el Conjunto de pruebas de imágenes parte del conjunto de pruebas de compatibilidad (CTS) establece que Cámara HAL3 Se recomienda encarecidamente la compatibilidad con la API Camera2 para dispositivos certificados ejecutando Android 9 o superior. Dicho esto, muchos dispositivos en el pasado carecían de compatibilidad con la API Camera2 lista para usar. Para habilitar la API, algunos de ellos requieren que root modifique su build.prop, o simplemente un gestor de arranque desbloqueado para ejecutar comandos Fastboot específicos del proveedor. Sin embargo, más recientemente las cosas han comenzado a cambiar.

Para conocer el estado de la compatibilidad con la API de Camera2 en su dispositivo, elija uno de los siguientes métodos.

Método 1: usar ADB

Antes de comenzar con este método, asegúrese de tener acceso a una PC/Mac con ADB y Fastboot instalados.

  1. En su teléfono, active la depuración USB en las opciones de desarrollador.
    • Es posible que necesites habilitar opciones de desarrollador primero.
  2. Conecte su dispositivo a la PC/Mac.
  3. Abra un símbolo del sistema o PowerShell (Windows) o una ventana de terminal (macOS o Linux).
    • En caso de que la ubicación del binario ADB no esté definida en la configuración de RUTA global, debe cambiar el directorio de trabajo del shell a la ubicación donde se coloca el binario ADB.
  4. Ingrese el siguiente comando:
    adb shell "getprop | grep HAL3"
  5. Si el resultado es uno de los siguientes:
    [persist.camera.HAL3.enabled]: [1]
    [persist.vendor.camera.HAL3.enabled]: [1]
    , entonces su dispositivo tiene Camera HAL3 con soporte completo de Camera2 API.

Método 2: usar un emulador de terminal

Si no desea utilizar una PC/Mac, puede utilizar cualquier aplicación de emulador de terminal para comprobar el estado de la API de Camera2 directamente desde su teléfono.

  1. Descargue una aplicación de emulador de terminal de su elección. A continuación enumeramos algunos populares.
  2. Abra la aplicación e ingrese el siguiente comando:
    getprop | grep HAL3
  3. Si el resultado es uno de los siguientes:
    [persist.camera.HAL3.enabled]: [1]
    [persist.vendor.camera.HAL3.enabled]: [1]
    , entonces su dispositivo tiene Camera HAL3 con soporte completo de Camera2 API.

[appbox googleplay "jackpal.androidterm"]

[appbox fdroid "com.termux"]

Tenga en cuenta que tener compatibilidad con HAL3 no significa que todas las funciones de la API de Camera2 estén disponibles, como La empresa aún podría modificar funciones como la compatibilidad con la captura RAW, los niveles ISO, los tiempos de exposición y más. Es por eso que recomendamos optar por el tercer método, ya que ofrece información más granular.


Método 3: usar una aplicación de terceros dedicada

¿No quieres jugar con la interfaz de línea de comandos? Luego, simplemente descargue la aplicación Camera2 API Probe en el dispositivo Android de destino desde Google Play Store.

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

Una vez instalada, la aplicación mostrará dos o más secciones dependiendo de la cantidad de lentes de cámara que tenga su dispositivo (por ejemplo, "ID de cámara: 0" representa el módulo de cámara trasera). Debajo de cada ID de cámara, puede encontrar una subcategoría de varias funciones y sus detalles de soporte. Estamos particularmente interesados ​​en la categoría denominada "Nivel de soporte de hardware" que muestra el nivel de soporte de la API de Camera2 en el dispositivo.

Como puede ver, la aplicación no solo descubre el nivel exacto de API de Camera2 para su dispositivo, sino que también enumera otras funciones compatibles con el módulo de la cámara. La información puede resultar útil al momento de instalar aplicaciones de cámara de terceros, como un puerto específico de la cámara de Google que puede utilizar estas funciones.

Si desea profundizar y descubrir más información sobre las extensiones compatibles de Camera2 (así como CameraX), proporcione Información de cámaraX por el desarrollador reconocido de XDA Zacharee1 a go. Tenga en cuenta que la aplicación solo enumera las funciones que el fabricante de su dispositivo ha expuesto a aplicaciones de terceros. No debe usarse para enumerar las funciones integradas en la aplicación de cámara nativa.

Información de cámaraXDesarrollador: Zachary Wander

Precio: Gratis.

Descargar

Esperamos que ahora puedas detectar rápidamente si la API de Camera2 está habilitada o no en tu dispositivo usando esta guía. ¡Háganos saber su método preferido en los comentarios!