Sampling, Recording, Programmierung & Software

Kategorie: C++

Tracktion Engine – Eine Open Source Engine zum Entwickeln von Musik- und Audio-Tools

Erst vor Kurzem hat Tracktion die komplette DAW T7 für den freien, uneingeschränkten Download freigegeben und jetzt gleich die nächste Überraschung: Die Tracktion Engine wird Open Source und kann frei verwendet werden, wenn man eigene Musik-Tools bauen will.

Das Lizenzmodell funktioniert ähnlich wie das des JUCE-Frameworks. Wenn man mit seinen Tools nicht mehr als 50.000 Dollar im Jahr verdienen will, kann man den kompletten Code umsonst einsetzen.  Falls man doch etwas größer in das Software Geschäft einsteigen will, gibt es verschiedene Modelle, bei denen man monatlich bezahlen muss.

Die komplette Engine ist als JUCE-Modul verfügbar. Somit kann man Teile der Engine auch in seinen bisherigen JUCE-Projekten verwenden.

Die Tracktion Engine unterstützt einen Haufen Plattformen (Mac, Linux, Win, Android, iOS, Raspberry Pi). Hier die Links zur offiziellen Tracktion Developer Website und zur GitHub Page:

Tracktion Engine

Tracktion Engine (GitHub)

Eine astreine Leseliste für alle ambitionierten Sound-Tüftler und Audio-Programmierer

Liest heute noch jemand? Ja, ich denke und hoffe schon. Auch wenn es wirklich gute Videotutorials – entweder auf YouTube oder auch auf Seiten von Bezahlanbietern – gibt, kann das alles kein gutes Lehrbuch ersetzen. An dieser Stelle wollte ich mal kurz ein paar Büchertipps geben und eine Handvoll Titel aufzählen, die mir wirklich weiter geholfen haben bzw. auch aktuell noch helfen.

Ein gutes Buch hilft beim konzentrierten Lernen

VST-Entwicklung mit JUCE – Mehr zum Projucer

Das letzte mal habe ich anhand eines ersten „leeren“ VST-Plugin Projektes den Projucer kurz vorgestellt. Wie man ein neues Projekt anlegt, die JUCE Module einbindet und für seine Plattform und IDE der Wahl diese Projekte exportiert. Heute will ich etwas näher auf den Projucer eingehen. Dieser Beitrag ist an das englische Tutorial zu diesem Thema auf den JUCE Seiten angelehnt.

Wenn man sich die Dateien eines Projucer Projektes etwas genauer ansieht, dann findet man folgende Struktur:

Die Ordnerstruktur eines Projucer Projektes.

VST-Entwicklung mit JUCE – Wer ist der Projucer?

Mittlerweile ist JUCE in Version 5.2 und der Download zu dem Framework befindet sich hier. Auf den Download-Seiten muss man sich für eine Lizenz entscheiden und für den Einsteiger wird es sicherlich die Personal- oder die Education-License sein, denn diese sind kostenlos. Bedingung: Die entwickelte Software muss als Open Source veröffentlicht werden (wenn sie denn veröffentlicht wird) und man darf nicht mehr als 50k US-Dollar im Jahr damit verdienen.

Nachdem man das Paket heruntergeladen hat, sollte man es in einem Ordner im Home-Verzeichnis entpacken. Bei mir gibt es dafür den Ordner vst-development, darin befindet sich dann der Unterordner JUCE. Die Ordnerstruktur bleibt selbstverständlich jedem selbst überlassen. In dem JUCE Ordner befindet sich die ausführbare Datei Projucer. Beim Starten dieser Datei öffnet sich der Projucer und bietet verschiedene Optionen für ein neues oder altes Projekt.

Der Projucer bietet für jede Anwendung ein Projekt-Template.

VST-Plugins selbst programmiert…

UPDATE: Ich habe die Serie hier neu gestartet, da ich 2018 irgendwann damit aufgehört habe. Die neuen Tutorials habe ich im April 2020 gestartet…

Wenn man sich jahrelang mit Musiksoftware beschäftigt, nebenbei ein Informatikstudium am Laufen hat und dann auch noch etwas mit C++ in VCVRack herumgespielt hat, kommt man irgendwann schon auf den Gedanken, selber ein Effekt- oder Instrument zu programmieren.

Die Sprache der Wahl ist definitiv C++. Eigentlich habe ich mich die letzten zwei Jahre recht intensiv mit Java beschäftigt. Allerdings ist Performance einer der wichtigsten Faktoren, wenn wir von Realtime-Audio-Anwendungen sprechen. C bzw. C++ ist in diesem Bereich unschlagbar. Wenn man schon etwas Erfahrung in objektorientierter Programmierung mitbringt, fällt der Einstieg in C++ auch etwas leichter.

Für Realtime Audio-Anwendungen ist C++ die Sprache der Wahl

Seite 3 von 3

Präsentiert von WordPress & Theme erstellt von Anders Norén