
Arbeiten mit QJACKCTL auf GNU/Linux ( Einführung Version 4.0 ) Rosea Grammostola [email protected] (Übersetzung aus dem Niederländischen von Gerd50, für Linux Mint User bearbeitet von Mayleen und Fire Industries) Inhaltsverzeichnis 1 Einführung 3 2 JACK 4 3 QjackCTL 5 3.1 Setup …................................................................................. 5 3.1.1 Gleichgewicht zwischen Latenz und xruns …............ 5 3.1.2 Einstellungen ….......................................................... 6 3.1.3 Gebrauch …................................................................ 6 3.1.4 Start …........................................................................ 8 3.1.5 Meldungen …............................................................ 9 3.2 Verbinden (Connect)....................................................................... 9 3.2.1 Audio ….................................................................... 9 3.2.2 Beispiel …............................................................................ 10 3.2.3 MIDI ALSA …......................................................... 11 3.2.4 MIDI JACK …........................................................ 11 3.3 Das Steckfeld (Patchbay) ............................................................... 13 3.3.1 Was ist das Steckfeld genau? …..................................... 13 3.3.2 Beispiel einer Steckfeldverbindung …........................... 13 3.3.3 Steckfeld einrichten ….................................................... 13 3.3.4 Hinzufügen von Sockets und Anschlüssen (Plugs)........... 15 3.3.5 Verbindung herstellen ..................................................... 17 3.3.6 Sichern und aktivieren …................................................ 17 3.4 Jack Synchronisation 3.4.1 JACK Transport Control System …................................ 19 3.4.2 Beispiel: Wie Hydrogen mit Ardour synchronisieren … 20 3.4.3 Viele Möglichkeiten …................................................... 21 4 Hintergrund Information 22 4.0.4 Danksagungen …......................................................................... 22 1 Inhalt ________________________________________________________ 4.0.5 Referenzen ….................................................................. 22 2 Kapitel 1 Einführung Wenn du mit LINUX Musik machen willst, dann kannst du das im Prinzip mit jeder 'normalen' Linux Distribution ohne weitere spezielle Konfiguration tun. Anwendungen wie Audacity, Hydrogen, LMMS, MuseScore und Mixxx beispielsweise sind Programme die für das eine gemacht sind : Musik machen ! Wenn du echte, seriöse Musik mit Linux komponieren und produzieren willst, und wenn du mit Anwendungen wie Ardour und Rosegarden arbeiten möchtest, dann solltest du dich mit jemandem vertraut machen, der mir seit einigen Jahren ein guter Vertrauter und Freund geworden ist JACK 3 Kapitel 2 JACK JACK, oder auch 'JACK audio connection kit', ist ein Sound Server für Linux und Apple's OS X mit niedrigen Latenzen. Jack macht es möglich, verschiedene Anwendungen mit einem Audio Gerät zu verbinden. Die sogenannten JACK Clients (Anwendungen mit JACK Unterstützung wie Ardour, Rosegarden, Audacity und Hydrogen) können von daher für sich selbst laufen, aber auch innerhalb des JACK Servers (quasi wie ein Plugin). Jack wurde für die professionelle Audio Produktion entworfen und konzentriert sich auf zwei Gebiete: 1. Niedrige Latenz 2. Gleichzeitiges Abspielen (synchronisieren) von JACK Clients Niedrige Latenz gibt an, wieviel Verzögerung zwischen dem Audio Input (das spielen eines Tons auf dem MIDI Keyboard beispielsweise) und dem Hören des Output, der gespielte Ton in diesem Fall, besteht. Natürlich soll die Verzögerung so kurz wie möglich sein, und dabei kann JACK dir helfen. Ein Beispiel der Rolle von JACK: du schliesst eine Gitarre oder jedes beliebige Instrument mit Tonabnehmer und ein Mikrofon an Deine (Mehrkanal-) Soundkarte an. Für MIDI Aufnahmen kannst du ein MIDI Keyboard an einen USB Port anschliessen. Das Audio Signal, in diesem Fall von Gitarre und Mikro kann mit einer DAW (Digital Audio Workstation, z.Bsp. Ardour) aufgenommen werden, während die MIDI Aufnahmen mit einem MIDI Sequenzer (z.Bsp. Qtraqctor von Rosegarden) gemacht werden. Für eine gute Drum Kit Begleitung deiner Songs brauchst du einen Drumcomputer (z.Bsp. Hydrogen). Der output der verschiedenen Anwendungen, das Ausgangssignal von Gitarre und Mikro, die MIDI Aufnahme in Qtractor und die Drums gespielt von Hydrogen können gleichzeitig als Stereo WAV File in einem Programm wie Ardour aufgenommen werden. Jack sorgt in diesem Prozess für niedrige Latenzen (so geringe Verzögerungen wie möglich), und das Verbinden und Synchronisieren (gleichzeitiges Abspielen) der verschiedenen Programme. JACK arbeitet im Prinzip mit Kommando Zeilen (im Terminal), doch glücklicherweise gibt es auch eine gute GUI für JACK: QjackCTL 4 Kapitel 3 QjackCTL QjackCTL (auch 'Jack Control' genannt) kannst du im Menü oder durch eintippen von qjackctl im Terminal starten. Figur 3.1: QJackCTL 3.1 Setup (Konfiguration) Um Qjackctl (wir haben hier die Version 0.3.3 vor uns) starten zu können, und um die maximale Leistung aus Jack zu holen, ist es ratsam, dass du das Setup richtig eingestellt hast. Das machst du durch drücken des Knopfes Konfiguration (Setup). Es erscheint ein Fenster wie in Figur 3.2 auf der folgenden Seite. 3.1.1 Gleichgewicht zwischen Latenz und xruns Beim Einstellen der Konfiguration von Qjackctl ist es wichtig eine Sache im Auge zu haben, das ist die Balance zwischen Latenz und dem sogenannten xruns. Die Idee dabei ist, JACK so arbeiten zu lassen, dass die Latenz (Ver- zögerung) so klein wie möglich ist, ohne dabei konstante xruns zu verursachen. Zu hohe Latenzen führen zu 'xruns', die im Meldungsfenster aufgeführt werden. Xruns sind kleine Störungen, die dadurch verursacht werden, dass ein bestimmter Prozess JACK stört, und JACK einen konstanten Strom von Audio Daten nicht mehr verarbeiten kann. Ein xrun ist hinderlich, da dadurch die Aufnahme gestört wird. Es ist jedoch normal, dass du einige xruns bekommst, wenn ein Programm geöffnet oder geschlossen wird. Während der Aufnahme kann das für einen Moment zu einem Tonausfall führen, was du natürlich nicht willst. Von daher diese ausführliche Besprechung über die Balance zwischen Latenz und xruns. Du willst eine möglichst niedrige Latenz, als auch eine möglichst geringe Anzahl an xruns. (um eine bestmögliche Arbeit von JACK bei möglichst niedrigen Latenzen zu gewährleisten, ist es angeraten eine Linux Distribution zu benutzen, die speziell für die Multimedia Produktion konfiguriert ist. 64studio oder Ubuntu Studio bieten sich an. Insbesondere der Gebrauch eines sogenannten Echtzeit Kernels (Realtime kernel = rt-kernel kann die (Echtzeit) Latenz vermindern. Natürlich kannst du auch einen rt-kernel in der Distro 5 Kapitel 3. QjackCTL ________________________________________________________________________ installieren, die du in Gebrauch hast, und diese für die Arbeit mit Jack konfigurieren) 3.1.2 Einstellungen Nicht alle Einstellungen, die du auf Abbildung 3.2 siehst, (vor allem die Parametersektion) sollen bei dir dieselben sein. Dies ist eine Abbildung der Einstellungen speziell meiner Hardware, bei dir kann das anders aussehen, wenn du beispielsweise eine andere Soundkarte hast. Hier die Punkte, die du eventuell einstellen musst, um gut mit JACK arbeiten zu können. Figur 3.2: Konfiguration 1. Sorge als erstes dafür, dass der Server Pfad auf jackd verweist (usr/bin/jackd). 2. Falls du mit jackdmp arbeitest, muss der Pfad auf jackdmp verweisen. Wenn du nicht weisst was jackdmp ist, kannst du diesen Hinweis unberücksichtigt lassen. 6 Kapitel 3. QjackCTL __________________________________________________________________ 2. Sorgt dafür, dass der Real Time (Echtzeit) Modus aktiv ist. (Wenn kein rt-kernel installiert ist, darf kein Haken gesetzt sein) 3. Sorgt dafür, dass die Priorität auf 0 (default) gesetzt ist. Das sorgt auch dafür, dass alle Audio Prozesse Vorrang haben, um die beste Leistung für deine Produktion zu bekommen. 4. Der nächste Schritt sorgt dafür, dass die richtige Soundkarte eingestellt ist. Das geht unter Einstellungen: (Parameter): interface (Schnittstelle). Wahrscheinlich ist (default) ok, aber es gibt auch eine Schaltfläche (>), mit der du eine gefundene Soundkarte auf deinem System ansteuern kannst. Bei mir ist das hw:0. Normalerweise sollte die Einstellung gewählt werden, die auf den Modellnamen deiner Karte verweist. (Falls JACK nicht starten will, kann es nötig sein, mit den Kartenkreuzen ein wenig zu experimentieren, doch evtl. kann das auch später noch gemacht werden) 5. Falls deine Soundkarte nicht sichtbar ist, dann ist die Karte möglicherweise nicht kompatibel mit ALSA. Probiere in dem Fall einen anderen Treiber in den ALSA Einstellungen (OSS auf pulseaudio (?)). Die meisten Karten sind kompa- tibel mit ALSA und es ist angeraten, ALSA als Treiber zu wählen. Ausnahme ist Firewire Schnittstelle, dann sollte der Freebob Treiber gewählt werden. 6. Du kannst Soft Mode aktivieren, was bewirkt, dass JACK nicht stoppt wenn er xruns bekommt. Das ist praktisch, wenn du aufnimmst. 7. Wenn du sicher weisst, dass dein Computer mit 16 Bit (Audio) Auflösung arbeitet, dann aktiviere Force 16 Bit (16 Bit erzwingen). 8. Die Einstellung von Frames/Period(e) in der mittleren Spalte des Einstellungs- fensters hat den grössten Einfluss auf die Höhe der Latenz (Verzögerung). Je höher die Frames/Periode, desto höher die Latenz. Du musst ausprobieren, was deine Soundkarte
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages23 Page
-
File Size-