Das Ziel der Tracktion Engine besteht darin, ein High-Level-Datenmodell und eine Reihe von Klassen für die Erstellung sequenzbasierter Audioanwendungen bereitzustellen. Sie können alles erstellen, von einem einfachen Dateiplayer oder Sequenzer bis hin zu einer kompletten DAW.
Schauen Sie sich das Funktionsdokument für den gesamten Funktionsumfang an.
Hinweis: Tracktion Engine erfordert C++20
Tracktion Engine wird als JUCE module
geliefert, sodass es problemlos in eine bestehende JUCE-Anwendung integriert werden kann. Den Modulcode finden Sie unter modules/tracktion_engine
. Zusätzlich wird hier JUCE als Git-Submodul hinzugefügt, um die Beispiele zu erstellen.
Klonen Sie zunächst das Repo und rekursieren Sie die Submodule:
$ git clone --recurse-submodules https://github.com/Tracktion/tracktion_engine.git
Beispielprojekte befinden sich in /examples
. Es gibt zwei Hauptbeispielprojekte: DemoRunner
und EngineInPluginDemo
. In jedem dieser Ordner befindet sich eine CMakeLists.txt-Datei, mit der Sie sie erstellen (oder das unten erwähnte build
-Skript ausführen können).
DemoRunner
enthält eine Reihe von App-Beispielen, die verschiedene Engine-Funktionen demonstrieren. EngineInPluginDemo
erstellt ein Plugin, das Tracktion Engine enthält und die Host-Timeline mit der Timeline des Edits synchronisiert.
Darüber hinaus gibt es Benchmark
und TestRunner
-Apps, die von CI zum Testen der Engine-Funktionalität und -Leistung verwendet werden.
Um alle Beispiele für die laufende Plattform zu generieren, verwenden Sie das Skript in /tests
. Dies sind Bash-Skripte. Wenn Sie also Windows verwenden, können Sie die Git Bash
-Shell verwenden, die mit Git geliefert wird, um Folgendes auszuführen.
$ cd tests
$ ./generate_examples
generate_examples
generiert die IDE-Projektdateien für Sie. Alternativ können Sie das build
-Skript ausführen, um auch die Beispiele zu erstellen, die dann ausgeführt werden können.
Sobald die Beispielprojekte generiert oder erstellt wurden, finden Sie sie unter examples/example_name/build
.
Alternativ können Sie cmake im Stammverzeichnis ausführen, wodurch ein Projekt mit den Zielen DemoRunner
, EngineInPluginDemo
, TestRunner
und Benchmark
erstellt wird. Z.B
cmake -G < generator_name > -B build
Sobald Sie bereit sind, in den Code einzutauchen, öffnen Sie die IDE-Dateien und lesen Sie die Tutorials in /tutorials
durch. Sie können diese hier auf GitHub ansehen, um den gerenderten Markdown zu sehen.
Wir sind immer noch dabei, Doxygen-formatierte Kommentare auszuarbeiten, aber die von Doxygen generierte Dokumentation finden Sie hier: https://tracktion.github.io/tracktion_engine/modules.html
Benchmarks sind eigentlich für unseren eigenen internen Gebrauch bestimmt, könnten aber für einige Leute von Interesse sein: https://tracktion.github.io/tracktion_engine/benchmarks.html
Tracktion Engine wird im JUCE-Modulformat bereitgestellt. Für Fehlerberichte und Funktionsanfragen besuchen Sie bitte das JUCE-Forum und posten Sie in der Kategorie „Tracktion Engine“ – die Tracktion Engine-Entwickler sind dort aktiv und werden jeden Beitrag lesen und entsprechend antworten. Aus urheberrechtlichen Gründen akzeptieren wir GitHub-Pull-Anfragen Dritter nicht direkt. Wenn Sie jedoch Änderungen beisteuern möchten, kontaktieren Sie uns bitte.
Tracktion Engine unterliegt einer GPL/kommerziellen Lizenz.
Für Tracktion Engine gibt es mehrere kommerzielle Lizenzstufen mit jeweils unterschiedlichen Bedingungen. Preise finden Sie auf der Tracktion-Entwicklerseite.
Hinweis: Obwohl Tracktion Engine JUCE nutzt, ist es weder Teil von JUCE noch im Besitz desselben Unternehmens. Daher wird es separat lizenziert und Sie müssen sicherstellen, dass Sie über eine entsprechende JUCE-Lizenz von juce.com verfügen, wenn Sie Tracktion Engine-basierte Produkte vertreiben. Ebenso ist Tracktion Engine nicht in einer JUCE-Lizenz enthalten und Sie müssen die oben genannte Tracktion Engine-Lizenz erwerben, um Produkte vertreiben zu können.
Tracktion Engine nutzt und enthält Kopien der folgenden Bibliotheken. Bitte beachten Sie ggf. die Lizenzbedingungen: