عن المشروع
محرك Tracktion هو وحدة من JUCE توفر نموذج بيانات عالي المستوى ومجموعة من الفئات لبناء تطبيقات صوتية قائمة على التسلسل. وفقًا لملف README، يمكن استخدامه لبناء أي شيء بدءًا من مشغل ملفات بسيط أو أداة تسلسل وصولاً إلى برنامج DAW كامل. توثق قائمة ميزات منفصلة في ملف FEATURES.md النطاق الكامل للميزات.
الأنظمة الأساسية المدعومة هي macOS وWindows وLinux وRaspberry Pi وiOS وAndroid. يتطلب المشروع C++20.
البدء: يقع رمز الوحدة تحت modules/tracktion_engine، ويتم تضمين JUCE كوحدة فرعية من Git لبناء الأمثلة. يقترح ملف README الاستنساخ باستخدام --recurse-submodules.
توجد الأمثلة في /examples، مع مشروعين رئيسيين: DemoRunner، الذي يعرض وظائف المحرك المختلفة، وEngineInPluginDemo، الذي يبني مكونًا إضافيًا يحتوي على محرك Tracktion ويقوم بمزامنة الخط الزمني للمضيف مع الخط الزمني للتحرير. هناك أيضًا تطبيقا Benchmark وTestRunner يستخدمان بواسطة CI لاختبار الوظائف والأداء. يمكن للنصوص البرمجية Bash في /tests (generate_examples وbuild) إنشاء ملفات مشروع IDE أو بناء الأمثلة؛ يمكن أيضًا تشغيل CMake في الدليل الجذر لإنشاء أهداف لـ DemoRunner وEngineInPluginDemo وTestRunner وBenchmark.
تُقدم البرامج التعليمية في /tutorials كـ Markdown معروض. تتوفر الوثائق المولدة بواسطة Doxygen على tracktion.github.io/tracktion_engine/modules.html، والمعايير على tracktion.github.io/tracktion_engine/benchmarks.html.
المساهمة: تُوجه تقارير الأخطاء وطلبات الميزات إلى فئة محرك Tracktion في منتدى JUCE. يذكر ملف README أن طلبات السحب من GitHub من جهات خارجية لا تُقبل مباشرة بسبب قيود حقوق النشر، ولكن يُطلب من المساهمين المهتمين التواصل.
الترخيص: يخضع محرك Tracktion لترخيص GPL/تجاري، مع عدة مستويات تجارية. يلاحظ ملف README أنه على الرغم من استخدامه لـ JUCE، إلا أنه ليس جزءًا من JUCE ولا مملوكًا لنفس الشركة، ويُرخَّص بشكل منفصل، وأن ترخيص JUCE مطلوب أيضًا عند توزيع المنتجات المبنية عليه. كما يسرد مكتبات الطرف الثالث المضمنة وتراخيصها، بما في ذلك rpmalloc وmoodycamel::ConcurrentQueue وchoc وcrill وexpected وlibsamplerate وrigtorp/MPMCQueue وmagic_enum وfarbot وdoctest وsignalsmith-stretch.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.