Sampling, Found Sounds & Sound Design

Kategorie: DIY Seite 4 von 7

Abenteuer Sound Design #06 – Rückkopplungen einer Gitarre erzeugen … ohne Gitarre in Bitwig’s Grid (Guitar Feedback Generator)

Heute bauen wir uns mal ein Instrument, eine Gitarre um genau zu sein. Eine elektrische Gitarre, mit der man aber nur Feedback erzeugen kann … sonst nix. Vor ein paar Monaten habe ich so etwas mal auf YouTube entdeckt und heute baue ich das mal in Bitwig’s Grid nach. Das ist recht simpel, versprochen.

Wenn es eine Band gibt, die mich seit Ende der 80er begleitet, dann ist es Sonic Youth. Leider habe die sich um 2010 aufgelöst. Ein wichtiger Bestandteil der Musik von Sonic Youth ist Gitarren Feedback.

Da mich diese Band stark beeinflusst hat, nutze auch ich „Gitarrenkrach“ in eigenen Songs. Beim Recorden zuhause ist es aber nicht immer ganz einfach, eine Gitarre richtig schön zum Kreischen zu bringen … man wohnt hier ja nicht komplett alleine auf dem Land. Also muss eine praktischere Lösung her.

Audio Programmierung #06 – C++ Grundlagen: Die Kontrolle des Programmablaufs (switch-case)

Das Ziel eines switch-case Konstrukts ist es, einen Ausdruck gegen eine größere Auswahl von Konstanten zu vergleichen und dann dementsprechend für jede Möglichkeit etwas anderes auszuführen. Die C++ Schlüsselwörter, die wir in diesem Zusammenhang oft sehen werden, sind switch, case, default und break.

Die allgemeine Syntax sieht so aus:

switch(expression) {

    case LabelA:
        DoSomething;
        break;

    case LabelB:
        DoSomethigElse;
        break;

    // and so on ...
    default:
        DoStuffWhenExpressionIsNotHandledAbove;
        break;
}
    

VST-Plugin Programmierung #03 – Die JUCE GUI Anwendung mit Leben füllen…

Das letzte mal haben wir uns eine minimale GUI Anwendung geschrieben, die zunächst ein einfaches Fenster darstellt. Wir haben etwas mit einigen Einstellungen herumgespielt, aber mehr auch nicht. Heute wollen wir diese Anwendung einmal mit Inhalt füllen.

Auch hier möchte ich mich wieder an den offiziellen JUCE Tutorials orientieren und nenne unser heutiges JUCE-Projekt MainComponentTutorial. Also starte ich wieder den Projucer, erstelle eine GUI Applikation, benenne mein Projekt und lasse wieder nur die Main.cpp generieren (create a Main.cpp only) und öffne meine IDE (Visual Studio).

Genau wie das letzte mal erstelle ich mir zunächst eine MainWindow Klasse und fülle die initialise() und shutdown() Methode mit Leben. So dass meine Main.cpp jetzt so aussieht:

VST-Plugin Programmierung #02 – Eine grundlegende JUCE GUI Anwendung (Application window)

In der Regel verfügen Audio-Plugins – egal ob Effekt oder Instrument – über eine grafische Benutzeroberfläche (GUI). Aus diesem Grund wollen wir heute mal damit anfangen, eine minimale Anwendung in einem Fenster zu generieren und ein wenig das Aussehen unserer App ändern. Diese Einführung ist an den offiziellen Tutorials der JUCE Website angelehnt, daher nutze ich die gleichen Namen für die Projekte.

Wir starten zunächst mal den Projucer und wählen die Option GUI Application. Das Projekt nennen wie MainWindowTutorial. Oben rechts im Projucer kann ich an dieser Stelle auswählen, welche Quellcode-Dateien erzeugt werden sollen. Hier wählen wir „Create a main.cpp file only„.

Audio Programmierung #04 – C++ Grundlagen: Anweisungen, Ausdrücke und Operatoren…

Im Grunde ist ein Programm, sei es in C++ geschrieben oder in einer anderen Programmiersprache, nichts anderes als Kommandos, die nacheinander abgearbeitet werden. Diese Kommandos bestehen aus Ausdrücken und Anweisungen und nutzen Operatoren um bestimmte Berechnungen oder andere Aktionen auszuführen.

Anweisungen

Die erste wichtige Anweisung, die wir gelernt haben:

cout << "Hello World!"  << endl;

Eine Anweisung mit cout gibt Text im Terminal auf dem Bildschirm aus. In C++ enden alle Anweisungen mit einem Semikolon (;). Das Semikolon markiert die Grenze oder das Ende einer Anweisung, vergleichbar mit dem Punkt (.) in der deutschen Sprache. Die nächste Anweisung könnte direkt hinter dem Semikolon beginnen, aber aus Gründen der Übersichtlichkeit ist es ratsamer eine neue Anweisung auch in einer neuen Zeile zu beginnen.

Abenteuer Sound Design #04 – Claps mit Bitwig’s Grid und Found Sounds

Kick, Snare, Hihat … heute kommen dann wohl die obligatorischen Claps dran. Claps sind ja einfach zwei Hände, die zusammengeklatscht werden 🙂 Da werden wir uns wohl auch noch eine gesampelte Version ansehen, denn nichts ist einfacher als ein Händeklatschen aufzunehmen.

Für die Synthesizer-Version würde ich mich an die klassischen 808-Claps anlehnen, diese sind nämlich recht raffiniert umgesetzt. Die Wellenform zeigt, dass es sich um fünf klatschende Hände handelt, die alle etwas zeitversetzt tönen. D.h. man könnte 5 mal Noise nehmen und die Hüllkurven alle etwas im Attack versetzen und das letzte Klatschen etwas länger ausklingen lassen.

D.h. wir benötigen 5 Noise Generatoren und 5 ADSR Envelope Generatoren. Diese werden an einen Mixer angeschlossen und dieser an ein Audio-Out Modul. Das Sustain des ADSR drehe ich bei allen Hüllkurven auf 0ms, das Attack zunächst auch auf 0ms und das Decay so ungefähr auf 30-40ms. Das Decay der letzten Hüllkurve stelle ich aber auf ca. 200ms.

5 Claps …

Klevgränd’s Ting macht die kleinen Dinge zu einem wunderbaren Percussion Instrument … und mir stellt sich die Frage, ob man das nicht auch selbst machen kann?

Klevgränd hat wieder ein neues Instrument raus gebracht. Einen Sample-Player, mit 12 gesampleten Sounds von Dingen, die eigentlich fast jeder zuhause rumliegen hat. Natürlich ist das GUI der Schweden wieder herzallerliebst und die Sounds klingen super.

Unter den einzelnen Samples finden wir u.a. Autoschlüssel, Besteck, eine Tasse, ein geschlagenes Sofa, Papier und ein paar Körperteile. Dazu gibt es einen einfachen Equalizer, Hall und einen Kompressor. Zusätzlich lässt sich bei jedem einzelnen Instrument das Panning, die Lautstärke, Dynamiken, Reverb (mehrere Rooms und einen einige algorithmische Reverbs), sowie die Tonhöhe individuell einstellen.

VST-Plugin Programmierung #01 – JUCE installieren und „Hello Word“ – Plugin generieren…

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.

Abenteuer Sound Design #03 – HiHat mit Bitwig’s Grid

Nach Kick Drum und Snare kommt natürlich ein HiHat an die Reihe. Ich benutze wieder Bitwig’s Grid hierfür. Normalerweise könnten wir das HiHat in wenigen Zeilen abfrühstücken, denn wenn man ganz schnell den typischen Sound eines typischen 808 HiHats generieren möchte, nimmt man sich einen Noise-Generator, einen ADSR und schon wäre man fast fertig. Der typische HiHat Sound einer 808 Drum Machine ist einfach nur Noise.

Typische HiHat (Quelle: keymusic.com)

Aber wir machen uns das nicht ganz so einfach. Mithilfe der Frequenzmodulation und 3 oder mehreren Sinuswellen-Oszillatoren läßt sich auch ein nettes Ergebnis erzielen, mit dem man den Klang noch etwas mehr variieren kann.

Max/MSP – Ich habe Max wiederentdeckt und mich erneut verknallt.

Ich hab vor zwei Jahren schon mal etwas mit Max For Live herumprobiert und dann wieder links liegen gelassen … wie so oft. Jetzt, wo ich seit ein paar Wochen wieder Hals über Kopf in die Programmierung eingestiegen bin (C++, Csound, Python) und ich nicht genug davon kriegen kann, habe ich mir überlegt mich nochmal mit Max anzufreunden. Ich fand Pure Data schon spannend, aber das läuft bei mir unter Win und MacOS so unstabil, dass es einfach keine Freude macht damit zu arbeiten.

Ich habe ein paar Artikel und Videos über Max gelesen und gesehen … und bin begeistert. Besonders die Möglichkeiten mit gen~ gehen mir nicht mehr aus dem Kopf. Ja, kann sein, dass ich im Moment zu viele Baustellen offen habe, aber die 30tägige Testversion von Cycling74 kommt mir gerade recht. 😀 Außerdem gibt es ein Subscription Modell für unter 10 Euro im Monat.

Quelle: cycling74.com

Was ist Max und was bedeutet MSP?

Max ist eine Programmierumgebung, in der man verschiedene Objekte mit eine Art Patchkabel verbindet. Jedes dieser Objekte hat eine andere Aufgabe, vergleichbar mit Funktionen in herkömmlichen Programmiersprachen. Der Name Max soll an Max Mathews (Entwickler der Audio-Programmiersprache MUSIC) erinnern. Max wurde für die Echtzeitkontrolle von Midi-Daten entwickelt, kann aber auch einfach Zahlen und Zeichen verarbeiten.

Seite 4 von 7

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