The aim of Tracktion Engine is to provide a high level data model and set of classes for building sequence based audio applications. You can build anything from a simple file-player or sequencer to a full blown DAW.
- macOS
- Windows
- Linux
- Raspberry PI
- iOS
- Android
Tracktion Engine is supplied as a JUCE module
so it can easily fit in to an existing JUCE application. You'll find the module code under modules/tracktion_engine
. Additionally, JUCE is added as a Git Submodule here in order to build the examples.
To start with, clone the repo and recurse the submodules:
$ git clone --recurse-submodules https://github.com/Tracktion/tracktion_engine.git
Example projects are located in /examples
. Because these are provided as JUCE PIPs, the Projucer
needs to be built to generate the projects. This can be easily done with the scripts contained in /tests
.
$ cd tests/mac
$ ./generate_examples
generate_examples
will build the Projucer and generate the project files for you. Alternatively you can run the build_examples
script to build the examples as well, ready to run.
Once the example projects have been generated or built you can find them in examples/projects
.
Start with the PitchAndTimeDemo
or StepSequencerDemo
to see some basic apps in action.
Once you're ready to dive in to the code, open the IDE files and have a read through the tutorials in /tutorials
. You can view these on GitHub here to see the rendered Markdown.
Tracktion Engine is covered by a GPL/Commercial license.
There are multiple commercial licensing tiers for Tracktion Engine, with different terms for each. For prices, see the Tracktion Developers Page.