Springe zum Inhalt

10

Hier wird die Einrichtung eines solchen Servers umrissen, mit besonderem Augenmerk auf die Zielgruppe Chor.

zurück zum Beitrag „Gemeinsam musizieren mit Jamulus“

Der Betrieb der Jamulus-Software erfordert einen Server, mit dem sich alle Teilnehmer („Klienten“) verbinden. Hier wird die Einrichtung eines solchen Servers umrissen, mit besonderem Augenmerk auf die Zielgruppe Chor.

Warum ein heimischer Server keine gute Idee ist

Nun könnte man einen zuhause herumstehenden Computer als Server verwenden, z. B. ein altes Laptop oder einen RaspberryPi. Die Hardware-Anforderungen sind nicht besonders hoch. Die Anforderungen an die Netzwerkverbindung schon.

Heimische Internetanschlüsse teilen die Bandbreite zwischen Senden und Empfangen von Daten nicht gleichmäßig auf. Der typische Kunde empfängt ja auch viel mehr Daten aus dem Internet als er sendet.

Film auf Netflix anfordern:0,001 MB Upload
Film anschauen:4000 MB Download
Beispiel, weswegen private Internet-Anschlüsse asymmetrisch ausgelegt sind.

Ein typischer Internet-Anschluss hat eine Bandbreite von 100 MBit/s für den Download, aber nur 10 MBit/s für den Upload. Unser Jamulus-Server muss jeden Klienten mit etwa 0,4 MBit/s versorgen. 10 : 0,4 = 25, das wäre die maximale Anzahl von Klienten. Da eine Internetverbindung aber selten die versprochene Leistung liefert — typisch sind 70-80% — und eventuelle Mitbewohner, Smartphones und Smart-Home-Geräte ebenfalls im Netz sind, sinkt die Anzahl versorgbarer Klienten eher auf die Hälfte. Das kann schnell zum Nadelöhr werden.

Der heimische Server muss von außen, von jenseits des Routers erreichbar sein. Jamulus nutzt das IPv4-Protokoll. Nicht jeder Internet-Anbieter garantiert die Erreichbarkeit über dieses Protokoll, gerade Kabelanbieter tricksen oft mit DS-Lite-Verfahren. (Die Details würden hier den Rahmen sprengen.)

Ein lokaler Server macht eigentlich nur dann Sinn, wenn es um eine Vernetzung im Haus geht, also ohne Internet, z. B. innerhalb einer Musikhochschule.

Damit kein falscher Eindruck entsteht:

Die Bandbreite ist nicht das größte Problem! Viel wichtiger ist die Pünktlichkeit des Datenstroms. Anders gesagt: Wenn die Daten eine Sekunde lang stocken, ist es egal, mit welch hoher Geschwindigkeit sie nachgeliefert werden: Sie werden einen halben Takt zu spät sein (bei Tempo 120) und deshalb von Jamulus verworfen werden. So entsteht das typische Blubbern. Die Lücke bleibt.

Drei Möglichkeiten, an einen Server zu kommen

Der einfachste Weg: ein öffentlicher Server

Die Gemeinde der Jamulus-Anwender stellt zahlreiche öffentliche Server zur Verfügung. (Sie werden beim Programmstart angezeigt.) Diese kann man nutzen. Natürlich ist die Probe dann nicht privat, jeder kann zuhören. Die maximale Teilnehmerzahl entspricht leider oft der Voreinstellung zehn.

Wenigstens kann man Zuhörer stummschalten, sollten sie falsch mitsingen.

Jamulus zeigt öffentliche Server an

Vorkonfigurierten Server stundenweise mieten

Es gibt Dienstleister, die Jamulus-Server stundenweise zur Verfügung stellen, z. B. Melomax oder koord.live. Teilweise ist das sogar kostenlos. Klarer Vorteil: Man muss sich nicht um die technischen Details kümmern.

Eigenen Server im Rechenzentrum anmieten

Meiner Meinung nach die beste Lösung! Ein solcher Server steht mitten im Internet und nicht an einem Endpunkt wie dem eigenen Wohnzimmer. Server kann man schon ab 5€/Monat mieten (z. B. bei IONOS, die hier verlinkte Konfiguration ist für 40 Probenteilnehmer auf jeden Fall ausreichend). Es macht Sinn, einen nahegelegenen Server zu suchen, denn der Ping hängt davon ab, wieviele Schaltstellen sich zwischen Client und Server befinden. Eine große Festplatte ist nicht notwendig, es sei denn, man will aufnehmen. Übertrieben viel RAM braucht man ebenfalls nicht.

Server nutzen typischerweise das Betriebssystem Linux und werden ohne grafische Benutzeroberfläche über eine Kommandozeile verwaltet.

Installation eines Jamulus-Servers unter Linux

Die nun folgende Beschreibung wird recht technisch und ist nur etwas für Menschen, die sich mit Servern auskennen.

Ich bin gerne bei der Ersteinrichtung behilflich.

Server und Client sind das gleiche Programm. Der Vorgang ist hier auf der Jamulus-Homepage gut beschrieben, allerdings werden dort vorgefertigte Distributionen verlinkt, die nicht für jeden Anwender funktioniert haben.

Update 2022: Mittlerweile sind die o. g. Distributionen von solcher Qualität, dass die im folgenden beschriebene Installation from source nur in Ausnahmefällen notwendig sein wird. Sie funktioniert aber nach wie vor, deshalb lasse ich diese historische Beschreibung aus dem Jahr 2020 unverändert stehen — außerdem sind die Statistiken zum Resourcenverbrauch auch jetzt noch interessant und zutreffend. Die Installation selbst geht mittlerweile einfacher.

Ich empfehle die Installation from source. Da wir nur die Serverfunktionen brauchen, können wir bestimmte Bibliotheken weglassen. Für die Linux-Distribution Ubuntu habe ich dazu folgendes Skript geschrieben:

Dieses Skript kann man entpacken, als Datei in sein Heimatverzeichnis auf seinem Server hochladen, mit sudo chmod +x install_jamulus ausführbar machen und mit sudo ./install_jamulus starten.

Dann sollte man Jamulus testweise starten. (Zum Beenden: Strg-C)

Jamulus -s

Das Starten des Programms im Alltag überlässt man, zumindest unter Ubuntu 20, am besten systemd. Dazu kopiert man folgendes Startup-Skript nach /etc/systemd/system/jamulus.service und setzt die Berechtigungen mit sudo chmod 644 /etc/systemd/system/jamulus.service.

Falls man Jamulus nicht selbst kompiliert, sondern aus einer Distro installiert hat, muss man den Pfad hinter ExecStart evtl. anpassen. Im Zweifelsfall hilft whereis Jamulus weiter.

Die Willkommensnachricht kann natürlich angepasst werden und darf HTML enthalten. Man kann sie auch in eine Datei auslagern (die für den User jamulus lesbar sein muss), z.B. /home/jamulus/welcome.html.

Die hier beschriebene Technik zum Autostart eines Services wurde unter Ubuntu 20 entwickelt und funktioniert auf anderen Linuces evtl. anders.

Nun kann man das Programm bequem mit systemctl start jamulus starten, mit systemctl stop jamulus beenden und mit systemctl status jamulus den Status abfragen. Damit es beim Systemstart automatisch gestartet wird, verwendet man systemctl enable jamulus. Das kann mit systemctl disable jamulus rückgängig gemacht werden.

Falls der Server durch eine Firewall geschützt wird, muss man dort den Port 22124/UDP freigeben. (IONOS-vServer werden durch eine Hardware-Firewall geschützt, die man nicht über den Server, sondern über die Server-Kontroll-Seite im Kundenbereich der IONOS-Homepage konfiguriert.)

Das Jamulus-Serverprogramm wird über folgende Kommandozeilenoptionen gesteuert. Typisch wäre

jamulus -s -n -T -u 20

Die Option -s lässt das Programm im Server-Modus starten, -n deaktiviert die Benutzeroberfläche, die wir auf dem Server nicht benötigen, -T aktiviert Multithreading. -u gibt die max. Anzahl der Clienten an, die sich verbinden dürfen.

Es existiert eine Option -F Fastupdate, die die internen Puffer serverseitig auf 64 samples verkleinert. (Um das zu nutzen, muss in den Einstellungen des Klienten die Option Aktiviere kleine Netzwerkpuffer gewählt werden.) Das kann die Latenz etwas verbessern — um den Preis einer höheren Serverlast. Bei mehr als 10 Teilnehmern würde ich es nicht empfehlen.

Serverlast

Hier die Netzlast einer Chorprobe mit 37 Teilnehmern:

Spitzenlast: 14MBit/s jeweils in/out

Hier die CPU-Last der gleichen Probe:

155% Last (von max. 400% bei 4 CPUs)

Ein Low-Latency-Kernel bringt uns nichts. Er würde zwar die Latenz einer Audio-Ausgabe direkt am Server verbessern, aber auch die CPU-Last erhöhen. (Der Server steht typischerweise im Rechenzentrum, dort hört selten jemand zu. 😉)

Die Festplatte des Servers wird quasi nicht benutzt, es sei denn, man nimmt auf:

Aufzeichnung der Probe

Der Server kann die Sitzung aufzeichnen, und zwar jede Spur einzeln. Man könnte also im Nachhinein einen Mix erstellen. Da unkomprimiert im WAV-Format aufgezeichnet wird, muss man genügend Speicherplatz vorhalten: 5,5 MB pro Minute ergeben bei einer zweistündigen Probe mit 37 Teilnehmern ca. 24,4 GB.

Um aufzunehmen, reicht es, die Kommandozeile zur Steuerung um den Parameter -R zu ergänzen, gefolgt vom Pfad für die Aufnahmen, also z.B.

-R /home/jamulus/recording/

Der Pfad muss natürlich existieren. Zu den Audiodateien erstellt Jamulus Audioprojekte im Format der Programme Reaper und Audacity.


Diese Anleitung wird laufend ergänzt. Ich freue mich über Feedback!

Welche Mikrofone, Audiointerfaces usw. funktionieren mit Jamulus?

zurück zum Beitrag „Gemeinsam musizieren mit Jamulus“

Welche Mikrofone, Headsets und Audiointerfaces funktionieren mit Jamulus? Hier meine höchst subjektiven Erfahrungswerte.

Ein typisches Chorleiter-Setup ist unten skizziert.

Vorbemerkung

Jamulus ist urspünglich für den Einsatz mit professioneller Audiohardware gedacht, wie sie in Tonstudios eingesetzt wird. Damit erreicht man nicht nur die beste Klangqualität, sondern auch die geringstmögliche Verzögerung. Diese Hardware wird mit vom Hersteller programmierten, hochoptimierten Treibern geliefert — unter Windows sind das Treiber, die dem ASIO-Standard entsprechen.

Preisgünstige Hardware kommt ohne solche ASIO-Treiber. Dann benötigt man unter Windows ein Hilfsprogramm, das den vorhandenen Treiber ASIO-fähig macht: das Programm ASIO4ALL. Der Treiber wird dadurch nicht hochoptimiert, das Timing bleibt schlecht — aber es geht wenigstens irgendwie. Es ist ein Kompromiss!

Audiohardware unterstützt verschiedene Abtastraten (= Samplingfrequenzen). Jamulus erzwingt die Abtastrate 48 kHz.

Für den mittelgroßen Geldbeutel empfehle ich ein USB-Mikrofon — klanglich viel besser als ein Headset! Einen Kopf- oder Ohrhörer besitzt man ja meist schon.

Übersicht

Alle hier genannten Geräte habe ich persönlich mit Jamulus getestet. Es gibt sicherlich noch andere gute Hardware.

Audiointerfaces und Digitalmixer

Sinnvoll, wenn man bereits ein gutes Bühnen- oder Studio-Gesangsmikrofon mit XLR-Anschluss besitzt, noch ein E-Piano anschließen will usw.

🟢 Focusrite Scarlett Serie
Scarlett Solo, auch als Bundle oder größer: Scarlett 2i2 oder Scarlett 4i4 (Dieses Modell verwende ich selbst.)
Low-Latency-Treiber für Mac
Typisches Chorleiter-Setup

🟢 Behringer Xenyx Q802 USB
Preisgünstige Mischung aus Audiointerface und Mischpult. Die Latenz ist schlechter als beim Focusrite. Trotzdem eine gute Lösung, zB für Chorleiter, die mit Mikrofon und E-Piano zu hören sein wollen.

🟡 Behringer U-Phoria UMC22
Treiberprobleme am Mac, Betrieb nur mit 256 Samplebuffer möglich.

Außerdem benötigt man einen Kopfhörer und, wenn man zu Plosiva neigt, ein Poppschutz. Zusätzlich ein Mikrofonstativ. Von Tischstativen rate ich ab: Erstens reflektiert die Tischplatte den Schall (➝Kammfiltereffekt), zweitens soll man nicht unbedingt nach unten singen und drittens gibt es Mikroständer schon für kleines Geld. Mal abgesehen davon singt es sich im Stehen wesentlich besser. 😉

USB-Mikrofone

Statt eines üblichen Mikrofons und eines Audiointerfaces kann man auch ein USB-Mikrofon verwenden, dann hat man beides in einem.

🟢 Røde NTUSB
Einstieg in die professionelle Mittelklasse, sehr gutes Allround-Mikrofon, auch für Homerecording. Mit regelbarem Kopfhörerausgang.

🟢 Marantz MPM-1000U
Sehr gutes Preis-Leistungsverhältnis (49€). Meiner Meinung nach die beste Lösung für Chöre.

🔴 Bietrun UMKF01USB
Brummt und rauscht, Direktsignal ist nicht abschaltbar.

🔴 FiFine USB-Mikrofon
Viel zu hohes Grundrauschen. Schade, das Design ist super!

🟡 Superlux E431U
Guter Klang, viele Einstellmöglichkeiten, leider kein Stativgewinde. Gut für Mac und Linux, unter Windows und ASIO4ALL Störgeräusche.

Ich habe eine Reihe billiger USB-Mikrofone (unter 45€) getestet. Leider hatten sie alle ein extremes Grundrauschen, was sie für Jamulus unbrauchbar machte. Einige haben sogar extrem gestottert, weil der verbaute Chip zu langsam war. Ich würde mich über gegenteilige Erfahrungsberichte freuen!

Analoge Mikrofone

Zu empfehlen, wenn man bereits ein Audio-Interface oder Mischpult mit Phantomspeisung besitzt.

🟢 Audio Technica AT2020
Klarer Preis-Sieger!

🟢 AKG C 3000
Seidiger, etwas unauffälliger Klang.

🟢 Røde NT-1A
Einstieg in die professionelle Mittelklasse, sehr gutes Allround-Mikrofon, auch für Homerecording.

Randbemerkung: Ein wirklich professionelles Studiomikrofon kostet über 2.000 €. Man kann in diesem Bereich viel Geld versenken! Es geht immer noch ein bisschen besser und teurer!

Kopfhörer

(kommt demnöchst)

Headsets

Hier steht, weshalb ich nicht viel von Headsets halte.

🟢 Sennheiser PC 8.2 Chat
Leicht und gut, etwas leise.

🟢 Logitech 960
Preisgünstige Alternative, nicht ganz optimaler Tragekomfort.

🔴 Logitech H340
Funktioniert nicht mit 48 kHz.

🔴 Monon 2-in-1 Telefon Headset
Brummt, unbrauchbar.

Übrigens:

In die von Jamulus angezeigten Gesamtverzögerung ist die Latenz der Audio-Hardware nicht eingerechnet. Es gibt Riesenunterschiede, je nachdem, ob die Hardware ein paar Cent oder ein paar Euro kostet!

Jede Funkstrecke erhöht die Latenz! Das gilt für WLAN ebenso wie für Funk- oder Bluetooth-Kopfhörer.

Typische Chorleiter_innen-Setups

Welches Setup am geeignetsten ist, hängt davon ab,

  • was man an Hilfsmitteln einsetzt: E-Piano? MP3-Zuspieler? Metronom?
  • welche Hardware man schon besitzt.
  • wie technikverliebt man ist: Ob man Aufgabenstellungen lieber virtuell (also im Computer) löst, oder „draußen“, mit Reglern zum Anfassen.

Einige Kollegen setzen sich mit einem USB-Mikro ans akustische Klavier und platzieren das Mikro so, dass die Balance zwischen Stimme und Instrument passt. Das ist natürlich am einfachsten.

Hier ein typisches Setup zur Leitung von Online-Proben über Jamulus. An das Mischpult kann man noch ein Metronom oder MP3-Player bzw. Smartphone für Hörbeispiele und Playbacks anschließen.

Die Tonmischung erfolgt über physische Regler, das ist einfach zu bedienen.

Analogmischpult und Audiointerface lassen sich zu einem Digitalmischpult mit USB-Ausgang zusammenfassen, zB dem Behringer Xenyx 802 USB.

Weniger Kabelage hat man mit einem Audiointerface, das mehr als zwei Eingänge hat und eine virtuelle Mischpult-Software mitbringt. Dann wird im Computer gemischt. Ich verwende das Focusrite Scarlett 4i4 Mein Setup dafür habe ich hier beschrieben.


Diese Liste wird ständig gepflegt und erweitert. Alle genannten Geräte wurden von mir persönlich getestet und dazu im Fachhandel zum regulären Preis erworben.

2

Du willst Jamulus auf Deinem Computer unter Windows 10 benutzen… (Eine Schritt-für-Schritt-Anleitung)

zurück zum Beitrag „Gemeinsam musizieren mit Jamulus“

Eine Schritt-für-Schritt-Anleitung

Szenario

  1. Du willst Jamulus auf Deinem Computer unter Windows 10 benutzen.
  2. Du hast ein Mikrofon und einen Kopfhörer, vielleicht beides in einem Gerät vereint.
  3. Prinzipiell funktionieren diese Geräte, z. B. für Zoom.
  4. Der Hersteller der Geräte hat keinen speziellen ASIO-Treiber zur Verfügung gestellt. (Sonst würden wir diesen verwenden, den folgenden ersten Schritt überspringen und mit dem zweiten Schritt fortfahren.)

1. Schritt: ASIO-Treiber installieren

Der Haken:

Jamulus benutzt zum Einbinden Deiner Audiogeräte nicht die normalen Windows-Audiotreiber, sondern benötigt einen für musikalische Zwecke besonders geeigneten, latenzarmen ASIO-Treiber. Dieser wird von den Herstellern professioneller Musikausrüstung speziell erstellt. Consumer-Geräten liegt ein solcher Treiber nicht bei.

Die Lösung:

Um trotzdem mit preisgünstigen Mikrofonen usw. arbeiten zu können, gibt es erfreulicherweise eine Lösung: Das Programm ASIO4ALL verpackt den normalen Windows-Treiber so, dass er von Jamulus als ASIO-Treiber erkannt wird!

Besuche www.asio4all.org und lade den neuesten deutschsprachigen ASIO4ALL-Treiber herunter. Während des Herunterladens ignoriere die lästige Werbeanzeige.

Nach dem Herunterladen fragt Dich Windows: Wie möchten Sie mit ASIO4ALL [...] verfahren? Wähle Ausführen.

Dann fragt Windows: Möchten Sie zulassen, dass durch diese App von einem unbekannten Herausgeber Änderungen an Ihrem Gerät vorgenommen werden? Antworte mit Ja.

Es öffnet sich der ASIO4ALL Installationsassistent. Klicke auf Weiter, stimme den Nutzungsbedingungen zu, ein paarmal auf Weiter, bis die Installation abgeschlossen ist. An etwaigen Voreinstellungen musst Du nichts ändern.

Starte den Computer neu. Sicher ist sicher.

Am unteren Bildschirmrand befindet sich die dunkelgrau unterlegte Taskleiste mit Symbolen. Rechts befindet sich u. a. ein Lautsprechersymbol. Klicke es mit der rechten Maustaste an. Ein Menü klappt auf. Wähle Sound-Einstellungen öffnen.

Unter Ausgabegerät kannst Du im Ausklappmenu eine Auswahl treffen. Leider sind die Bezeichnungen etwas kryptisch. Wähle die, in der der Name Deines Headset-Herstellers vorkommt, oder mindestens das Kürzel USB. Wähle nicht High Definition Audio Device aus, das sind die eingebauten Lautspecher des Computers.

Unter Eingabegerät wähle im Ausklappmenu Dein Mikrofon aus. Evtl. ist das der gleiche Eintrag wie eben. Klicke auf Geräteeigenschaften. Unter dem Punkt Lautstärke kannst Du einstellen, wie sehr Dein Mikrofonsignal vorverstärkt wird, wenn es im Computer ankommt. Das ist Deine Mikrofon-Lautstärke, der Pegel, den Du an Jamulus sendest — eine wichtige Einstellung, die wir später wieder benötigen werden. Stelle für den Augenblick 80 ein, das ist ein guter Startwert. Schließe das Fenster wieder.

2. Schritt: Jamulus installieren

Lade die aktuelle Jamulus-Version hier herunter. Wieder wirst Du gefragt werden: Wie möchten Sie mit Jamulus [...] verfahren? Wähle Ausführen.

Wieder fragt Windows: Möchten Sie zulassen, dass durch diese App von einem unbekannten Herausgeber Änderungen an Ihrem Gerät vorgenommen werden? Antworte mit Ja.

Es öffnet sich der Jamulus-Installationsassistent. Akzeptiere die Nutzungsbedingungen und klicke Dich durch die Installation. An den voreingestellten Werten sollst Du nichts ändern. Danach ist Jamulus installiert.

Beende alle noch laufenden Programme, insbsondere solche, die Ton abspielen könnten, insbesondere den Webbrowser. Starte Jamulus: Klicke auf das Windows-Symbol ganz links unten in der Taskleiste und wähle aus dem sich öffnenden Menü Jamulus aus. Oder klicke auf das Jamulus-Symbol, das auf der Schreibtischoberfläche angelegt wurde.

3. Schritt: Jamulus einrichten

Im Jamulus-Fenster klicke auf den Knopf links neben Einstellungen. Das Einstellungsfenster öffnet sich. Klicke links unten auf ASIO-Einstellungen. Das ASIO4ALL-Fenster öffnet sich. Im linken Bereich sind Deine Audiogeräte aufgelistet.

Mit dem Schraubenschlüssel-Symbol rechts unten öffnest Du die Detaileinstellungen. Dadurch erscheint im linken Bereich ein kleines Pluszeichen vor der Liste der Soundkarten.

Klicke darauf. Nun erscheinen die Ein- und Ausgabegräte Deiner Soundkarte.

Wähle die richtigen aus, indem Du den Schalter links des Namens aktivierst, so dass er türkis leuchtet. Wenn mehrere zur Auswahl stehen: Wähle genau ein einzelnes Eingabe- und ein einzelnes Ausgabe-Gerät aus.

Allerdings werden Deine Soundkarten und Audiogeräte anders heißen als hier im Beispiel. Sie können die unterschiedlichsten Namen haben. High Definition Audio-Gerät, das sind der eingebaute Lautsprecher und das eingebaute Mikrofon Deines Computers. Viele eingebaute Soundkarten heißen Realtek. Ein USB-Gerät würde wahrscheinlich das Kürzel USB irgendwo im Namen führen.

Schließe das ASIO4ALL-Fenster wieder. Du bist jetzt wieder im Einstellungsfenster. Stelle rechts oben bei Audiokanäle bitte "Mono-In/Stereo-Out" ein und setze den Pegel für neue Teilnehmer auf "50%". Schließe das Fenster.

Klicke am oberen Fensterrand auf Ansicht, dann auf Mein Profil...
Gib Deinen Namen ein. Der Rest ist nicht wichtig. In Chorproben hat es sich bewährt, das Kürzel der Stimmlage vor den Namen zu setzen, also „S1 Selina“ oder „B Rüdiger“.

Klicke auf Stummschalten, dann auf Verbinden. Eine Liste öffentlicher Jamulus-Server öffnet sich, aber das interessiert uns nicht. Unten kann man eine Serveradresse eingeben. Gib dort die Adresse unseres privaten Jamulus-Servers ein, die Du einer E-Mail oder einer internen Homepage entnommen hast. Klicke auf Verbinden.

4. Schritt: Inbetriebnahme

Links unter Eingang siehst Du eine große Pegelanzeige. Wenn Du singst, sollte sie ausschlagen und in Deinen lautesten Momenten den gelben Bereich* touchieren. Falls Du Dein Mikro lauter oder leiser stellen musst: Das geht wie oben unter Punkt 1 beschrieben.

*Die unterschiedlichen Farben sind nicht sichtbar, wenn Du in den Einstellungen als Oberfläche kompakt gewählt hast.

Du solltest Dich nun auch im Kopfhörer hören.

Falls nur Gestotter zu hören ist, braucht Deine Hardware-Kombination mehr Timing-Spielraum. Setze in den Jamulus-Einstellungen unter Soundkarte die Puffergröße von 5,33 ms auf 10,67 ms hoch.

Hebe nun Deine Stummschaltung auf.

Im rechten, größeren Teil des Fensters siehst Du ein Mischpult. Jeder Teilnehmer erhält einen eigenen Kanalzug. Jeder kann sich seinen eigenen Mix erstellen, andere Teilnehmer individuell lauter oder leiser machen, und so die für ihn perfekte akustische Umgebung schaffen. Achte auf Deinen eigenen Kanal dort. Schlägt der Pegel aus, wenn Du sprichst? Dann spielt Jamulus Dein Signal erfolgreich zurück. Alle können Dich jetzt hören!

Der Rest folgt aus der Praxis...


Fehlt in dieser Beschreibung etwas Essentielles? Ich freue mich über Verbesserungsvorschläge!

Dieser Beitrag wird ständig erweitert und verbessert. Letzte Änderung: 17.2.21

Converting Logic files, I’m not working magic. What I do is open the files in legacy versions of the software, then re-saving them in order to make them compatible with recent iterations of the software. Sometimes, several iterations through differenent software versions are necessary. This being said, I’m totally dependent on the original programs to read what you have.

My setup includes:

  • Current Mac (MacBook Pro (2021) with M1 Pro CPU)
    • Logic Pro X, current version
  • Several Intel Macs
    • Logic Pro X, current version
  • PowerPC G4 Mac running OS X 10.5.8
    • Logic Pro 7.0.1
    • Logic Platinum 6.3.3
    • Logic Audio 5.5.1
  • PowerMac 9500 running OS 9.0.4
    • Logic Audio Platinum 4.7.0
    • Logic Audio Platinum 4.0.4
    • Logic Audio 2.6.6
  • Atari Mega-STE running TOS 2.06
    • C-LAB Notator 3.0
  • Atari 1040STF running TOS 1.04
    • C-LAB Notator 3.0

I do not currently have Logic running on a Windows PC.

Die kostenlose App erleichtert das dezentrale Aufnehmen einzelner Sänger, um sie später zu einem virtuellen Mix zusammenzufügen.

Während der Pandemie ist es in Mode gekommen: Jeder Chorsänger singt im stillen Kämmerlein ins Aufnahmegerät und schickt die Aufnahme an den Chorleiter, der dann einen schönen Mix erstellt. (Ich habe dieses Konzept Corona-Mix getauft.)

Bisher musste man die Playbacks herunterladen, brauchte zum Aufnahmegerät noch ein Abspielgerät, musste sehr große E-Mails verschicken… alles etwas unpraktisch.

Ta-Daaa! 🥳

Es gibt eine kostenlose App, den Virtual Choir Recorder, die das alles auf einmal kann. Auf deren Website findet man Links zum Google Play Store bzw. Apple App Store.

Bedienung

Leider ist das Programm so neu, dass es noch nicht deutsch lokalisiert ist.

Man muss ein Profil erstellen, d.h. sich mit E-Mail-Adresse und einem selbstgewählten Passwort registrieren und danach anmelden. Außerdem braucht man einen chorspezifischen Code (Choir Code), den man von seinem Chorleiter bekommt.

  1. Man schließt einen Kopfhörer an
  2. Man tippt auf New Recording
  3. Man wählt einen Backing-Track, z. B. Stille Nacht A, wenn man Alt singt.
  4. Mit Play und Stop kann man ein wenig üben
  5. Mit Start Recording kann man sich aufnehmen
  6. Mit Listen to my Recording kann man die Aufnahme überprüfen und mit Save Recording speichern.
  7. Wenn man genügend Aufnahmen zusammen hat, geht man über das Hauptmenu zu My Recordings. Dort wählt man die beste Aufnahme aus und tippt auf Upload. Sie wird nun automatisch zum Chorleiter hochgeladen.

Ich finde, das erleichtert den Workflow massiv!

Da ich als Chorleiter in der App nur einen Chor einrichten konnte, seht Ihr bei den Backing-Tracks übrigens Playbacks aller meiner Chöre. Ihr werdet das Richtige schon finden!


Häufig gestellte Fragen

Wo sind die Songs? Ich sehe nur Playbacks von Beauty and the Beast? Du hast den falschen Choir Code eingegeben.

Wo muss ich Deine E-Mail-Adresse eingeben? Das musst du gar nicht: Die App weiß aufgrund des Choir Code, an wen es die Aufnahme schicken soll.

Warum habe ich Störgerausche vom Ohrhörerkabel auf der Aufnahme? Dein Ohrhörer hat wahrscheinlich ein eingebautes Mikrofon, das automatisch aktiviert wird.
Ungelöstes Problem am iPhone (ohne 3,5-mm-Kopfhöreranschluss), wenn man Apples (Kabel-) Ohrhörer verwendet: Der Eingang wird dann automatisch auf das Mikro am Ohrhörer umgeschaltet. Das macht für unsere Zwecke keinen Sinn. Ich habe beim App-Entwickler nachgefragt, aber noch keine Antwort erhalten.
Evtl. kann man mit einem Adapter (z. B. diesem hier) abhelfen: Man kann dann einen üblichen Ohrhörer verwenden. Früher lag so etwas bei. Vorsicht: In Apples Adapter passen nur sehr schlanke Stecker. Oder man verwendet Bluetooth-Kopfhörer (ohne Mikro).
Das iPhone hat keine systemweite Toneingangs-Auswahl. 🤬

2

Jamulus ist eine kostenlose Software, die es erlaubt, miteinander über das Internet zu musizieren. Die Zeitverzögerung („Latenz“) wird dabei durch verschiedene Maßnahmen auf ein (fast) erträgliches Minimum reduziert.

Jamulus ist eine kostenlose Software, die es erlaubt, miteinander über das Internet zu musizieren, mit bis zu 100 Teilnehmern. Die Zeitverzögerung („Latenz“) wird dabei durch verschiedene Maßnahmen auf ein erträgliches Minimum reduziert.

Diese Informationen waren ursprünglich für meine Chormitglieder gedacht und sind auch so formuliert. Sie könnten aber für Dritte nützlich sein, deshalb habe ich sie öffentlich gestellt. Alle Angaben beziehen sich auf die aktuelle Jamulus-Version 3.9.1.

Woher kommt eigentlich diese Latenz?

Es gibt durchaus verschiedene Schuldige! Die Signale werden zu einem zentralen Server gesendet, dort gemischt und wieder zu Dir zurückgespielt. Das dauert! Wir müssen diese Signalkette optimieren.

Was braucht man alles?

(Es gibt eine eigene Seite mit konkreten Geräte-Empfehlungen.)

  1. Mikrofon. Ein hochwertiges klingt besser. Ein Headset ist nicht ideal. Das eingebaute Mikro des Laptops ist nicht geeignet. Brauchbare USB-Mikrofone gibt es schon ab 50 €.
  2. Computer. Die Anforderungen an den Computer sind nicht hoch, er muss nicht besonders neu oder schnell sein, aber er muss per Netzwerkkabel mit dem Internet verbunden sein, ohne dass eine Funkstrecke dazwischen liegt. (Aus diesem Grund sind die meisten Tablets oder Smartphones leider außen vor.) Eine Kamera ist nicht nötig. Betriebssystem: Windows 10, macOs oder Linux.
  3. Soundkarte. Das ist das Bauteil, das den Ton digital wandelt. Heute sind das keine Platinen mehr, sondern kleine Chips, aber die Bezeichnung hat sich gehalten. Sie ist im Computer eingebaut, oder in einem Zusatzgerät.
    Die Soundkarte im Computer ist recht langsam, das ist Teil des Problems. (Es ist ja auch egal, ob beim normalen Musikhören der Ton eine Fünftelsekunde später kommt.) Idealerweise verwenden wir ein externes Audiointerface, aber das wird vielen zu teuer sein. Unter Windows benötigt man einen ASIO-Audiotreiber. Wenn der Hersteller der Soundkarte keinen mitliefert, gibt es hilfsweise den Treiber ASIO4ALL, der aus dem Systemtreiber einen ASIO-Treiber macht.
  4. Internet-Verbindung. WLAN ist zu träge, man muss eine Kabelverbindung zum heimischen Router herstellen. Ein Netzwerkkabel kostet 8 €. Falls der Computer keinen Netzwerkanschluss („Ethernet“) hat, kommen 11 € für einen Ethernet-USB-Adapter dazu. Die Internet-Datenrate ist in der Regel nicht das Problem: 1 MBit/s Down- und Upstream reichen aus, das schafft selbst ein „kleiner“ DSL-Anschluss.
    Wichtiger ist, dass der Jamulus-Server schnell erreichbar ist. (Die Zeit dafür nennt man Ping. Ein Ping von unter 20 ms wäre sensationell.) Das hängt davon ab, wieviele Zwischenstationen die Verbindung passieren muss. Diesen Punkt können wir nicht beeinflussen. (Es sei denn… Lies hier weiter.)
  5. Einen zentralen Server pro Gruppe, der das alles koordiniert. Der Chor kann selbst einen einrichten, hier ein paar Tipps dazu, oder bezieht sich auf die Liste öffentlicher Server innerhalb der Jamulus-Software. (Man wäre dann allerdings nicht unter sich.) Man kann einen Server auch stundenweise mieten.
  6. Kopfhörer. Das Signal kommt vom Server auf dem gleichen Weg zurück, wird durch die Soundkarte gewandelt (= schon wieder Latenz) und landet in Deinem Kopfhörer. Würde man einen offenen Lautsprecher verwenden, würden wir nur ein furchtbares Rückkopplungspfeifen hören. Das Lautsprechersignal wird nämlich vom Mikro aufgenommen, wieder ausgegeben, wieder aufgenommen, wieder ausgegeben, wieder aufgenommen, wieder ausgegeben, wieder aufgenommen, wieder ausgegeben, wieder aufgenommen usw. Eine Schleife eben.
    Funk- oder Bluetooth-Kopfhörer erhöhen die Latenz um mindestens 150 ms und sind daher nicht zu gebrauchen. Der Kopfhörer kann mit einem Mikrofon kombiniert sein (Headset), allerdings halte ich davon nichts.

Strategie

Um nicht unnötig viel Geld auszugeben und trotzdem möglichst viele im Boot zu haben, sollten wir für einen ersten Testlauf folgendermaßen vorgehen:

Wir probieren das Ganze aus, und zwar mit der internen Soundkarte Eures Computers. Vielleicht ist sie ja schnell genug. Ihr braucht also nur Mikro und Kopfhörer (am besten ein Headset) und ein Netzwerkkabel.

Wenn wir mit diesen Maßnahmen eine erträgliche Latenz erreichen: OK. Wenn nicht, müsste ein externes Audio-Interface her — oder man nimmt nur als Zuhörer teil: Dann ist die Verzögerung egal, und man kann die Netzwerkpuffer auf Maximum setzen, um möglichst wenige Aussetzer zu hören.

In die von Jamulus angezeigten Gesamtverzögerung ist die Latenz der Audio-Hardware nicht eingerechnet. Es gibt Riesenunterschiede, je nachdem, ob die Hardware ein paar Cent oder ein paar Euro kostet!

Einkaufstipps

  • LAN-Kabel („Ethernet-Kabel“) (ca 8 €) bei Amazon
  • evtl. Adapter Ethernet-USB bei (ca 11 €) bei Amazon

Hat mein Computer eine Ethernet-Buchse für das LAN-Kabel, oder benötige ich einen Adapter? Desktop-PCs haben sie in der Regel, Laptops nur manchmal. Sie sieht so aus:

Ethernet-Anschluss

Empfehlungen zu Mikrofonen, Audiointerfaces und Headsets stehen auf einer­ eigenen Seite.

Software und Inbetriebnahme

Die Software Jamulus gibt es kostenlos hier. Dort wird auch die Installation für die verschiedenen Betriebssysteme erklärt. Für Windows-Anwender ohne spezielle Audiohardware mit eigenem Treiber wird dort die Installation des Treibers ASIO4ALL beschrieben.

Problem: Da steht, man muss Windows 10 verwenden. Meine Windows-Version ist aber älter! Was mache ich jetzt?

Lösung: (War das Upgrade auf Windows 10 nicht kostenlos?) Ich stelle Dir unter folgendem Link eine ältere Jamulus-Version zur Verfügung, die mit vorigen Windows-Versionen funktioniert (bis zurück zu XP). Allerdings kann sie nicht alles, was die aktuelle Version kann.

Insbesondere die Seiten Erste Schritte und Nach der Installation kann ich sehr empfehlen. Es soll sogar Leute geben, die das Handbuch gelesen haben.

Weil die Installation von Jamulus mit ASIO4all unter Windows nicht ganz einfach ist, habe ich dem Thema eine eigene Seite gewidmet, die in sehr kleinen Schritten erklärt, was zu tun ist.

Die Bedienung des Programms selbst ist recht simpel. Im Prinzip handelt es sich um ein glorifiziertes Mischpult.

Die Internet-Adresse unseres privaten Jamulus-Servers habt Ihr in einer E-Mail erfahren, oder sie steht auf einer internen Webseite. Ihr müsst Euch in der App stummschalten, dann auf Verbinden klicken und dann diese Adresse eingeben.

Weil der vorherige Satz immer wieder ignoriert wird, nochmal langsam zum Mitschreiben: Schaltet Euch stumm, bevor Ihr Euch verbindet!
Typisches Szenario: Man schaltet sich nicht stumm, verbindet sich erfolgreich und realisiert nicht, dass die anderen einen jetzt hören können. Meist hören die anderen: „Karl, es klappt net. Isch wees net, was isch mache soll. Machemol die Kischediah zu!“ Das stört die laufende Probe geringfügig!
Auch wenn Ihr Euch stummgeschaltet habt, hört ihr Euch noch selbst, d.h. Euer vom Server zurückkommendes Signal. Das sollte der letzte Check sein, ob alles OK ist. Wenn ja, dann ab in die Probe: Stummschaltung aufheben!

Bitte haltet unsere private Serveradresse geheim. Man kann sich in der App auch mit einem öffentlichen Server verbinden und den Kollegen beim Musizieren zuhören.

Testlauf

Mein Server ist die ganze Zeit online. Man kann das System also jederzeit* testen — nur ist man dann vielleicht der Einzige. Man kann mit den Pegeln experimentieren und überprüfen, ob das eigene System übertrieben rauscht oder brummt. Man kann natürlich auch einen öffentlichen Server dafür verwenden.

*außer montags bis donnerstags ab 19 Uhr. Da brauche ich den Server nämlich für meine eigene Chorprobe. 😉

Was man ganz alleine super testen kann:

Links im Jamulus-Fenster siehst Du eine große Pegelanzeige, überschrieben mit Eingang. Dort siehst Du, ob Du ein Signal ins System gibst. In Deinen lautesten Momenten sollte der Pegel die gelbe Zone erreichen, keinesfalls die rote. Wenn Du zwei Mikrofone hast (z.B. eins im Laptop, eins im Headset), stelle sicher, dass das richtige von beiden aktiv ist.

Rechts daneben siehst Du das Mischpult. Jeder Teilnehmer erhält einen eigenen Kanalzug. Schlägt in Deinem Kanal der Pegel aus? Dann wird Dein Signal vom Server an Dich und alle anderen zurückgespielt. Es klappt! Hier kannst Du regeln, wie laut Du Dich hören willst. Überprüfe Dein Signal auf Störgeräusche, Rauschen, Brummen usw.

Da alle Beteiligten einen Kopfhörer tragen, sind ihre Ohren jedem Störsignal schutzlos ausgeliefert. Bedenke das, wenn Du hustest, Dein Headset auf den Schreibtisch knallst, mit den Kindern zeterst oder Deine Lautsprecher eingeschaltet hast, was zu einem hässlichen Pfeifen für alle führt.

Wichtig ist ein guter Mikrofonpegel. Den stellst Du nicht in der Jamulus-Software ein, sondern in den Systemeinstellungen Deines Computers. Wie das geht, ist von System zu System verschieden — bei Windows ist es richtig gut versteckt. Unten bei den Tipps stehen ein paar Hinweise dazu.

Ein sauberer Pegel erleichtert allen anderen das Einstellen eines guten Mixes!

Die Gesamtlautstärke dessen, was Du hörst, regelst Du am Lautstärkeregler Deines Computers wie immer. Mit dem Jamulus-Mischpult kannst Du genau festlegen, wie laut Du welchen Teilnehmer hören möchtest (einschließlich Deiner). Stelle bei den Einstellungen unter Audiokanäle bitte Mono-In/Stereo-Out ein. Dann kannst Du die anderen im Stereobild platzieren, z.B. Sopran nach links, Alt nach rechts. Dafür ist der PAN-Regler da (steht für Panorama).

Bitte gib (unter Einstellungen ➝ Mein Profil...) Deinen Namen ein, angeführt vom Kürzel Deiner Stimmlage, z. B. S1 Selina. Dann wähle unter Ansicht die Option Sortiere die Kanäle nach dem Namen aus. Dadurch wirst Du die anderen Teilnehmer nach Stimmgruppen sortiert sehen. Das ist übersichtlicher.

Falls Deine Soundkarte Direct Monitoring bietet, schalte es aus! Du würdest Dich sonst doppelt, leicht versetzt, hören.

Die leichte Verzögerung kann ablenken. Konzentriere Dich auch bei der eigenen Stimme auf das Signal, das vom Server kommt, nicht auf das, was Du über Kopfresonanz hörst. Das ist besser für das Timing.

Tipps zur Lautstärke

Um einen guten Chorklang hinzubekommen, empfehle ich, nicht leiser zu singen als in der Präsenzchorprobe. Man sollte auch den Kopfhörer auf typische Präsenzprobenlautstärke einstellen.

Evtl. mag der Chorleiter zum Beginn der Probe einen Pegelabgleich aller Teilnehmer anleiten. Dazu singen alle einen Ton mittlerer Lage und Lautstärke. Der Ausschlag sollte dann ungefähr in der Mitte liegen. Um nachzuregeln, sollte man wissen, wo man seine Eingangslautstärke einstellt.

Was tun, wenn’s nicht klappt?

Sehr viele Chorsänger haben es schon hingekriegt, vielleicht kann man sich untereinander helfen? Bei der Mischpult-Bedienung gibt es eine Lernkurve: In den ersten paar Proben übt man noch!

Wohlmeinende Menschen haben ein paar Tipps aufgeschrieben.

  • Ein Neustart wirkt manchmal Wunder!
  • Es gibt eine eigene Seite zu Fehlerbehebung und Problemlösungen.
  • Jamulus mag nicht mit anderen Programmen um die Audio-Hardware konkurrieren. Deshalb sollte am besten kein anderes Programm geöffnet sein.
  • Wenn man an einem Regler dreht, und es passiert nichts, dann dreht man evtl. am falschen Regler. (Wenn man z. B. das Headset-Mikro lauter machen will, sich aber in den Geräteeinstellungen des eingebauten Mikros befindet. Das war im Januar Fehler des Monats 🏅!)
  • Die anderen hören mich nicht, dabei habe ich mich schon viel lauter gemacht! — Wahrscheinlich hast Du Dich im Mischpult lauter gemacht, da wo jeder Teilnehmer einen eigenen Kanalzug hat. Damit regelst Du nur, wie laut Du (!) Dich (!) hörst. Was Du suchst, ist die Eingangslautstärke Deines Mikrofons. Das wird nicht im Jamulus-Programm eingestellt, sondern bei den Systemeinstellungen — s. u. unter Tipps: Mikrofonpegel einstellen (Windows 10). Das war übrigens im Dezember Fehler des Monats 🏅.

Wenn die Probleme nicht zu lösen sind, man das Mikro nicht zum Laufen bringt oder die Internetverbindung zu langsam und zu instabil ist, kann man immer noch passiv teilnehmen: als Zuhörer. Dabei steht man immer noch besser da als bei einer Probe über Zoom, denn man hört die anderen singen! Wer passiv teilnimmt, muss sein Mikrofon stummschalten, damit er den Server entlastet und nicht aus Versehen den Klang der anderen kontaminiert.

Auch wer den Kopfhörer absetzt, weil er den seinen Platz verlässt, muss sich stummschalten!

Und wenn ich keinen Computer besitze?

Die Anforderungen an den Computer sind niedrig. Vielleicht hat ein Verwandter oder Bekannter irgendwo ein Laptop rumliegen, das er nicht mehr verwendet, weil es zu alt ist? Wahrscheinlich kann man es trotzdem für Jamulus gebrauchen.

Dazu ein kleiner Erfahrungsbericht:

Weil ich selbst Windows normalerweise nicht nutze, meinen Chorsingenden aber Hilfe bei der Jamulus-Installation geben wollte, habe ich mir eigens ein Windows-Laptop angeschafft: Neun Jahre alt, auf Ebay 72 € inkl. Versand. Jamulus läuft problemlos darauf!

Noch ein Praxistipp

Falls Ihr nicht die einzigen Nutzer Eures Computers seid und die Audio-Einstellungen für Jamulus erfolgreich verdreht habt, denkt bitte daran, das für den Rest der Familie wieder zurückzubauen: Es wäre schade, wenn Euer Kind morgen früh beim Homeschooling nichts hört usw.


Zum Abschluss

Vielleicht muss man im eigenen Chor etwas Überzeugungsarbeit leisten. Einige werden den Aufwand scheuen oder ob der technischen Hürden zaudern.

Ich habe das so gelöst:

Im ersten Lockdown haben wir angefangen, über Zoom zu proben. Besser als nichts, aber auch nicht wirklich ideal. Dann kam der Sommer mit Proben im Freien, im Schichtbetrieb, mit Hygienekonzept und Auflagen. Beim zweiten Lockdown hatte niemand mehr wirklich Lust auf Onlineproben.

Ich hatte daraufhin meine Proben zweigeteilt: Die erste Hälfte über Zoom, die zweite Hälfte mit einer kleinen Schar Mutiger über Jamulus. Der Rest konnte per Livestream hören, wie wir gleichzeitig zusammen gesungen haben. Das motivierte! Jede Woche konvertierten ein paar zu Jamulus und irgendwann konnte ich die Zoom-Proben einstellen. Ich biete aber weiter einen Audio-Livestream an, außerdem Video per Jitsi.


Digitale Chorproben mit Jamulus, Erfahrungsbericht und exzellente Tipps des Jungen Kammerchors Rhein-Neckar, inkl. Probenmitschnitten! (Vielen Dank an Erik Burger!)

Proben mit Jamulus aus Orchestersicht auf der Website des Orchesters der Landesregierung Düsseldorf mit sehr detaillierten Einsteiger-Anleitungen. (Vielen Dank an Günter Plewnia!)

Anleitung Jamulus für Online-Chorproben (Vielen Dank an Heiko Ittig!)

Speedtest zur Latenz-Ermittlung der eigenen Internetverbindung


Diese Anleitung wird laufend ergänzt. Ich freue mich über Feedback!

My choir wants to advertise the number of rehearsals before the next concert on their website.

The problem

My choir wants to advertise the number of rehearsals before the next concert. We have a list of rehearsal dates and need to count those who have not yet passed.

The solution (JavaScript)

<div id="result"></div>
	
<script>
	
function dateDtoE(s)
{
  h = s.split(".");
  return '20' + h[2] + '-' + ('0'+h[1]).substr(-2) + '-' + ('0'+h[0]).substr(-2); 
}
	
var dates2go = [ '28.6.18','5.7.18','12.7.18','19.7.18','26.7.18','2.8.18','9.8.18','30.8.18'];

var count = 0;
var now = new Date();
var i = dates2go.length;
while(i){
  i--;
  h = dateDtoE(dates2go[i]);
  var test = new Date(dateDtoE(dates2go[i]) + 'T22:00:00');
  if(test > now)
    count++;
}
document.getElementById('result').innerHTML = '<p>Still ' + count + ' rehearsals!</p>';
</script>

The function dateDtoE converts a date from German format to javascript format, ie. from 13.6.18 to 2018-06-13.

When creating a Date object from the list of dates, the script assumes 10 p.m. as time of day. This is when our rehearsals usually end.

Note the use of a while loop. Lazybones might have used for(i=0;i<dates2go.length;i++), thus recounting the number of elements in the array for every iteration of the loop.

Extra: A solution in Ruby

I know next-to-nothing about ruby, sorry.

require 'time'

def dateDtoE(s)
  h = s.split('.');
  return '20' + h[2] + '-' + h[1] + '-' + h[0]
end

dates2go = ['28.6.18','5.7.18','12.7.18','19.7.18','26.7.18','2.8.18','9.8.18','30.8.18']
count = 0
now = Time.now()
dates2go.each{ |d|
  h = Time.parse(dateDtoE(d));
  if h > now 
    count += 1
  end
}
puts "Still #{count} rehearsals."

Note how the loop looks more elegant. Furthermore, ruby’s date parser doesn’t rely on leading zeros.