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
という 2 つの主要なサンプル プロジェクトがあります。これらの各フォルダーには、ビルド (または後述のbuild
スクリプトの実行) に使用できる CMakeLists.txt ファイルがあります。
DemoRunner
さまざまなエンジン機能を紹介するアプリの例が多数含まれています。 EngineInPluginDemo
Tracktion Engine を含むプラグインを構築し、ホストのタイムラインを編集のタイムラインに同期します。
さらに、エンジンの機能とパフォーマンスをテストするために CI で使用されるTestRunner
アプリのBenchmark
もあります。
実行中のプラットフォームのすべての例を生成するには/tests
内のスクリプトを使用します。これらは bash スクリプトであるため、Windows を使用している場合は、Git に付属のGit Bash
シェルを使用して以下を実行できます。
$ 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 Engine は JUCE モジュール形式で提供されます。バグ レポートや機能リクエストについては、JUCE フォーラムにアクセスし、Tracktion Engine カテゴリを使用して投稿してください。Tracktion Engine 開発者はそこで活動しており、すべての投稿を読み、それに応じて対応します。著作権制限のため、サードパーティの GitHub プル リクエストは直接受け付けていませんが、変更を提供したい場合は、お問い合わせください。
Tracktion Engine は GPL/商用ライセンスの対象となります。
Tracktion Engine には複数の商用ライセンス層があり、それぞれに異なる条件があります。価格については、Tracktion 開発者ページを参照してください。
注: Tracktion Engine は JUCE を利用していますが、JUCE の一部ではなく、同じ会社が所有しているものでもありません。そのため、ライセンスは個別に付与されるため、Tracktion Engine ベースの製品を配布する場合は、juce.com から適切な JUCE ライセンスを取得していることを確認する必要があります。同様に、Tracktion Engine は JUCE ライセンスには含まれていないため、製品を配布するには上記の Tracktion Engine ライセンスを取得する必要があります。
Tracktion Engine は、次のライブラリのコピーを利用し、そのコピーを含みます。必要に応じてライセンス条項を必ず遵守してください。