Espressif publicó ESP-GMF v1.0, la primera versión oficial de su General Multimedia Framework, una plataforma de software unificada y liviana para crear aplicaciones de audio, video e inteligencia artificial sobre sus chips ESP32. El anuncio marca el paso de las versiones de desarrollo a una base con interfaces de programación (API) estables.

¿Qué problema resuelve ESP-GMF?

Hasta ahora, las aplicaciones multimedia solían construirse sobre marcos separados, cada uno con su propio modelo de desarrollo, diseño de interfaz y mecanismo de ejecución. Eso limitaba la reutilización de código y dificultaba extender funciones entre productos. ESP-GMF reúne bajo una sola arquitectura las capacidades multimedia antes dispersas de Espressif, con un modelo de flujo de datos y un sistema de componentes común. Cubre desde reproducción y grabación hasta voz con IA, videollamadas, audio Bluetooth y renderizado, todo sobre el mismo framework.

Frente a su antecesor de audio, ESP-ADF, el nuevo marco ofrece una arquitectura más modular, mayor soporte de hardware y medios, y mejor reutilización de código entre audio, video e IA. En paralelo, Espressif completó el ESP Multimedia Core, una biblioteca que consolida bloques fundamentales como protocolos de medios, codecs de audio y video y algoritmos de procesamiento de audio e imagen.

¿Qué trae la versión 1.0?

Estos son los cambios principales:

  • Todos los componentes suben a la línea 1.0.x: las API públicas se consideran estables.
  • Cuatro módulos nuevos: esp_player, esp_asrc, esp_video_render y gmf_fft.
  • Nuevos elementos de audio: aud_muxer, aud_howl y aud_asrc, más los de IA de audio ai_vad, ai_ns y ai_doa.
  • Audio: el códec esp_audio_codec sube a la versión 2.5, con codificación y decodificación G722 y decodificación OGG.
  • Video: mezcla por hardware, superposición multirregión, conversión de color por software (PPA) y más pantallas soportadas.
  • Captura y Bluetooth: soporte para v4l2 en el ESP32-S31, decodificación MJPEG a RGB, LE Audio (BLE) y Auracast.

Migración de la gestión de placas

La gestión de placas pasa a ser un componente independiente, esp-board-manager, y los ejemplos ahora usan la utilidad esp-bmgr-assist (idf.py bmgr) en lugar de scripts de preconstrucción por ejemplo. El código fuente, los componentes y los ejemplos están en el repositorio de ESP-GMF en GitHub, con documentación disponible en inglés y chino.