Sobre el proyecto

Tracktion Engine es un módulo de JUCE que ofrece un modelo de datos de alto nivel y un conjunto de clases para crear aplicaciones de audio basadas en secuencias. Según el README, se puede usar para construir desde un simple reproductor de archivos o secuenciador hasta un DAW completo. Un documento separado FEATURES.md enumera la gama completa de funciones. Las plataformas compatibles son macOS, Windows, Linux, Raspberry Pi, iOS y Android. El proyecto requiere C++20. Para comenzar: el código del módulo se encuentra en modules/tracktion_engine, y JUCE se incluye como un submódulo de Git para compilar los ejemplos. El README sugiere clonar con --recurse-submodules. Los ejemplos están en /examples, con dos proyectos principales: DemoRunner, que muestra varias funcionalidades del Engine, y EngineInPluginDemo, que crea un plugin que contiene Tracktion Engine y sincroniza la línea de tiempo del host con la del Edit. También hay aplicaciones Benchmark y TestRunner utilizadas por CI para probar funcionalidad y rendimiento. Los scripts Bash en /tests (generate_examples y build) pueden generar archivos de proyecto IDE o compilar los ejemplos; CMake también se puede ejecutar en el directorio raíz para crear objetivos para DemoRunner, EngineInPluginDemo, TestRunner y Benchmark. Los tutoriales se proporcionan en /tutorials como Markdown renderizado. La documentación generada por Doxygen está disponible en tracktion.github.io/tracktion_engine/modules.html, y los benchmarks en tracktion.github.io/tracktion_engine/benchmarks.html. Contribuciones: los informes de errores y solicitudes de funciones se dirigen a la categoría Tracktion Engine del Foro de JUCE. El README indica que no se aceptan solicitudes de extracción de GitHub de terceros directamente debido a restricciones de derechos de autor, pero se pide a los contribuyentes interesados que se pongan en contacto. Licencia: Tracktion Engine está cubierto por una licencia GPL/Comercial, con múltiples niveles comerciales. El README señala que, aunque usa JUCE, no es parte de JUCE ni es propiedad de la misma empresa, se licencia por separado, y también se requiere una licencia de JUCE al distribuir productos basados en él. También enumera las bibliotecas de terceros incluidas y sus licencias, incluyendo rpmalloc, moodycamel::ConcurrentQueue, choc, crill, expected, libsamplerate, rigtorp/MPMCQueue, magic_enum, farbot, doctest y signalsmith-stretch.