Arbeiten mit QJACKCTL auf

GNU/

( 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 mit 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 , 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 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 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 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 und System verarbeiten kann. Ich habe Frames/Periode jetzt (Karte ist eine M-Audio Audiophile 24/96) auf 32 oder 64 stehen, doch mit meinem On- boardchip (auf dem Motherboard) hatte ich sie auf 128 oder 256 stehen.

9. Sample Rate (Abtastrate) auf 44100 Hz (CD Qualität), doch einige Sound- karten bevorzugen 48000 Hz (DAT – Digital Audio Tape Qualität)

10. Periods/Buffer (Perioden/Puffer) muss sehr wahrscheinlich auf 2 gesetzt werden. Doch es kann sein, dass es mit deiner Soundkarte ein wenig anders ist.

11. Audio kannst du auf Duplex setzen, sollte Jack nicht starten, Playback only probieren.

12. Rechts unten im Fenster Einstellungen : Latenz und der implizierte Wert. (Eventuell hilft nur das Experimentieren mit diesem Wert)

7 Kapitel 3. QjackCTL ______

An den anderen Einstellungen solltest du am besten vorläufig nichts basteln. Grundsätzlich gilt, ist kein rt-kernel installiert, müssen Latenz bezogene Werte höher gesetzt werden, als bei installiertem Echtzeit Kernel.

Figur 3.3: Misc (Verschiedenes)

3.1.3 Gebrauch

Zum Schluss können wir QjackCTL so einstellen, dass es etwas einfacher zu handhaben ist. Dafür müssen im Reiter Misc (Verschiedenes) zwei Optionen angekreuzt werden. 1. Jackserver bei Anwendungsstart starten. 2. Symbol im Benachrichtigungsfeld anzeigen.

3.1.4 Start

Jetzt versuchen wir, Jack mit Hilfe von Qjackctl zu starten. Ok klicken speichert, Einstellungsfenster schliessen. Um Jack zu starten, müssen wir den Start Knopf drücken. Wichtig hierbei ist, dass andere Sound Applikationen geschlossen sind. JACK ist sehr eifersüchtig und duldet keine anderen Sound Server neben sich.

8

Kapitel 3. QjackCTL ______

Eine Webseite wie YouTube z. Bsp. verhindert den Start von JACK. Starte JACK auch immer, bevor du andere JACK Clients startest! Wenn alles gut eingestellt ist, erscheint im LED 'Started'.

Figur 3.4: Start

3.1.5 Messages – Meldungen

Wenn Jack nicht startet, kannst du im Meldungsfenster nachsehen, ob etwas nützliches gemeldet wird. Bei Fehlermeldungen von zuvielen xruns kannst du etwas an den Einstellungen verändern, beispielsweise Frames/Periode. Oder aber per Suchmaschine im Internet nach der Fehlermeldung suchen, in Foren und Mailinglists um Unterstützung bitten – Ubuntu Wiki/Jack Audio Connection Kit, Linux Musician Forum oder Linux Audio User Mailinglist .

3.2 Connect – Verbinden

3.2.1 Audio

Wenn Jack läuft, können wir versuchen einen sogenannten Jack Client zu starten. Das kann verschiedene Audio Software mit Jack Unterstützung sein. Ein gutes Programm für unseren Test ist ZynAddSubFx (installiere es). Du kannst es im Menü starten, oder aber im Terminal durch die Eingabe: zynaddsubfx. ZynAddSubFx startet im 'Beginner Modus' per keyboard (wenn keins vorhanden ist, schalte in ZynAddSubFx im Reiter Misc (Verschiedenes) in den Beginner Modus und stelle automatisch eine Verbindung mit Jack her. Um festzustellen, ob es zu einer Verbindung gekommen ist, musst du in Qjackctl auf Verbinden klicken. Wenn es läuft, siehst du folgendes Fenster > Figur 3.6 auf Seite 11. Wenn eine Verbindung besteht und du Sound aus den Lautsprechern, Kopfhörer oder Monitore hörst, können wir schlussfolgern, dass JACK arbeitet. Weiter unten dann mehr über JACK Connections oder Verbindungen. Wie schon gesagt, kannst du mit Hilfe von JACK alle Verbindungen zwischen den verschiedenen Audio/ Midi Software/ Hardware Jack Clients wie z.Bsp. ZynAddSubFx herstellen.

9

Kapitel 3. QjackCTL ______

Figur 3.5: ZynnAddSubFX Great Synth'

Auf der linken Seite der Registerkarte 'Verbindungen' werden die lesbaren Clients/ Ausgänge gezeigt, auf der rechten Seite alle möglichen Audio oder MIDI-Bestimmungen, die beschreibbaren Clients/Eingänge. Verbindungen können zwischen der Quelle Clients/Ausgänge und der Bestimmung Clients/Eingänge durch selektieren eines Ausgangs und Eingangs und anklicken des Verbindungsknopfes im Verbindungsfenster hergestellt werden. Das kann auch durch ziehen mit der Maus (rechte Maustaste gedrückt halten) von einem Element (Ausgang) zur Bestimmung (Eingang) bewerkstelligt werden. Das Auflösen einer bestehenden Verbindung geht auf dieselbe Art und Weise durch drücken des Knopfes 'Trennen'. Bestehende Verbindungen werden durch verschiedenfarbige Linien zwischen den beiden Panelen Ausgang/Eingang angezeigt. Jede Farbe gibt einen bestimmten JACK Client an. Es können alle möglichen Verbindungen zwischen den verschiedenen Audio und MIDI Signalen gelegt werden.

3.2.2 Beispiel

Hier ein Beispiel von Hydrogen, das ein Drum-Pattern in Rosgarden abspielt und von Ardour aufgenommen wird (siehe Figur 3.7 auf der nächsten Seite). Eins voraus, ein Beispiel wenn ich mit meiner E-Gitarre ein Stück über den AlsaPlayer spielen will. Meine Gitarre geht durch einen Vorverstärker ( in diesem Fall ein simples Boss Distortion Pedal) oder Mixer (capture 1) über meine virtuelle Effektbox Rakarrack zum Jackmixer (um die Lautstärke zu regeln) und Jackmixer geht nach Playback 1 (Monitor/ Speaker L u. R). Das Audiosignal vom Alsa Player geht auch über den Jackmixer nach Playback 1 u. 2. Mit dem Jackmixer kann ich jetzt die Lautstärke vom AlsaPlayer und meiner Gitarre regeln. (siehe Figur 3.8 auf Seite 12) (siehe Figur 3.10 auf Seite 14 für ein Beispiel mit Verbindungen zwischen System, Ardour (3 Spuren), Hydrogen, whysynth und vkeybd.

10

Kapitel 3. QjackCTL ______

Figur 3.6: Jack Connect (Verbinden)

Figur 3.7: Jack Verbindungsbeispiel

3.2.3 MIDI ALSA

Mit MIDI ALSA ( ALSA Reiter) im Fenster 'Verbindungen' kannst du Verbindungen zwischen Midi Hardware und jeder Midi Software herstellen.

11

Kapitel 3. QjackCTL ______

Hier ein Beispiel von virtuel keyboard (vkeybd) und ZynAddSubFx (siehe Figur 3.9 auf Seite 13). Wenn alles läuft, kannst du jetzt mit dem virtuellen Keyboard ZynAddSubFx spielen.

Figur 3.8: Jack Verbindung - Beispiel Gitarre

3.2.4 MIDI JACK

Dann ist da noch ein Reiter oben im Verbindungsfenster, MIDI. Das ist für MIDI Software mit JACK MIDI Unterstützung. Wenn du viel mit MIDI arbeitest, musst du dich hiermit beschäftigen. Anwendungen wie Rosegarden und Qtractor arbeiten soviel ich weiss mit ALSA MIDI.

12 Kapitel 3. QjackCTL ______

Figur 3.9: Jack Connect ALSA

3.3 Das Steckfeld (Patchbay)

3.3.1 Was ist das Steckfeld genau ?

Mit dem Steckfeld von QjackCTL kannst du Verbindungen zwischen Jack Clients sichern und wieder öffnen, sodass du bei neuen Sessions oder wenn eine Session unterbrochen wurde, nicht immer wieder dieselben Verbindungen herstellen musst. Wenn die Verbindungen durch einen Crash einer Anwendung abgebrochen wurden, werden die Verbindungen ( wenn die Anwendungen gestartet sind ) automatisch wieder hergestellt. Das Steckfeld kann auch nützlich bei einem Wechsel des Instrumente Setups sein, beim spielen unterschiedlicher Stücke während eines Live Gigs beispielsweise. Es kostet einige Zeit ein Steckfeld herzustellen, doch wenn du regelmässig mit Qjackctl arbeitest, lohnt sich die Mühe.

3.3.2 Beispiel einer Steckfeldverbindung

In diesem Beispiel gebrauchen wir Ardour, Hydrogen und Whysynth. Als MIDI Keyboard gebrauchen wir ein virtuelles Keyboard (vkeybd). In Figur 3.10 auf der nächsten Seite und in Figur 3.11 auf Seite 15 siehst du die Verbindungen, die wir mittels Steckfeld herstellen und öffnen wollen.

3.3.3 Steckfeld einrichten

Starte folgende Anwendung: > qjackctl

13 Kapitel 3. QjackCTL ______

Figur 3.10: Jack Verbindungen

> ardour ( schalte drei Stereo Spuren in Ardour an ) > hydrogen > whysynth ( tippe folgendes ins Terninal : jack-dssi-host whysynth.so). Mehr Info: website whysynth > vkeybd (virtuel keyboard)

2. Unterbreche die Verbindungen (Trennen) aller Audio Verbindungen im Qjackctl Verbindungsfenster.

3. Unterbreche die Verbindungen (Trennen) aller MIDI Verbindungen ( im Reiter ALSA ) im Verbindungsfenster.

4. Öffne das Steckfeld ( Figur 3.12 auf der nächsten Seite )

Für das herstellen eines neuen Steckfeld Sets wähle 'neu' ( links oben ). Wenn du 'neu' anklickst, erhältst du folgende Frage ( Figur 3.13 ):

Wenn du 'ja' wählst, bekommst du Verbindungen mit einem Plug (Anschluss) pro Anwendung und das ist nicht was du willst. Wähle 'Nein' um ein leeres Steckfeld zu bekommen. Das leere Steckfeld ist in einen Eingangs- und einen Ausgangsteil aufgeteilt.

14 Kapitel 3. QjackCTL ______

Figur 3.11: Jack Verbindungen MIDI (ALSA)

Figur 3.12: Patchbay Knopf

Im Steckfeld werden die Jack Clients als Sockets angegeben. Obwohl das Steckfeld AUDIO und MIDI Verbindungen herstellen kann, kann es lediglich Verbindungen desselben Typs machen, AUDIO oder MIDI. Wir wollen für unser Setup ein Socket für jede Verbindung die wir wünschen machen. Diese Verbindungen sollen Stereo sein (mit zwei Plugs = Anschlüssen in qjaqck Terminologie) oder Mono (ein Anschluss). Falls du es wünscht, kannst du soviele Anschlüsse pro Socket herstellen, wie du willst.

3.3.4 Hinzufügen von Sockets und Plugs (Anschlüssen)

Auf beiden Seiten des Steckfeldfensters siehst du einen Knopf 'Hinzufügen'. Wenn alles in Ordnung ist, erscheint ein Fenster wie in Figur 3.14 auf der nächsten Seite. Wir wollen zuerst alle Ausgangs Sockets hinzufügen, dann die Eingangs Sockets. Doch du kannst auch per Anwendung arbeiten, ein jeder wie es ihm in seiner gewohnten Arbeitsweise gefällt. Wähle nun Audio, Midi Jack (MIDI) oder Midi Alsa (ALSA) unter 'Typ'.

15 Kapitel 3. QjackCTL ______

Figur 3.13: Frage

Figur 3.14: Hinzufügen

Wähle dann einen Jack Client. Wähle anschließend einen Anschluss dieses Clients. Den Anschluss kannst du im Steckfeld durch drücken des Knopfes 'Anschluss hinzufügen' einfügen. Um den Vorgang abzuschliessen, gib dem Socket einen Namen wie : ardour:audio 1/out beispielsweise. Wenn das Steckfeld für eine bestimmte Aufgabe gedacht ist, kannst du auch einen benutzerfreundlicheren Namen wählen wie: Ardour: Drum Track/out z.Bsp. Gebrauche 'exclusiv' ( was bezeichnet, dass das Steckfeld keine andere Verbindung als die bezeichnete herstellt und/oder 'vorwärts' wenn du das wünscht (selbst bin ich auch noch dahinter gekommen, wofür 'vorwärts' genau gedacht ist...wenn es jemand weiss, bitte ich um Mitteilung, um das Tutorial vervollständigen zu können)

16 Kapitel 3. QjackCTL ______

Schliesslich klickst du auf 'OK' und dein Steckfeld muss dann so aussehen ( Figur 3.15):

Figur 3.15: Steckfeld 1

Wiederhole diese Prozedur für jeden Eingang und Ausgang Socket, bis du so etwas wie in Figur 3.16 auf der folgenden Seite hast.

3.3.5 Verbindungen herstellen

Jetzt können wir die Verbindungen herstellen, die wir brauchen. Wähle einen Eingang Socket und einen Ausgang Socket, dann klicke auf den 'Verbinden' Knopf, um sie zu verbinden. Wiederhole das mit allen Verbindungen, die du im Steckfeld hergestellt hast, bis es so aussieht wie in Figur 3.17 auf Seite 19.

3.3.6 Sichern und aktivieren

Du kannst jetzt das Steckfeld sichern. Drücke dafür den 'aktivieren' Knopf, um die Verbindungen zu aktivieren. Wenn alles in Ordnung ist, siehst du jetzt die ge- wünschten Verbindungen unter 'Verbinden' von Qjackctl. Um das Steckfeld zu testen, kannst du unter 'Verbinden' alle Verbindungen durch drücken des Knopfes 'Alle Trennen' unterbrechen. Klicke auf 'ignorieren' um die Verbindungen nicht aus dem Steckfeld zu entfernen (auf ok, wenn du das willst) und sieh nach, ob nach der Trennung die Verbindungen automatisch wiederhergestellt wurden.

17 Kapitel 3. QjackCTL ______

Figur 3.16 Steckfeld 2

Wenn du das nächste mal mit derselben Session arbeiten willst, dann aktiviere das erstellte Steckfeld und öffne deine Anwendungen, die sich automatisch den Regeln des Steckfelds folgend verbinden werden.

18 Kapitel 3. QjackCTL ______

Figur 3.17: Steckfeld Endversion

3.4 Jack Synchronisation

Wie am Beginn dieses Artikels schon erwähnt, ist es eine wichtige Funktion von JACK das synchronisieren (gleichzeitiges abspielen) der verschiedenen Jack Clients. In der Welt der Audio und Musik Software wird mit synchronisieren das präzise 'timing' von Audio Prozessen (Events) mit Video, Midi und anderen 'Streams' bezeichnet.

3.4.1 Jack Transport Control System

Die Möglichkeiten des Regelns eines komplexen Anteils verschiedener Audio In und Outputs durch Jack, ist während einer Aufnahme oder Hörens nicht viel Wert, wenn die verschiedenen Spuren, die Kanäle und Streams nicht präzise auf Tempo und Timing aufeinander abgestimmt sind. Jeder Musiker weiss, wie wichtig ein gutes Zusammenspiel ist. Um dafür zu sorgen, dass die verschiedenen Jack Clients auf den Punkt genau zusammenfinden, gibt es in JACK ein 'Transport Control Subsystem' , welches mit QjackCTL bedient werden kann. Das System sorgt für eine zuverlässige Sample Synchronisation der Audio Input/Output Streams, und

19 Kapitel 3. QjackCTL ______jeder Jack Client mit Jack Transport Unterstützung (Support) kann mit jedem anderen Jack Client, der ebenfalls über Jack Transport Unterstützung verfügt, bedient werden. Das wird dann auch als 'Master Client' bezeichnet, doch im Prinzip kann jeder Jack Client mit Jack Transport Funktion als Master Client fungieren. Das Tempo des Transports ( das musikalische Tempo = Beats Per Minute) wird durch einen der Clients, dem 'Master', bedient, sodass die andere Anwendung im selben Tempo abgespielt wird. Um 'Jack Transport Control System' zu installieren oder zu starten, brauchst du nichts anderes machen, als Qjackctl zu starten.

3.4.2 Beispiel: Wie Hydrogen mit Ardour synchronisieren Dieses Beispiel zeigt, wie Ardour und Hydrogen (Drum Computer) mit Hilfe von Jack und Qjackctl synchronisiert werden können. Das macht es möglich, ein Drum Pattern in perfektem timing mit einer Session in Ardour zu spielen.

> Starte Qjackctl

> Starte Ardour und erstelle eine neue Session

> Sorge dafür, dass 'Time Master' aktiviert ist (grün) und intern Jack anzeigt.

Figur 3.18: Time Master

> wenn das getan ist, öffne Hydrogen

> öffne eine Demo Datei

Figur 3.19 Hydrogen sync

> bevor du nach Ardour gehst, aktiviere JACK TRANSPORT in Hydrogen (himmelblau)

> maximiere Ardour und drücke den Play Knopf. Wenn alles ok ist, hörst du jetzt Hydrogen spielen.

> du kannst auch QjackCTL benutzen, um die Anwendungen zu starten. Drück dafür in QjackCTL den Play Knopf.

20 Kapitel 3. QjackCTL ______

3.4.3 Viele Möglichkeiten

Obiges ist nur ein Beispiel. Synchronisation ist mit vielen Anwendungen wie Rosegarden, Muse und Seq24 möglich.

21 HOOFDSTUK 4 - Rosea Gallestano, vielen Dank für diese Arbeit.

Die Übersetzung hat mir sehr viel Spass gemacht. Ich hoffe, dass ich inhaltlich richtig wiedergeben konnte, was du verfasst hast. Ich liebe den Klang der holländischen Sprache, die mir durch die Übersetzung ein wenig transparenter wurde.

Gerd50 ______

Kapitel 4. ______

Hintergrund Informationen

> Website Jack

> Website QjackCTL

> Linux Musicians Wiki

4.0.4 Danksagungen

> JACK ist ein Produkt von Paul Davis und anderen. Paul ist auch der Autor von Ardour. Für Donate besuche Ardour.org

> QjackCTL ist ein Produkt von Rui Nuno Capella. Besuche für Donate die Website Rui Nuno Capella.

4.0.5 Referenzen

Dieses Dokument ist grösstenteils eine Übersetzung der Arbeit von anderen. Auch die Abbildungen wurden aus Werken von anderen übernommen. Nachfolgend die Quellen, die benutzt wurden.

> Linux Musicians Wiki

> 64studio.com

> Jacklab.org

> Ubustu: ubuntu studio blog

> HowTo by Simon W. Fielding and Rui Nuno Capela about Patchbay

> Article by D. Philips about Jack Sync

22