Sobre el proyecto

Essentia es una biblioteca C++ de código abierto para análisis de audio y recuperación de información musical basada en audio, publicada bajo la licencia Affero GPLv3. Proporciona una amplia colección de algoritmos reutilizables que cubren entrada/salida de audio, bloques estándar de procesamiento digital de señales, caracterización estadística de datos, y un gran conjunto de descriptores musicales espectrales, temporales, tonales y de alto nivel. La biblioteca está envuelta en Python y viene con extractores ejecutables predefinidos para los descriptores musicales disponibles, lo que facilita la creación rápida de prototipos y la configuración rápida de experimentos de investigación. También incluye un plugin Vamp para usar con Sonic Visualiser con fines de visualización. El proyecto declara un enfoque en la robustez de los descriptores musicales proporcionados y la optimización del costo computacional. La funcionalidad se describe como fácilmente expandible, permitiendo tanto experimentos de investigación como el desarrollo de aplicaciones industriales a gran escala. La biblioteca es multiplataforma y actualmente soporta Linux, macOS, Windows, iOS y Android. Los paquetes de Python están disponibles a través de pip como `essentia` y `essentia-tensorflow` para Linux x86_64 e i686, y se publican imágenes de Docker. También se ofrecen binarios estáticos precompilados para varios extractores de música de línea de comandos como alternativa a instalar la biblioteca completa. La documentación, las instrucciones de instalación, un tutorial de Python y un tutorial de Jupyter Notebook están disponibles en línea. Los usuarios pueden leer las preguntas frecuentes, abrir problemas en GitHub o iniciar discusiones para obtener soporte. Las versiones oficiales se publican en GitHub, con la rama master llevando las últimas actualizaciones; el README señala posibles incompatibilidades entre diferentes versiones de Essentia al usar extractores de ejemplo o código personalizado. Las contribuciones se aceptan mediante solicitudes de extracción bajo la política de contribución del proyecto y el Certificado de Origen del Desarrollador.