Tracktion Engine 的目标是提供高级数据模型和类集,用于构建基于序列的音频应用程序。您可以构建任何东西,从简单的文件播放器或音序器到完整的 DAW。
查看功能文档以了解全部功能。
NB Tracktion 引擎需要 C++20
Tracktion Engine 作为JUCE module
提供,因此可以轻松融入现有的 JUCE 应用程序。您将在modules/tracktion_engine
下找到模块代码。此外,为了构建示例,JUCE 被添加为 Git 子模块。
首先,克隆存储库并递归子模块:
$ git clone --recurse-submodules https://github.com/Tracktion/tracktion_engine.git
示例项目位于/examples
中。有两个主要示例项目: DemoRunner
和EngineInPluginDemo
。每个文件夹中都有一个 CMakeLists.txt 文件,您可以使用它来构建它们(或运行下面提到的build
脚本)。
DemoRunner
包含许多展示各种引擎功能的应用程序示例。 EngineInPluginDemo
构建了一个包含 Tracktion Engine 的插件,并将主机时间线同步到编辑时间线。
此外,还有 CI 使用的Benchmark
TestRunner
应用程序来测试引擎的功能和性能。
要生成运行平台的所有示例,请使用/tests
中的脚本。这些是 bash 脚本,因此如果您使用的是 Windows,则可以使用 Git 附带的Git Bash
shell 来运行以下命令。
$ cd tests
$ ./generate_examples
generate_examples
将为您生成 IDE 项目文件。或者,您也可以运行build
脚本来构建示例,准备运行。
生成或构建示例项目后,您可以在examples/example_name/build
中找到它们。
或者,您可以在根目录中运行 cmake,这将创建一个包含DemoRunner
、 EngineInPluginDemo
、 TestRunner
和Benchmark
目标的项目。例如
cmake -G < generator_name > -B build
一旦您准备好深入研究代码,请打开 IDE 文件并阅读/tutorials
中的教程。您可以在 GitHub 上查看这些内容以查看渲染的 Markdown。
我们仍在充实 Doxygen 格式的注释,但 Doxygen 生成的文档可以在这里找到:https://tracktion.github.io/tracktion_engine/modules.html
基准确实供我们自己内部使用,但某些人可能会感兴趣:https://tracktion.github.io/tracktion_engine/benchmarks.html
Tracktion 引擎以 JUCE 模块格式提供,对于错误报告和功能请求,请访问 JUCE 论坛并使用 Tracktion 引擎类别发帖 - Tracktion 引擎开发人员在那里很活跃,并将阅读每篇帖子并做出相应回应。由于版权限制,我们不直接接受第三方 GitHub 拉取请求,但如果您想贡献任何更改,请联系我们。
Tracktion Engine 受 GPL/商业许可证保护。
Tracktion Engine 有多个商业许可级别,每个级别都有不同的条款。有关价格,请参阅 Tracktion 开发者页面。
注意:虽然 Tracktion Engine 使用 JUCE,但它不是 JUCE 的一部分,也不属于同一家公司所有。因此,它是单独许可的,并且在分发基于 Tracktion Engine 的产品时,您必须确保您拥有 juce.com 的适当 JUCE 许可证。同样,Tracktion Engine 不包含在 JUCE 许可证中,您必须获得上述 Tracktion Engine 许可证才能分发产品。
Tracktion 引擎利用并包含以下库的副本。请确保您在必要时遵守许可条款: