Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

GranularSynth

Free granular + FM synthesizer (VST2/VST3) for Windows, 32/64 bit · Granular- und FM-Synthesizer für Windows

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

# GranularSynth

Granular- und FM-Synthesizer als VST2- und VST3-Plugin für Windows (32 und 64 Bit), mit eigenem Test-Host. Geschrieben in Delphi, ohne Plugin-Framework. Die rechenintensiven Teile sind von Hand in SSE-Assembler optimiert, damit die CPU-Last niedrig bleibt.

Granular and FM synthesizer plugin (VST2/VST3, Windows 32/64 bit) with its own test host. English user interface and help from version 2.3 (switch: Extras tab › „Sprache / Language“ or the small flag in the tab row); see README_EN.txt.

Reiter Grain

Ziel

Professioneller Klang auf dem Niveau kommerzieller Digital-Synthesizer. Bei jeder Entscheidung gilt die Reihenfolge:

  1. Klangqualität: saubere Filter (TPT/Zavalishin), bandbegrenzte Oszillatoren (PolyBLEP), Hermite-Interpolation der Grains, 2x-Oversampling für Oszillatoren und Sättigung.
  2. Niedrige Rechenlast: handoptimierte SSE-Kerne, jeder mit Pascal-Referenz im Prüfstand.
  3. Einfache Bedienung: eine klare Oberfläche, Hilfe auf Deutsch und Englisch, Lernpfad.

Goal: professional sound on the level of commercial digital synthesizers. Priorities: 1. sound quality, 2. low CPU load, 3. easy operation.

Was er kann

  • Granular-Synthese aus beliebigen Samples (WAV, MP3 u. a.). Einstellbar sind Auswahl, Position, Spray, Scan, Graingröße, Dichte, Fenster und Rückwärts-Anteil. Dazu kommen ein Anlauf vor der Auswahl, eine Schleife hin und her und bis zu drei Zonen.
  • Drei FM-Oszillatoren mit eigener Hüllkurve, eigenem Filter und Unison, auch mit selbst gezeichneter Welle oder geladener Wavetable (Serum-/Vital-WAV, bis 32 Frames, Position je Note modulierbar). Dazu Sub-Oszillator und Rauschen an Osz 1. Mit HQ rechnen Oszillatoren und Sättigung mit 2x-Oversampling: auch harte FM- und Drive-Klänge bleiben frei von Spiegelfrequenzen.
  • Audio bearbeiten: Sample direkt im Plugin aufnehmen (Mikrofon oder „was der PC abspielt“), vorhören, zuschneiden, löschen, ein-/ausblenden, normalisieren, Stille entfernen, umkehren – Schnitte rasten auf Nulldurchgänge ein.
  • Fenstergröße: 100 bis 200 % für große und hochauflösende Bildschirme.
  • Arp als MIDI: Das Arp-Muster mit dem gespielten Akkord per Maus als MIDI-Datei in eine Spur der DAW ziehen.
  • Feedback-Resampling: Solange eine Taste gehalten wird, wird der eigene Klang Durchlauf für Durchlauf (frei oder im Takt) zur neuen Grain-Quelle – er entwickelt sich, je länger man hält.
  • Modulationsmatrix mit 32 Zeilen, 8 LFOs (auch frei gezeichnet oder als Step-Sequencer mit Gleiten je Stufe), zwei freie Modulations-Hüllkurven, Velocity, Sidechain-Pegel und Sidechain-Tonhöhe. Die Modulation wirkt je Note.
  • Vier freie Makros: Ein Regler bewegt beliebig viele Ziele mit wählbarer Kurve. Die Makros lassen sich in der DAW automatisieren.
  • Effekte: zwei Filter, EQ, Echo, Hall, Gate, Crusher, Chorus, Phaser (Reihenfolge wählbar) und Trance-Gate. Sättigung in vier Arten (Warm, Röhre, Hart, Faltung), 3-Band-Kompressor im OTT-Stil mit Verhältnis, Schwelle, Knick und Kennlinie, Bass mono. Dazu ein Mischpult mit Pegelanzeigen.
  • Sidechain: Tonhöhe erkennen (Auto-Pitch), Trigger aus Pegel und Ton, Aufnahme.
  • Morph: zwischen zwei kompletten Klängen überblenden.
  • Oberfläche auf Deutsch oder Englisch, umschaltbar per Klick auf die Flagge.
  • Bedienung: MIDI-Learn, Rückgängig/Wiederholen, A/B-Vergleich, Variieren, Preset-Kategorien und Favoriten. Presets lassen sich mit eingebetteten Samples speichern.
  • Mitgeliefert: über 160 Presets, darunter ein Lernpfad (L01–L46), der die Matrix und alle neuen Funktionen Schritt für Schritt erklärt. Dazu Beispieltöne und eine ausführliche Hilfe.
  • GranularHost: ein kleiner Test-Host für VST2 und VST3 mit Klaviatur, Autoplay, Audio-Ein- und -Ausgang, Sidechain und einem Prüfstand (-bench).

Alle Reiter

Die Reiter folgen dem Weg des Signals. Klick auf ein Bild zeigt es groß.

Schnell: Makros, Variieren, A/B
Schnell: Makros, Variieren, A/B Grain: Sample, Grains, Hüllkurve
Grain: Sample, Grains, Hüllkurve
Samples: Zonen und Aufnahme
Samples: Zonen und Aufnahme Osz 1-3: FM-Oszillatoren
Osz 1-3: FM-Oszillatoren
Gezeichnete Oszillator-Welle
Gezeichnete Oszillator-Welle Filter 1 + 2 (je Note)
Filter 1 + 2 (je Note)
Modulationsmatrix und freie Makros
Modulationsmatrix und freie Makros LFO 1-8 und Trigger
LFO 1-8 und Trigger
Freier LFO / Step-Sequencer mit Gleiten
Freier LFO / Step-Sequencer mit Gleiten Timing / Modulations-Hüllkurven
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/timing.png
Effekte: Chorus, Phaser, Crusher, Trance-Gate
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/effekte.png Echo / Hall
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/echo_hall.png
Summe: EQ, Kompressor, Sättigung, Stereo, Limiter
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/summe.png Extras: Arpeggiator, Harmonie, Morph
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/extras.png
Mischpult
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/mischpult.png Leistung: Rechenlast, Oversampling
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/leistung.png
Audio bearbeiten: Aufnahme, Vorhören, Schnitt
https://github.com/mtm1978v-debug/GranularSynth/blob/HEAD/docs/screenshots/audio_bearbeiten.png

English interface / englische Oberfläche:

Installation

  1. Lade die aktuelle Version unter Releases herunter und entpacke sie.
  2. Starte Setup.exe. Wähle 64 oder 32 Bit (passend zur DAW), VST2 und/oder VST3 und auf Wunsch den Test-Host.
  3. Lass die DAW neu nach Plugins suchen.

Entfernen lässt sich GranularSynth über Windows-Einstellungen › Apps. Mehr dazu steht in LIESMICH.txt, die Änderungen je Version stehen in CHANGELOG.md.

Selbst bauen

Voraussetzungen:

  • Embarcadero Delphi 12 (RAD Studio 23.0)

  • Graphics32. Den Ordner trägst du in der Umgebungsvariablen GR32_DIR ein, am einfachsten in einer Datei build.local.bat neben build.bat:

    bat
    @set GR32_DIR=C:\Komponenten\Graphics32

    Wer in der Delphi-IDE baut, legt GR32_DIR unter Tools › Optionen › Umgebungsvariablen an.

  • Python 3, nur für die Werkzeuge in Tools/

bat
build.bat Release Win64 Alle
build.bat Release Win32 Alle
bin\Win64\GranularHost.exe -bench
deploy.bat
  • build.bat baut für beide Plattformen.
  • Der Prüfstand -bench schreibt seine Ergebnisse nach bin\<Plattform>\bench.txt.
  • deploy.bat legt die Auslieferung nach Deploy\.

Aufbau, Regeln und Werkzeuge stehen in CLAUDE.md. Diese Datei ist für Entwickler und für KI-Assistenten gedacht.

Mitmachen

Fehlermeldungen und Feature-Wünsche sind willkommen: bitte über Issues mit den Vorlagen dort oder im Forum-Thread auf KVR. Gefällt dir GranularSynth? Eine kurze Bewertung auf KVR Audio hilft anderen, es zu finden. Wenn du Code beitragen möchtest, frag bitte vorher in einem Issue an. Die Regeln stehen in CONTRIBUTING.md.

Lizenz

Copyright © 2026 Matthias Haberecht. GranularSynth ist freie Software unter der GNU General Public License Version 3 oder neuer (siehe LICENSE.txt). Du darfst sie nutzen, weitergeben und verändern. Veränderte Fassungen müssen ebenfalls unter der GPL stehen und auf das Original verweisen.

VST ist eine Marke der Steinberg Media Technologies GmbH. Die VST-Schnittstellen sind hier eigenständig aus der öffentlichen Spezifikation umgesetzt.