Natenoms Wiki

Weil Teilen Spaß macht :)

Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Übersetzungen dieser Seite:

Navigation



Lizenz dieses Wikis
Über dieses Wiki
Feed des Wikis
Impressum


Was gerade in meinem Blog geschieht:

mumble:anleitungen:mumble-mit-jack

Mumble mit Jack

Es gibt für Mumble einen inoffiziellen Patch für Jack von falkTX vom Januar 2011, welches leider bisher nicht im Mumble-Code gelandet ist. Der Code ist nicht ganz sauber, z. B. stürzt Mumble ab, wenn eines der Geräte von Ein- oder Ausgabe zwar JACK verwendet, das andere jedoch eine andere Schnittstelle.
Die Ergebnisse eines einfachen Tests dazu gibt es unter https://github.com/mumble-voip/mumble/pull/137.

Patches

Ursprung

Verbesserte Version

Seit Februar 2015 gibt es einen aktualisierten Patch von mkrautz, der eine Fehlerbehandlung besitzt, siehe hier.

Funktion

Dank Jack-Unterstützung erscheint für jede Mumble-Instanz jeweils ein eigener Ein- und Ausgabe-Kanal.

Bei uns funktioniert der Patch sowohl mit dem aktuell stabilen Mumble als auch mit der aktuellen Entwicklerversion.

Es gibt noch einen kleinen Zusatzpatch mit dem man die Jack-Ports selbst benennen kann, siehe im Blog. Dieser basiert jedoch auf dem alten Patch.

Vorteile gegenüber PulseAudio

  • Bei mir verstärkt PulseAudio das Eingangssignal und man übersteuert schnell.1)
  • Die CPU-Belastung von Mumble beträgt bei mir nur ca. die Hälfte im Vergleich zu Pulseaudio, einen Artikel dazu gibt es hier.
  • Auch Jack selbst braucht bei mir weniger CPU als PulseAudio.

Anleitung

Ubuntu

Wer mit Ubuntu arbeitet, kann erstmal diesen Einzeiler hier verwenden, um ein aktuelles Mumble 1.2.3 mit dem neuen Codec zu installieren: siehe hier.

Einen Einzeiler für die aktuelle Entwicklerversion mit Opus-Codec gibt es hier.

Man braucht die Header-Dateien von JACK:

sudo apt-get install libjack-jackd2-dev

Danach öffnet man das „gnome-terminal“ und wechselt ins Verzeichnis ~/mumble

cd ~/mumble

bzw.

cd ~/mumble-opus

Und dann:

git pull https://github.com/mkrautz/mumble jack_v2

Es kommt eine Fehlermeldung.

Dann (jetzt kommt bestimmt umständlicher Blödsinn, da ich mich mit git nicht auskenne):

git add .

Gefolgt von:

git commit -m jackpatch

Dann erneut:

git pull https://github.com/mkrautz/mumble jack_v2

Dann geht es weiter mit dem Bauen:

make distclean
qmake CONFIG+="no-pulseaudio no-server no-g15" main.pro -recursive

(sonst stürzt Mumble ab)

make -j$(($(grep processor /proc/cpuinfo | wc -l)+1))

Andere Systeme

Wer kein Ubuntu verwendet, der findet auf folgender Seite eine Anleitung, wie man es selbst kompiliert, siehe hier.

qmake-Optionen gibt es hier: Mumble qmake CONFIG Optionen.

Umstellen

Wenn die Kompilierung fertig ist, hat man ein Mumble mit Jack-Support :)

Vorausgesetzt, dass der JACK Server läuft, kann man nun bei Ein- und Ausgabe-Gerät jeweils JACK einstellen:

Mumble mit JACK-Unterstützung :)

Da es noch keine „Was-auch-immer-Überprüfungen“ in diesem Jack-Patch gibt, sollte man immer sowohl Ausgang als auch Eingang mit JACK verwenden, da sonst Mumble abstürzt.
Dies ist auch einer der Gründe, weshalb dieser Patch bisher nicht angenommen wurde. Weitere Ergebnisse dazu unter https://github.com/mumble-voip/mumble/pull/137.

Ergebnis

Jede so konfigurierte Mumble-Instanz taucht dann in JACK mit je einem Eingang und einem Ausgang auf:

Jede Mumble-Instanz erscheint mit eigenem Ein- und Ausgabe-Kanal

Ein schönes Standalone-Programm zum setzen von Verbindungen in JACK ist übrigens patchage.

Erweiterung für Jack

Man kann auch benannte Ports für Jack implementieren, damit man diese leichter unterscheiden kann, siehe unter Benannte Ports für JACK.

Weitere Inhalte mit Mumble und Jack hier im Wiki

1)
passiert in aktuellen Versionen bei mir nicht mehr
mumble/anleitungen/mumble-mit-jack.txt · Zuletzt geändert: 2015/11/26 19:31 von Natenom