Ja, auch wenn ich noch total am Anfang bin mit den C++ Tutorials, will ich schon mal so langsam in das JUCE Framework schauen und so langsam die ersten Gehversuche machen. Ich habe vor zwei Jahren schon mal damit angefangen und es wieder verworfen. Es wird Zeit f├╝r einen zweiten Versuch ­čśë

Quelle: juce.com

Was ist JUCE?

JUCE ist ein C++-Application Framework, dass teilweise Open Source ist. Dieses Framework unterst├╝tzt den Programmierer beim Erstellen von Multiplattform-GUI-Anwendungen. JUCE ist in erster Linie f├╝r die Entwicklung im Bereich Audio-Anwendungen (Standalone oder Plugins) bekannt.

Ein wichtiger Bestandteil des Frameworks ist der Projucer. Er ist eine Art IDE, in der man seine Projektart ausw├Ąhlt (GUI-Anwendung, Audio-Plugin, Audio Application, Library, …) und die dann alle n├Âtigen Klassen und Assets f├╝r das jeweilige Projekt zusammenpackt.

Allerdings wird f├╝r die Erstellung der eigenen Anwendungen / Plugins eine f├╝r das Betriebssystem passende Entwicklungsumgebung / ein passender Compiler ben├Âtigt (Visual Studio, XCode, GNU C++,…). Im Grunde ist es auch m├Âglich im Projucer den Quellcode seiner Anwendung zu editieren, aber empfehlenswert ist die Nutzung einer ausgewachsenen IDE.

Was ben├Âtige ich alles?

Zuerst einmal brauchen wir eine Entwicklungsumgebung f├╝r unser Betriebssystem. Ich befinde mich gerade auf einem Windows 10 Rechner, daher lade ich mir die kostenlose IDE Visual Studio 2019 Community von Microsoft herunter.

Visual Studio 2019 Community Edition … „Hello, World!“

Um Visual Studio als Community Edition zu aktivieren ben├Âtigt man ein Microsoft Konto, denn ansonsten bekommt man nur eine 30-Tage-Version der IDE.

Als n├Ąchstes empfehle ich die Installation einer DAW, um unsere Plugins sp├Ąter zu testen. Ich meine JUCE enth├Ąlt zwar einen VST-Host, mit dem man seine Kreationen ausprobieren kann, aber in einer DAW ist das auf jeden Fall netter. Falls man keine Audio Workstation auf seinem System installiert hat, kann man die freie DAW Waveform Free von Tracktion nehmen.

Waveform 11 Free

Ok, jetzt das Wichtigste ├╝berhaupt: Das JUCE Framework. Dazu gehen wir auf juce.com laden uns die aktuelle Version herunter (aktuell Version 5.4). Es gibt ├╝brigens vier verschiedene JUCE Lizenzen, die f├╝r einen Entwickler in Frage kommen:

Die Personal und Education Versionen sind im Grunde dieselben, sie kosten nichts und bei jeder erstellten Anwendung erscheint ein Splash-Logo auf dem „Made with JUCE“ f├╝r ein paar Sekunden nach dem Start der Anwendung eingeblendet wird. Au├čerdem sendet der Projucer Daten zur Analyse an die Server von JUCE …. hmmm, naja ok.

F├╝r professionelle Entwickler gibt es dann die Indie Version, bei der man bis zu 200k Dollars im Jahr mit seinen Anwendungen verdienen darf und die kein Splash-Screen enthalten und auch nicht an JUCE funken. Daf├╝r kostet die Lizenz aber einmalig 700$ oder 35$ pro Monat. F├╝r ganz gro├če Entwickler gibt es dann noch die Pro Lizenz, ohne Einschr├Ąnkungen, f├╝r einmalig 1.300$ oder 65$ pro Monat.

Wir fangen gerade erst an, JUCE zu lernen, daher nehmen wir mal die Personal Version. Der Download besteht aus einer Zip-Datei, die wir am besten irgendwo in unserem Home-Verzeichnis entpacken. Wenn man nun in das Verzeichnis geht, findet man im Hauptordner von JUCE die Projucer Anwendung. Falls man mittlerweile eine IDE auf seinem Betriebssystem installiert hat, kann man den Projucer ja mal starten…

Der Projucer…

Ein ersten „Hello World“ – VST Plugin erstellen

Im Startbildschirm k├Ânnen wir nun eine Projektart w├Ąhlen und wir nehmen nat├╝rlich gleich ein Audio Plug-In! Der Projucer will als n├Ąchsten einen Projektnamen von uns wissen, den Ordner, wo das Ganze gespeichert werden soll und eine IDE, damit er wei├č, f├╝r welche Plattform er das Projekt anzulegen hat. Hier sollte eigentlich schon automatisch Visual Studio 2019 ausgew├Ąhlt sein (wenn man sich auf einem Windows Rechner befindet…).

Ich nenne das Projekt mal passenderweise HelloWorld und lege es in meinem C++ Dev-Ordner ab. Dann klicke ich auf Create… Normalerweise sollte das fehlerfrei funktionieren und ich finde mich im Projektfenster wieder. Ich k├Ânnte hier jetzt auch mit den Quelldateien arbeiten bzw. das Projekt kompilieren, ich gehe aber lieber in meine IDE. Diese erreiche ich ├╝ber den Exporter-Button oben. Das Projekt wird dann gespeichert und die IDE ge├Âffnet.

Jetzt ist das Projekt in Visual Studio ge├Âffnet und ich kann es kompilieren und das Plugin erstellen. Standardm├Ą├čig wird ein VST3- und ein AU-Plugin erstellt und au├čerdem eine Standalone-Anwendung.

Falls man nicht wei├č, wie man Visual Studio bedient, dann sollte man ein kurzes Tutorial anschauen oder hier die Grundlagen nachlesen. Ansonsten geht man einfach auf Erstellen -> Projektmappe erstellen oder dr├╝ckt STRG+SHIFT+B. Nach kurzer Arbeit sollte unten in der Ausgabe stehen:

========== Erstellen: 3 erfolgreich, 0 fehlerhaft, 0 aktuell, 0 ├╝bersprungen ==========

Nett. Jetzt w├Ąre ein guter Zeitpunkt das VST3-Plugin mal in der DAW zu testen. Der Pfad des Plugins ist:

(home)/(juce-dev-verzeichnis)/HelloWorld/Builds/VisualStudio2019/x64/Debug/VST3

Entweder ich kopiere mir das .vst3 Plugin in meinen Standard-Ordner f├╝r VST3 Plugins (da, wo meine DAW es dann auch findet), oder ich gebe diesen Ordner zus├Ątzlich in der DAW an. Ich kopiere das Plugin einfach in meinen VST3-Ordner und starte Waveform Free (├ťbrigens, falls jemand Interesse an Waveform hat und absolut noch keine Ahnung von DAWs … ich fange demn├Ąchst ein ausf├╝hrliches Tutorial zu Waveform Free an).

In der DAW hoffe ich, dass das Plugin gefunden wurde und falls ja, dann ziehe ich es in einen Track… und siehe da „Hello World!“

Ok, das war zwar jetzt noch nichts Dolles, aber zumindest l├Ąuft schon mal alles reibungslos. D.h. das n├Ąchste mal k├Ânnen wir dann etwas tiefer einsteigen…