Audio-Crossover

VST-Audio-Plugins in Linux Abspielen

01.06.2005
Professionelles digitales Audio war früher die Domäne proprietärer Systeme, Linux hat aber mittlerweile aufgeholt. Heute lassen sich sogar Windows-spezifische VST-Plugins im Linux-Studio verwenden – wenn auch nicht ganz ohne Umstände.

Praktisch ist es, wenn sich Software durch kleine Zusatzprogramme erweitern lässt. Nur wenn man sie gerade braucht, lädt man sie in das laufende Programm, steckt sie also während des Betriebs ein – deshalb heißen sie Plugins. Auch in der Welt digitaler Audio-Software existieren solche kleinen Helfer. Sie realisieren zum Beispiel Spezialeffekte wie ein Reverb. Ein Plugin kann auch ein MIDI-Instrument wie einen polyphoner General-MIDI-Synthesizer realisieren, oder ein Interface für einen MIDI-Sequencer.

In der Musikwelt der Windows- und Macintosh-Systeme hat sich für Plugins das VST-API der Firma Steinberg als Standardinterface etabliert. Die erste Version wurde in den späten 90ern veröffentlicht; der aktuelle VST2-Standard erschien 1999. Die Linux-Welt kennt zwar eigene Audio-Plugin-APIs wie das recht verbreitete LADSPA [2], siehe den Kasten "LADSPA und Freunde". Die schiere Menge an Audio-Plugins, die über das VST-API zur Verfügung stehen, lässt jedoch auch Benutzer nach der Windows-Technologie schielen. Dieser Artikel verrät, wie Sie Ihr Linux-System konfigurieren, um die riesige Sammlung von VST-Audio-Plugins zu unterstützen.

Instrumente als VST

Das VSTi-API erweitert die VST-Plugin-Definition, sodass das ein Plugin auch ein Instrument sein kann, also ein Synthesizer, Sampler oder Sequencer. Wie beim VST-API haben sich auch VSTi-Plugins zu Standardkomponenten der Win/Mac-Sound- und Musiksoftware entwickelt. Abbildung 1 zeigt als typisches VSTi-Instrument einen über MIDI gespielten Softwaresynthesizer. Dabei lassen sich seine Parameter in Echtzeit steuern (manuell oder per MIDI), teilweise sogar mit Mehrkanalausgabe.

Abbildung 1: Der virtuelle Synthesizer Crystal VSTi, über ein externes Keyboard gespielt.

Eine Lösung dafür, VST/VSTi-Plugins unter Linux einzusetzen, wurde ursprünglich von Kjetil Matheussen bei NOTAM [3], einem norwegischen Akustik- und Musikforschungscenter, entwickelt. Seine Bemühungen führten zum Vstserver, einer Client/Server-Architektur, die VST-Plugins ausführen kann. Der Vstserver greift auf die Fähigkeiten der Wine-Bibliothek zurück, um die Windows-DLL-Dateien zu benutzen. Kjetil hat außerdem zwei Clients für den Einsatz mit dem Vstserver programmiert: ein Objekt für die Synthese/Kompositionsumgebung Pd sowie ein LADSPA-Plugin, das als Host für VST-Plugins in Erscheinung tritt. Vor kurzem fügte er der Sammlung noch den VSTi-Client hinzu, der den Einsatz von VST-Instrument-Plugins unterstützt.

Nicht ohne meinen Compiler

Leider gibt es keine fertigen Pakete mit aktuellen Versionen des Vstserver. Zudem ist die Installation nicht ganz trivial, da sie stark von der verwendeten Wine-Version abhängt. Sie sollten deshalb die modifizierten Wine-Quellen des Vstserver-Autors verwenden. Um Vstserver auf Ihrem System zu installieren, absolvieren Sie die folgenden Schritte:

  • Installieren Sie das neueste Wine-Paket vstserver-wine-tar.bz2 von Kjetil, das Sie wie die anderen nötigen Pakete unter [4] finden.
  • Kompilieren und installieren Sie auch die neusten vstserver-, k_vst~-, ladspavst- und vsti-Pakete. Setzen Sie vor dem make install die Umgebungsvariable VST_PATH auf das Verzeichnis, das die VST-Plugins enthält.
  • Starten Sie den Server im Quellverzeichnis.
  • Starten Sie einen Client. Sie brauchen für k_vst~ das Programm Pd sowie einen passenden Host (wie beispielsweise Kjetils Version des Snd-Soundfile-Editors), wenn Sie das LADSPA-VST-Host-Plugin verwenden wollen. Der VSTI-Client ist ein Standalone-Programm.

Entgegen vielen Anleitungen benötigen Sie das offizielle VST-SDK von Steinberg bei der aktuellen Vstserver-Version nicht mehr. Es enthält bereits die beiden erforderlichen Header-Dateien. Sollte sich das bei zukünfigten Versionen mal wieder ändern, finden Sie das SDK unter [5].

LADSPA und Freunde

Anfang 2000 stellte der Entwickler Richard W. E. Furse einen ersten Entwurf für ein einfaches Linux-Audio-Plugin-API vor. Nach vielen Diskussionen auf der Linux-Audio-Developers-Mailingliste entstand schließlich LADSPA, das Linux Audio Developers Simple Plugin API [1].

Das Wort Simple ist dabei wörtlich zu nehmen: Die Plugins verzichten im Gegensatz zu vielen VST-Plugins auf komplexe Interaktionen mit dem Host. Allerdings bedeutet simpel auf keinen Fall schwach – tatsächlich gibt es viele hervorragende und leistungsfähige LADSPA-Plugins.

Die Einfachheit von LADSPA ist teilweise im Umgang mit der GUI begründet: Sie wird einfach ignoriert. Das GUI-Toolkit des Hosts muss eben eine Grundausstattung an Elementen mitbringen, wobei das Layout dem GUI-Programmierer überlassen wird. Im Gegensatz zur VST-Welt sehen LADSPA-Plugins oft ganz anders aus, wenn sie in unterschiedlichen Anwendungen ausgeführt werden, obwohl die Bedienung und Funktionen gleich bleiben sollten. Weil LADSPA keine GUI-Richtlinien kennt, ermöglicht es auch nicht-grafische Plugins.

Das API wurde von Entwicklern begeistert aufgenommen, und in den letzten vier Jahren hat sich der LADSPA-Support zu einer Selbstverständlichkeit für Linux-Musik- und Soundtools entwickelt. Unter den LADSPA-kompatiblen Anwendungen finden sich Festplatten-Recording-Systeme, digitale Audioprozessoren, Audio/MIDI-Sequencer, Software-Synthesizer, Soundfile-Editoren und Multimedia-Player.

Das Echtzeitverhalten der LADSPA-Plugins ist in der Regel hervorragend, eine ensprechende niedrige Latenz des Kernels sowie des ALSA- oder JACK-Systems vorausgesetzt. Das API selbst hat seit der Version 1.0 einige wesentliche Änderungen erfahren. Eine wichtige Erweiterung ist der Support für das Resource Description Framework (RDF) [6], einen XML-Dialekt, der in diesem Fall die Organisation von Plugins und die Einstellung der Parameter vereinheitlicht. Abbildung 2 zeigt die auf RDF basierende LADSPA-Plugin-Liste im Hydrogen-Drumcomputer.

Abbildung 2: Hydrogen listet LADSPA-Plugins.

Wenn Ihre Linux-Distribution für Linux-Audio optimiert wurde, ist LADSPA auf dem System bereits installiert und konfiguriert. Wer es selbst kompilieren muss oder will, kann aufatmen: LADSPA bleibt auch hier dem Prinzip der Einfachheit treu.

Downloaden Sie das Tar-Archiv mit dem Quellcode von http://www.ladspa.org, packen Sie es in Ihrem Home-Verzeichnis aus und wechseln Sie in das neue ladspa_sdk-Verzeichnis und dann in src. Editieren Sie das Makefile und führen Sie make aus, um das SDK zu erstellen. Werden Sie root und geben Sie make install ein. Anschließend können Sie LADSPA-Plugins installieren und benutzen.

Eine Sammlung von LADSPA-Plugins finden Sie unter http://linux-sound.org/ladspa.html. Sie sollten sich die Sammlung von Steve Harris anschauen, oder auch Tom Szilagyis TAP-Set, Fons Adriaensens exzellente Filter sowie die Sammlungen von Tim Goetze und Mike Rawes – probieren Sie einfach alle aus.

Abbildung 3 zeigt den TAP-Reverberator, im Audacity-Soundfile-Editor geöffnet und auf eine Sound-Datei angewandt.

Abbildung 3: TAP-Reverb unter Audacity.

Linux unterstützt noch ein paar andere Audio-Plugin-APIs. David Olofsons Multimedia Applications Integration Architecture (MAIA) war ein Versuch, die Mängel von LADSPA zu korrigieren. MAIA wurde als allgemeingültiges Multiplattform-API ausgelegt, wobei der Schwerpunkt auf Unix-Systemen liegt. Leider hat das MAIA-API die Entwickler nicht begeistern können, sodass das Projekt seit Anfang 2001 kaum Fortschritte gemacht hat.

Der neueste Kandidat in der Linux-Plugin-Arena stammt von den Entwicklern Chris Cannam (Rosegarden), Steve Harris (SWH-LADSPA-Plugins) und Sean Bolton. Ihr Disposable Soft Synth Interface (DSSI) ist als "LADSPA für Instrumente" konzipiert, wie Sie auf der DSSI-Website erfahren können [7]. DSSI ist als Lösung für verschiedene Unzulänglichkeiten des vorhandenen Linux-Softsynth-Supports konzipiert, vor allem in Bezug auf MIDI-Steuerung. Das Interface bietet außerdem eine Bridge für die Ausführung von VSTi-Plugins. Zum aktuellen Zeitpunkt wurde DSSI lediglich im Rosegarden-Sequencer implementiert und es bleibt noch abzuwarten, ob DSSI bei den Linux-Audiosoftware-Entwicklern auf Zuspruch stößt. Es handelt sich in jedem Fall um ein sehr nützliches und vielversprechendes API.

Abbildung 4 zeigt, wie Rosegarden mit einer Instanz von Sean Boltons xsynth, einem Proof-of-Concept-DSSI-Synthesizer-Plugin, ausgeführt wird.

Abbildung 4: Rosegardens DSSI bei der Arbeit.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 11/2014: VIDEOS BEARBEITEN

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 4 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...