Geschätzte Lesezeit: 5 Minuten
JACK Audio Connection Kit How To Anleitung Gearnews Teaser

Was ist JACK und wie geht das?  ·  Quelle: jackaudio.org / claudius

Oh, was habe ich schon bei meinem ersten Linux-Experiment geflucht, weil mir eine gute Einführung in JACK gefehlt hatte. Nach einer Einarbeitung geht es aber ziemlich gut – deswegen bin ich auch komplett umgestiegen. Das Audiosystem ist etwas anders, als man es von ASIO oder Core Audio her kennt. Es ersetzt, solange es aktiv ist, die Audioschnittstelle von Linux, PluseAudio und vernetzt Programme miteinander. Damit du nicht so viele graue Haare wie ich anfangs bekommst, gibt es hier einen kurzen Leitfaden. 

JACK

Es ist wie so oft bei Linux eine Abkürzung, die sich selbst noch einmal beinhaltet: JACK Audio Connection Kit, kurz JACK. Es ist nicht nur ein Audio-Server, der u. a. über ALSA mit der Audio- und MIDI-Hardware kommuniziert, sondern gleichzeitig noch eine Routing-Umgebung mit der alle kompatiblen Programme miteinander verbindet.

Es gibt jack und jack2 – beide existieren parallel, jack2 unterstützt mehrere Prozessoren, was prinzipiell mehr Rechenleistung bringen kann und damit die sinnvollere Version für aktuelle Hardware ist. JACK2 existiert auch für macOS und Windows, mangels Programmauswahl mit JACK-Schnittstelle bei den Betriebssystemen ist es eigentlich unter Linux wirklich sinnvoll, hier haben fast alle Audioprogramme die Schnittstelle.

Installation

Sollte es in deiner Distribution noch nicht vorinstalliert sein, kannst du es bei fast allen Distros über die regulären Paketquellen installieren. Entweder erledigst du das über einen vorinstallierten Paketmanager oder über Terminal – Letzteres ist mein Weg, da ich mich an die Geschwindigkeit gewöhnt habe und damit schneller am Ziel bin.

Du kannst entweder qjackctl als JACK-Verwaltung installieren oder Cadence, musst davor aber die KX Repos bei Ubuntu aktiviert bzw. installiert haben. Dabei handelt es sich einfach um eine alternative Paketquelle. Den Aufbau der Befehle erkläre ich dir nicht, da das zum Linux-Grundwissen gehört.

In Ubuntu sieht das wie folgt aus:

sudo apt install cadence

oder

sudo apt install qjackctl

Bei Arch ist der Weg ähnlich, „sudo pacman -S qjackctl“. Cadence liegt im AUR und wird in der Kommandozeile beispielsweise über yay installiert.

qjackctl vs. Cadence

Ich empfehle dir dringend, JACK nicht über die Kommandozeile als „daemon“ zu starten und zu verwalten, sondern ein mit der Maus klickbares Kontrollzentrum zu nutzen.

Cadence“ ist ein Paket an Programmen, die man braucht, optisch brauchbar und damit gut nutzbar. Meine klare Empfehlung. Mit dabei ist eine automatische Brücke für PulseAudio, womit es gleichzeitig möglich ist, die DAW und den Browser zu nutzen – ohne diese Bridge geht das nicht. Und die selbst einzurichten, bedarf etwas Zeit. Stichwort: graue Haare.

qjackctl“ ist etwas rudimentärer und beschränkt sich optisch auf das Allernötigste. Auch besagte Bridge muss selbst eingerichtet werden. Hier gibt es eine auf Manjaro abgestimmte Anleitung.

JACK Cadence Config Window Ubuntu

JACK verbinden

Ist alles installiert, kannst du JACK konfigurieren. Die Konfiguration ist nur einmal nötig, du kannst dann später selbst entscheiden, ob sich deine Audioumgebung direkt nach Systemstart selbst aktiviert (Autostart) oder ob du es (wie ich) manuell aktivierst.

Am Beispiel von Cadence zeige ich dir, wie ich mein Focusrite Scarlett 2i2 (2nd Gen) einrichte. Wichtig ist, dass du mit deinem User-Account in der Gruppe „audio“ gelistet bist, bei Arch ist zusätzlich die Gruppe „realtime“. Das geht über den Befehl:

usermod -aG audio NUTZERNAME

Danach ist ein Neutstart notwendig.

Die beiden Fenster erreichst du unter „Configure“ unten rechts. Anschließend setzt du im Reiter „Engine“ den Haken bei Realtime und dann im Reiter „Driver“ bei ALSA dein Interface, bei mir heißt es „HW:USB„. Der Rest sollte automatisch passieren. Samplerate kannst du frei wählen, 44,1 kHz ist für die meisten Anwendungen genug. Der Buffer ist entscheident, wie viel Zeit dein CPU zum Berechnen hat und damit auch die Latenz. Spielst du in Echtzeit Sachen ein, dann sollte es 128 oder weniger sein, zum Mixen kannst du 1000 oder mehr nehmen. Die Periods lässt du auf 2.

JACK Cadence Configure Hardware

Damit hast du ein rudimentäres Setup geschafft. War nicht so schwer, oder?

Klicke OK und anschließend im Hauptfenster (siehe Screenshot weiter oben oben) auf „Start“. JACK läuft und der Server-Status sollte auf „Running“ stehen. Ggf. musst du unten bei PulseAudio die Bridge noch manuell starten.

Sollte es später zu Aussetzern kommen, wird der Zähler hinter XRUNS schnell steigen. Das ist ein Buffer Overrun und du solltest die Latenz schrittweise anpassen.

Routing mit JACK

Die Installation von Cadence bringt auch „Catia“ mit. Damit kannst du in einem Fenster virtuell die Strippen ziehen und Programme miteinander verbinden. Das ist ziemlich selbsterklärend. Ich habe hier Mixbus 6 und Guitarix gestartet. Sieht auf den ersten Blick viel aus, dafür kann man bei Mixbus quasi alles von extern angesteuert werden.

qjackctl bringt auch ein Routing-Fenster mit, allerdings ist das etwas klickintensiver und wie ich finde, nicht so intuitiv. Dafür schont es Ressourcen – wer nicht genug davon in seinem Computer hat, wird sich darüber freuen.

Los geht’s

Grundlegend kannst du jetzt direkt loslegen. Du verbindest beispielsweise deine Gitarre mit Guitar Rig und ziehst die Strippen dann in deine DAW, egal ob das jetzt Mixbus, Reaper, Bitwig oder eine ganz andere ist. Dann ist alles wie gehabt.

Beim nächsten Mal erinnert sich JACK an dein Routing und du musst eigentlich nie wieder Strippen ziehen. Es gibt aber auch Snapshots, die du anlegen kannst und dir so verschiedene Setups einfach in einer Sekunde virtuell verkabeln kannst.

Fragen?

Ist noch was unklar? Dann freuen wir uns über deinen Kommentar! Wir versuchen auch zu helfen. :)

Mehr Gedanken zu Linux und meinem Umstieg findest du hier.

7 Antworten zu “Linux-Audio – JACK verstehen und einrichten”

  1. Tschik sagt:

    Umständlich. Wieso tut man sich das an, wenn man ASIO4ALL oder Core Audio nutzen kann?

    • claudius sagt:

      Danke für deine Frage! :)

      ASIO bzw. ASIO4ALL gibt es nur für Windows, Core Audio nur für macOS. JACK ist eine freie Audioschnittstelle, auf der die meisten professionellen Audioprogramme unter Linux neben den Desktop-Schnittstellen ALSA und Pulse Audio laufen. ASIO und Core Audio gibt es nicht für das freie Betriebssystem GNU/Linux – daher hast du als User keine Wahl.

      Wirklich schön ist es anfangs nicht, das gebe ich gern zu. Allerdings ist gerade das freie, systemweite Routing genial, das ich nicht mehr missen möchte. Wenn ich darauf verzichten könnte, würde ich es aber vermutlich tun. Da ich es aber einmal eingerichtet habe, ist der Prozess zur Audioumgebung genau um zwei Mausklicks verlängert: Cadence starten, JACK starten. Fertig.

      • Jemand sagt:

        Man könnte doch Jack um eine vergleichbare, einfache, Schnittstelle, wie ASIO4All erweitern, um die Einstiegshürden zu nehmen.

        Kamn ich damit auch Signale routen die über Bluetooth reinkommen?

        .

        • claudius sagt:

          Soweit ich wei, gibt es sowas nicht. Was kann denn ASIO4ALL mehr als JACK? Das muss ja auch eingerichtet werden. Mehr ist es bei JACK über qjackctl beispielsweise auch nicht.

  2. xr sagt:

    Erstmal aufgesetzt ist JACK deutlich benutzerfreundlicher und flexibler als ASIO.

  3. Gerry sagt:

    „Den Aufbau der Befehle erkläre ich dir nicht, da das zum Linux-Grundwissen gehört.“ (claudius)

    Wer von Windows / iOS auf Linux umsteigen möchte, der ist von solchen Aussagen natürlich total begeistert! Kein Wunder, dass Linux bisher keine große Rolle in der Musikproduktion spielt. Vernünftige und präzise Anleitungen für einen Umstieg sind kaum zu finden!

    • claudius sagt:

      Du spielst sicherlich nicht auf iOS, sondern macOS an. Wer da Terminalbefehle nutzt, kennt sich mit der Umgebung in Linux vermutlich relativ schnell aus, da sich die Befehle oft gleichen und der Aufbau auch ähnlichn ist.
      Als Blog für Equipment ist es aber IMHO nicht unsere Aufgabe, ein Betriebssystem zu erklären. Dafür gibt es viele, spezialisierte Seiten, Zeitschrfiten, Videos, die Linux von Grund auf erklären und auch sicherlich besser, als wir das in einem kurzen Artikel könnten.
      Wenn du konkrete Fragen hast, schau dich einfach mal im Netz um, wenn du Hilfestellung oder Linktipps brauchst, dann frag einfach konkret danach. :)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.