À propos du projet
Essentia est une bibliothèque C++ open-source pour l'analyse audio et la recherche d'informations musicales basée sur l'audio, publiée sous licence Affero GPLv3. Elle fournit une large collection d'algorithmes réutilisables couvrant l'entrée/sortie audio, les blocs standard de traitement numérique du signal, la caractérisation statistique des données, et un grand ensemble de descripteurs musicaux spectraux, temporels, tonals et de haut niveau.
La bibliothèque est enveloppée en Python et est livrée avec des extracteurs exécutables prédéfinis pour les descripteurs musicaux disponibles, ce qui facilite le prototypage rapide et la mise en place rapide d'expériences de recherche. Elle inclut également un plugin Vamp pour une utilisation avec Sonic Visualiser à des fins de visualisation. Le projet met l'accent sur la robustesse des descripteurs musicaux fournis et l'optimisation du coût computationnel.
La fonctionnalité est décrite comme facilement extensible, permettant à la fois des expériences de recherche et le développement d'applications industrielles à grande échelle. La bibliothèque est multiplateforme et prend actuellement en charge Linux, macOS, Windows, iOS et Android. Les packages Python sont disponibles via pip sous les noms `essentia` et `essentia-tensorflow` pour Linux x86_64 et i686, et des images Docker sont publiées. Des binaires statiques précompilés pour un certain nombre d'extracteurs musicaux en ligne de commande sont également proposés comme alternative à l'installation de la bibliothèque complète.
La documentation, les instructions d'installation, un tutoriel Python et un tutoriel Jupyter Notebook sont disponibles en ligne. Les utilisateurs peuvent consulter la FAQ, ouvrir des problèmes GitHub ou lancer des discussions pour obtenir du support. Les versions officielles sont publiées sur GitHub, la branche master portant les dernières mises à jour ; le README note d'éventuelles incompatibilités entre différentes versions d'Essentia lors de l'utilisation d'extracteurs d'exemple ou de code personnalisé. Les contributions sont acceptées via des demandes de tirage (pull requests) conformément à la politique de contribution du projet et au certificat d'origine du développeur.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.