Motor de cámara HMS. Hola a todos, en este blog voy a …… autor: Önder Postoğlu | Desarrolladores de Huawei | Octubre de 2020

Hola a todos, en este blog explicaré qué es un Camera Engine y cómo usarlo.

Todo el mundo quiere guardar recuerdos de sus mejores momentos, momentos especiales, con su familia y amigos. Hoy en día, la mayoría de las personas tienen teléfonos inteligentes y pueden guardar esos momentos fácilmente tomando fotos y videos.

Camera Engine ofrece a las aplicaciones las mismas capacidades fotográficas que los teléfonos Huawei. Por lo tanto, las funciones de la cámara como la apertura amplia, el modo de retrato, HDR, el desenfoque de fondo y el modo Supernoche pueden ayudar a los usuarios a tomar fotografías y videos en vivo impresionantes en cualquier momento y lugar para guardar recuerdos de calidad.

Camera Engine es totalmente compatible con EMUI 10.0 y es compatible con los sistemas operativos Android y Huawei.

Camera Engine ofrece un SDK con modos de cámara predeterminados. Encapsula la API de Google Camera2 para admitir varias funciones mejoradas de la cámara.

En entornos con iluminación de fondo o con poca luz, la cámara frontal de alto rango dinámico (HDR) mejora los detalles en áreas de fotos bien iluminadas y mal iluminadas para proporcionar una calidad realista.

Utilice este modo para tomar fotografías con suficiente brillo utilizando una exposición prolongada por la noche. También le ayuda a tomar fotografías que se exponen correctamente en otros entornos oscuros.

Este modo difumina el fondo y resalta el sujeto de la foto. Le recomendamos que se encuentre a 2 metros del sujeto y dispare con el flash en este modo al disparar.

Este modo le ayuda a grabar videos HD con efectos como diferentes colores, filtros y películas con IA.

Este modo le ayuda a capturar retratos y primeros planos.

Este modo admite funciones generales, que incluyen, pero no se limitan a:

Cámara trasera: Flash, modos de color, detección de rostro / sonrisa, filtro e IA principal.

Cámara frontal: Detección de rostro / sonrisa, filtro, SensorHdr y reflejo de espejo.

Este modo le permite grabar videos muy lentos con una velocidad de fotogramas superior a 960 FPS en modo manual o automático (detección de movimiento).

Este modo le permite grabar videos en cámara lenta con una velocidad de fotogramas inferior a 960 FPS.

El modo Pro está diseñado para permitir que las capacidades de grabación y fotografía profesional de Huawei cumplan con una variedad de requisitos de disparo.

9.1. Opción de ajuste de velocidad de fotogramas: CONTROL_AE_TARGET_FPS_RANGE

Durante la grabación de video, puede ajustar la velocidad de fotogramas de 12 a 60 FPS según las especificaciones del producto.

Le brinda la posibilidad de utilizar métodos de disparo profesionales, como disparos a intervalos o disparos a una velocidad de fotogramas superior a la normal.

También se admiten velocidades de cuadro más bajas para lograr velocidades de obturación más lentas. Cuando la velocidad de fotogramas es lenta, la velocidad de obturación es lenta, lo que le permite disparar con efectos artísticos como el desenfoque.

También puede grabar videos con una frecuencia de actualización de 60 FPS para capturar más detalles en comparación con los videos de 30 FPS.

9.2. Opción de ajuste TONEMAPPING: TONEMAP_MODE y TONEMAP_CURVE

Se admite el ajuste de la curva de grabación de video, lo que ofrece más opciones de tono de video.

9.3. Temperatura de color y tono ajustable: COLOR_CORRECTION_MODE y COLOR_CORRECTION_GAINS

Puede ajustar la temperatura y el tono de la grabación, lo que le permite ajustar manualmente el balance de blancos y el tono.

Puede ajustar la temperatura del color ajustando los parámetros RGB para garantizar un balance de blancos preciso.

Ajuste el tono del color para obtener efectos de color de video más ricos.

Este modo le permite ajustar los siguientes parámetros de la cámara para obtener las mismas opciones de disparo que la cámara Huawei: modo de medición, ISO, compensación de exposición, velocidad de obturación, modo de enfoque y balance de blancos automático.

Primero, nos registraremos e iniciaremos sesión en el sitio web para desarrolladores de Huawei. Luego, descargue el SDK de Camera Engine. Cuando descargue el SDK, el sistema le pedirá que inicie sesión e inicie sesión Acuerdo de servicios multimedia de HUAWEI.

Como medio ambiente:

  • Se recomienda Android Studio v3.0.1 o posterior.
  • Se requieren teléfonos Huawei equipados con Kirin 980 o posterior y EMUI 10.0 o posterior.

Después de crear un proyecto con una actividad vacía, lo configuramos build.gradle archivos.

Entonces estamos listos para implementar las funciones de Camera Engine.

Cree un modo de kit de cámara cuando la aplicación se esté ejecutando y haya una vista previa disponible.

Según las funciones de modo y los requisitos de servicio, configura el modo y el estado de los oyentes de modo y la superficie de vista previa, y establece los parámetros de disparo.

Para iniciar la vista previa: La vista previa comienza cuando se devuelve la configuración del modo correcta al volver a llamar el estado del modo.

Configuración de parámetros funcionales:

Para usar el modo de disparo: Haga clic en la interfaz de usuario para tomar una foto en el modo actual.

Comentarios sobre el estado del modo: Se utiliza para alternar el estado de los procesos de creación y control de modo.

Datos de la acción de devolución de llamada: Se utiliza para el procesamiento asincrónico de datos de acción. Por ejemplo, esta devolución de llamada se utiliza para notificar a la aplicación que se generará una imagen JPEG después de tomar una foto.

Comentarios sobre el estado del evento: Se utiliza para procesar de forma asincrónica el estado de una acción, como iniciar o detener la fotografía.

Fuente del modo de liberación: Cuando se cierra la aplicación, se liberan los recursos ocupados por el modo.

  • Desarrollo del modo de cámara frontal HDR

Solo configurar mCurrentModeType en Mode.Type.HDR_MODE. Los siguientes pasos son similares a los pasos para desarrollar un modo común.

  • Desarrollo del modo supernoche

Expediente mCurrentModeType en Mode.Type.SUPER_NIGHT_MODE.

Las diferencias con el modo normal son las siguientes:

Después de iniciar la vista previa, configure la sensibilidad y el tiempo de exposición y ajuste la interfaz de usuario de la aplicación. Si estos dos parámetros no están configurados, se utilizarán la sensibilidad y el tiempo de exposición predeterminados.

Cuando haya terminado de disparar, llame a la API para dejar de disparar.

Se utiliza para procesar de forma asincrónica el estado de una acción, como iniciar o detener la fotografía.

  • Desarrollo del modo de pantalla ultra ancha

Expediente mCurrentModeType en Mode.Type.BOKEH_MODE.

Las diferencias con el modo normal son las siguientes:

Después de iniciar la vista previa, ajuste los parámetros de apertura y ajuste el nivel de ultra gran angular.

  • Desarrollo del modo de grabación

Expediente mCurrentModeType en Mode.Type.VIDEO_MODE.

Las diferencias con el modo normal son las siguientes:

Según las funciones de modo y los requisitos de servicio, configura el modo y el estado de los oyentes de modo y la superficie de vista previa, y establece los parámetros de disparo.

Después de ejecutar la vista previa, consulte y configure las funciones compatibles.

Después de ejecutar la vista previa, llame a la API de grabación.

  • Desarrollo del modo retrato

Expediente mCurrentModeType en Mode.Type.PORTRAIT_MODE.

Después de ejecutar la vista previa, configure el modo retrato.

Expediente mCurrentModeType en Mode.Type.NORMAL_MODE.

Después de habilitar la vista previa, puede configurar la capacidad de disparo.

1) El modo normal admite la identificación de escenas con IA.

2) El disparo continuo con la cámara trasera es compatible con el modo normal.

O

  • Desarrollo en cámara superlenta

Expediente mCurrentModeType en Mode.Type.SUPER_SLOW_MOTION.

Las diferencias en el procedimiento de configuración del modo son las siguientes. Los siguientes pasos son similares a los del modo general.

Estos dos elementos de configuración deben establecerse en pares según Mapa regresó modeCharacteristics.getSupportedVideoSizes ().

El disparo no es compatible con el modo de cámara superlenta. Por lo tanto, no se debe agregar ninguna configuración relacionada con la fotografía.

La resolución de video debe ser la misma que la resolución de vista previa.

Los diferentes modos son los siguientes:

Iniciar la grabación:

Si se requiere el modo de grabación manual, llame mMode.startRecording (archivo) directamente para completar la tarea de grabación. La grabación no se puede detener a la mitad. De lo contrario, la carga fallará.

Para que la cámara superlenta funcione en modo automático, primero cree un cuadro de detección de movimiento:

El marco de detección debe ser un marco rectangular transformado en un sistema de coordenadas central a partir de un sistema de coordenadas de vista previa. De lo contrario, no se puede entregar.

Si el marco rectangular es válido, el módulo funciona en modo automático y mMode.startRecording (archivo) se llama. Antes de detectar un objeto en movimiento, es decir, antes RecordingResult.State.RECORDING_STARTED se devuelve, puedes llamar mMode.stopRecording () para de grabar. Una vez que se detecta un objeto en movimiento, no se puede detener la grabación. De lo contrario, la carga fallará.

En modo automático, el área de detección recibida no se guarda. Después de una grabación, el modo de funcionamiento cambia al modo manual. Si desea realizar la grabación automática nuevamente, entregue el área de detección nuevamente.

Además, el modo superlento admite:

Cámara trasera: flash, zoom y enfoque automático.

Cámara frontal: La cámara frontal no admite el modo de cámara súper lenta.

  • Cámara lenta del disco

Expediente mCurrentModeType en Mode.Type.SLOW_MOTION_MODE.

Además de los pasos siguientes, los otros pasos son los mismos que en el modo de grabación normal.

El modo lento no admite disparos. Por lo tanto, no se debe agregar ninguna configuración relacionada con la fotografía.

El modo de cámara lenta no admite pausar y reanudar la operación durante la grabación de video.

Además, el modo de cámara lenta admite:

Cámara trasera: flash, zoom, enfoque automático, modo de color y reconocimiento facial.

Cámara frontal: La cámara frontal no es compatible con cámara lenta.

1 juego mCurrentModeType en PRO_PHOTO_MODE o PRO_VIDEO_MODE.

2. Utilice mCurrentModeType para crear un objeto de modo.

3. Llamar setParameter un método de objeto Mode que permite la capacidad correspondiente.

4. Utilice toma una foto, Iniciar la grabación, un para de grabar Métodos de objetos de modo para tomar fotos y grabar videos.

Las diferencias son las siguientes:

Después de habilitar la función de vista previa, puede configurar los valores de las funciones del modo Pro como ISO, velocidad de obturación y balance de blancos.

Los ajustes de los otros parámetros son similares. Valor ISO y valor del tiempo de exposición 0 se puede suministrar para habilitar el modo automático.

El modo Pro no es compatible con la cámara frontal ni el disparo continuo.

Además, el modo Pro admite:

Cámara trasera: flash, zoom, enfoque automático, modo de color y reconocimiento facial.

Cámara frontal: La cámara frontal no es compatible con el modo Pro.

Para tomar una foto RAW, use getSupportedCaptureSizes (ImageFormat.RAW_SENSOR) de Características del modo Para averiguar la resolución admitida, seleccione la resolución captureSizey llama addCaptureImage (captureSize, ImageFormat.RAW_SENSOR) de ModeConfig.Builder establece la superficie de la imagen RAW.

  • Desarrollo del modo de video profesional

Expediente mCurrentModeType en Mode.Type.PRO_VIDEO_MODE.

Además de los pasos siguientes, los otros pasos son los mismos que en el modo de grabación normal.

El modo de video profesional no es compatible con la cámara frontal ni el disparo continuo.

Después de habilitar la función de vista previa, llame a la API de grabación.

La entrega de parámetros en el modo de grabación Pro es similar a la del modo de grabación Pro. La diferencia es que en el modo de video Pro no hay ningún parámetro para configurar el tiempo de exposición.

Además, el modo Video Pro admite:

Cámara trasera: flash, zoom, enfoque automático, modo de color y reconocimiento facial.

Cámara frontal: La cámara frontal no es compatible con el modo de video Pro.

Con todas estas funciones, hay disponible un conjunto de API de programación avanzada para integrar las potentes funciones de procesamiento de imágenes de las cámaras de los teléfonos Huawei en sus aplicaciones.

https://developer.huawei.com/consumer/en/CameraKit

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *