Kategorie: Programmierung

Max For Live – Ein eigener Sampler: 03 Ich spiele mein Sample mit dem Midi-Controller…

Zumindest konnte man im letzten Beitrag schon etwas hören … aber eigentlich will ich ja nicht ständig mit der Maus auf einen Button klicken, um das zu erreichen. Nein, ich will meinen Sampler mit dem Midi-Controller bedienen!

Im ersten Artikel habe ich mithilfe eines midiin Objekts und einigen anderen Objekten meine Tonhöhe und die Anschlagstärke ermittelt. Das will ich an dieser Stelle nochmal ändern. Ich habe nämlich Probleme den Note-Off Wert auszufiltern und mein Sample würde immer zweimal getriggert werden: Nämlich wenn ich die Taste drücke und wenn ich sie wieder loslasse.

Etwas aufgeräumter…

weiterlesen

Max For Live – Ein eigener Sampler: 02 Man bekommt etwas zu hören!

Im letzten Teil haben wir ganz langsam angefangen und zunächst einmal versucht unserem Patch mitzuteilen, welche Tasten ich auf meinem Midi-Keyboard drücke. Mithilfe des print Objekts haben wir sichtbar gemacht, welche Note ich spiele und wie stark ich diese anschlage.

Einmal Pitch und einmal Velocity…

Heute will ich endlich mal ein Audiofile laden und dieses auch abspielen können. Max kennt eine schier unendliche Zahl an Objekten und auch gibt es verschiedene Möglichkeiten eine Audiodatei zu importieren und diese dann wiederzugeben. Ich entscheide mich zunächst für das buffer~ Objekt. buffer~ ist quasi ein kleiner Bereich im RAM, den ich mit Audiomaterial füllen kann.

weiterlesen

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

weiterlesen

Max For Live – Ein eigener Sampler: 01 Von Noten und Anschlagstärke

Ziel dieser Reihe ist es einen eigenen Sampler mithilfe der visuellen Programmiersprache Max umzusetzen. Nach und nach will ich die einzelnen Komponenten entwickeln und ein vollwertiges Instrument für Ableton Live bauen, auch wenn diese DAW in Sachen Sampler mehr als ausreichend ausgestattet ist. Es geht hier ja in erster Linie auch um den Lerneffekt. Im Anschluss ist dann geplant dieses Projekt in C++/JUCE umzusetzen, was vom Umfang her etwas mehr Arbeit sein wird.

Was ist ein Sampler?

Per Definition ist ein Sampler ein Synthesizer, der Töne in unterschiedlicher Länge aufzeichnen kann und diese dann in verschiedensten Tonhöhen mithilfe einer Piano-Tastatur wiedergeben kann. Bei dieser Definition will ich es zunächst einmal belassen. Die Feinheiten folgen dann in späteren Artikeln.

Die bekanntesten Software Sampler sind sicherlich Kontakt von Native Instruments, Motu’s MachFive, Falcon von UVI oder der Halion von Steinberg. Aber auch jede DAW hat mittlerweile fast immer einen Sampler mit an Bord, manchmal – wie in Renoise – bildet dieser sogar den Mittelpunkt der Workstation.

Die Möglichkeiten in Kontakt sind … vielfach!

weiterlesen

Max For Live – Sound Synthese und Sound Verarbeitung, sowie ein Rundgang durch den Editor

Der Computer hat die Welt der Fotografie, Musik, Film oder beispielsweise auch  Kommunikation von einer analogen in eine digitale Welt aus Nullen und Einsen verwandelt. Ein Computer kann Zahlen gut verarbeiten, vor allen Dingen sehr schnell. Ich will mich hier heute aber nur um zwei Themen der digitalen Musikwelt beschäftigen. Zum einen mit der Sound-Synthese, d.h. mit der Erstellung von Klängen im Computer und zum anderen mit der Sound-Verarbeitung, also dem Verändern von Sound.

Der Arturia Arp 2600 ist ein typischer Synthesizer mit eingebauter Sound Verarbeitung

weiterlesen

Max For Live – Eine Einführung

Ableton Live gehörte bereits seit den frühesten Versionen zu den beliebtesten DAWs überhaupt – nicht ohne Grund. Anhand der aufgeräumten Oberfläche und für manche auch aufgrund des eigenwilligen GUI, wird dem Benutzer die eigentliche Komplexität der Audio Workstation verborgen. Des Weiteren ist Live für den Einsatz auf der Bühne ebenso geeignet, wie für das Studio oder auch für den Heimproduzenten. Und wenn das Hauptaugenmerk eventuell auf den Interessen des elektronischen Musikers liegt, kann auch die traditionelle Band ihre Songs in Ableton Live hervorragend produzieren.

Ableton Live 10 unterstützt jede musikalisch-kreative Spinnerei… (Quelle: ableton.com)

Auch wenn der Umfang der Ableton Suite (quasi die Deluxe Version) und vergleichbaren DAWs ohne Frage enorm ist, hat Live noch ein besonderes Schmankerl unter der Haube: Max For Live. Wer mit den vorhandenen Effekten und Instrumenten nicht wirklich das Umsetzen kann, was ihm vorschwebt, der baut sich halt einfach selbst seine digitalen Spielzeuge oder steuert das Verhalten von Live mithilfe von Max For Live.

weiterlesen

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.

weiterlesen

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.

weiterlesen

VST-Plugins selbst programmiert…

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

weiterlesen

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