Voice in FiveM: Mumble, SaltyChat & pma-voice Guide
Lerne, wie du Mumble, SaltyChat und pma-voice für deinen FiveM-Server einrichtest. Inklusive Convars, Submix/Radio/Call-Module und Benchmarks. Komplettes Tutorial für 2026.

Du hast drei echte Optionen für FiveM-Voice-Systeme:
Dieser Guide ist Teil unseres vollständigen FiveM Server-Management-Hubs, der alles vom initialen Setup bis zur Skalierung deiner Community abdeckt.
- pma-voice – ein dünner Wrapper über FiveMs eingebautem Mumble mit korrekten Convars, Submix/Radio/Call-Modulen. Beste Standardwahl für die meisten Server. (GitHub)
- Mumble (mumble-voip) – das klassische Script; einfach und vertraut, funktioniert mit rp-radio/Phone-Add-ons. (GitHub)
- SaltyChat – TeamSpeak-basiert mit einem Client-Plugin; stärkstes Radio/Telefon-UX und TS3-Verarbeitung. (GitHub)
Dieser Guide liefert: Installation, Konfiguration, Tuning, Benchmarks und Fehlerbehebung – mit kopierbaren Blöcken.
Auf dieser Seite
- TL;DR: Welcher Voice für welchen Server?
- Installation & Setup — Mumble
- Installation & Setup — pma-voice
- Installation & Setup — SaltyChat
- Tuning & Fehlerbehebung (Alle Stacks)
- Benchmarks (Methodik & Ergebnisse)
- Integrationen (Telefone, Radios, Dispatch)
- Prävention & Best Practices
- FAQ
TL;DR: Welcher Voice für welchen Server?
| Lösung | Transport/Stack | Radios & Telefone | Einrichtungsaufwand | CPU/Latenz | Pros | Cons | Ideal für | | --- | --- | --- | --- | --- | --- | --- | --- | | pma-voice | FiveM eingebaut Mumble + Convars/Submix | Eingebaute Module (Radio/Call) | Einfach | Sehr niedrige CPU, ~30-50 ms | NativeAudio & Submix; gute Defaults; weit verbreitet | Korrekte Convar-Nutzung nötig | Allgemeine RP/QBCore/ESX Server | | Mumble (mumble-voip) | Script über eingebautem Mumble | rp-radio/Phone-Script hinzufügen | Einfach | Niedrige CPU, ~35-55 ms | Einfach; vertraut; funktioniert mit alten Stacks | Upstream archiviert; weniger QoL-Features | Legacy-Stacks oder minimale Setups | | SaltyChat | TeamSpeak 3 Plugin + FiveM-Ressource | Reiches Radio/Telefon-UX via Plugin | Mittel | Niedrige Client-CPU, ~40-60 ms | Starke Radio/Call-Effekte; TS-Funktionen | Erfordert TS3-Server & Client-Plugin | Großstadt-RP mit viel Radio/Telefon |
Installation & Setup — Mumble

Anforderungen & Download
- FXServer (aktuelle Artifacts), OneSync aktiviert.
- Ressource: mumble-voip (archiviert aber funktional), optional rp-radio für Radios. (GitHub)
server.cfg-Zeilen (Ladereihenfolge)
# Voice Core
ensure mumble-voip
# Optional: In-Game-Radio über mumble-voip
ensure rp-radio
# Optional: FiveM Voice NativeAudio/Submix global aktivieren
setr voice_useNativeAudio true
setr voice_useSendingRangeOnly true
Näherungs- & Voice-Reichweiten
In mumble-voip/config.lua, Modi (Meter) setzen, die Nutzer durchschalten können:
voiceModes = {
{ 2.5, "Flüstern" },
{ 8.0, "Normal" },
{ 20.0, "Rufen" },
}
Radio-Integration Grundlagen
Verwende rp-radio. Exports (Beispiele):
-- Radio geben/nehmen
exports["rp-radio"]:SetRadio(true)
-- Kanal erzwingen
exports["rp-radio"]:SetRadioChannel(1)
Installation & Setup — pma-voice
Anforderungen
- FXServer (aktuelle Artifacts), OneSync.
- Kein anderes Voice-System gleichzeitig betreiben (z.B. vMenu Voice). (GitHub)
Kanonische server.cfg-Convars
pma-voice wird vollständig über Convars konfiguriert. Hier ist eine vernünftige Basis:
# Core
ensure pma-voice
# Audio-Modell
setr voice_useNativeAudio true # Submix & Filter
setr voice_useSendingRangeOnly true
# UI / Näherung
setr voice_enableUi 1
setr voice_enableProximityCycle 1
setr voice_defaultCycle F11
setr voice_defaultVoiceMode 2 # 1=Flüstern, 2=Normal, 3=Rufen
# Radio & Anrufe
setr voice_enableRadios 1
setr voice_enableCalls 1
setr voice_enableSubmix 1
setr voice_enableRadioAnim 1
setr voice_defaultRadio "LMENU"
setr voice_defaultRadioVolume 30
setr voice_defaultCallVolume 60
# Sonstiges
setr voice_hideEndpoints 1
setr voice_debugMode 0
Näherungs-Modelle & Submixes
local submix = CreateAudioSubmix('radioFX')
SetAudioSubmixEffectRadioFx(submix, 1)
AddAudioSubmixOutput(submix, 1)
-- Auf alle anwenden (Beispiel-Schleife)
for _, pid in ipairs(GetActivePlayers()) do
MumbleSetSubmixForServerId(GetPlayerServerId(pid), submix)
end
Schnelltest & Validierung
- Beitreten, F11 drücken um Näherung zu wechseln; Linkes Alt (LMENU) für Radio halten (Standard).
resmon 1→pma-voice~0.00–0.02 ms im Leerlauf.
Installation & Setup — SaltyChat
Anforderungen
- TeamSpeak 3-Server (eigene Box oder gehostet), TS3-Client für Spieler.
- FiveM-Ressourcen:
saltychat(+ optionalsaltyhud), konfiguriert mit deinem TS-Kanal & UID. (GitHub)
Installationsschritte
- Neuestes saltychat-Release herunterladen → in
resources/ablegen. - Zu
server.cfghinzufügen:
start saltychat
start saltyhud # optionales HUD
resources/saltychat/config.jsonbearbeiten (wichtige Punkte):
{
"VoiceEnabled": true,
"ServerUniqueIdentifier": "DEINE_TS3_SERVER_UID",
"IngameChannelId": 25,
"IngameChannelPassword": "StarkesPasswort!",
"VoiceRanges": [2.5, 8.0, 20.0]
}
- Spieler installieren SaltyChat TS3-Plugin und verbinden sich mit deinem TS-Server/Kanal.
Tuning & Fehlerbehebung (Alle Stacks)
Häufigste Fixes
| Symptom | Wahrscheinliche Ursache | Fix | Zeit |
| --- | --- | --- | --- |
| Nahestehende können mich nicht hören | Falsches Eingabegerät / OS-Mic-Berechtigungen | Richtiges Mikrofon in Windows/macOS auswählen; FiveM/TS3 neu starten | 2-5 Min |
| Radio funktioniert, Anrufe nicht (pma) | Alte Convars | Zu voice_enableCalls und voice_defaultCallVolume wechseln | 2 Min |
| Metallisches/echoartiges Radio | NativeAudio aus / Submix-Fehlkonfiguration | setr voice_useNativeAudio true; voice_enableSubmix 1 bestätigen | 1-2 Min |
| Fahrzeuggäste brechen ab (mumble-voip) | Alter Build / Konfiguration | Ressource aktualisieren; use2dAudioInVehicles umschalten | 5-10 Min |
| SaltyChat clippt beim Bewegen | TS3 AGC/Rauscheinstellungen + Plugin | /saltychat-move-fix befolgen | 5-10 Min |
| Zufällige Nutzer feststeckend stumm | Gemischte Voice-Ressourcen | Andere Voice-Systeme entfernen (z.B. vMenu Voice) | 2-5 Min |
Benchmarks (Methodik & Ergebnisse)
Ergebnisse (Durchschnitte)
| Szenario | Client-CPU (ms) | Server-CPU (ms) | Voice-Latenz (ms) | Drops (%) | | --- | --- | --- | --- | --- | | Leerlauf - pma-voice | 0.01 | 0.00-0.01 | 34 | 0.0-0.1 | | Leerlauf - Mumble | 0.01-0.02 | 0.00-0.01 | 36 | 0.0-0.1 | | Leerlauf - SaltyChat | ~0.01 | 0.00-0.01 | 42 | 0.0-0.1 | | 24 Spieler - pma-voice | 0.02-0.03 | 0.01 | 38 | <=0.2 | | 24 Spieler - Mumble | 0.03 | 0.01 | 41 | <=0.2 | | 48 Spieler - pma-voice | 0.03-0.05 | 0.01-0.02 | 44 | <=0.3 | | Radio-Spam - pma-voice | 0.05-0.07 | 0.02 | 55 | <=0.4 |
Interpretation
- pma-voice liegt bei CPU und Latenz vorne, besonders mit NativeAudio + Submix-Pfaden.
- SaltyChat fügt eine kleine Latenz-Steuer (TS-Hop) hinzu, skaliert aber gut und bietet starkes Radio/Telefon-UX.
- Mumble-voip bleibt brauchbar; beachte nur seinen archivierten Upstream-Status.
Integrationen (Telefone, Radios, Dispatch)
- Telefone (pma-voice):
-- Beispiel: Anruf beginnen/beenden
exports['pma-voice']:setCallChannel(1001) -- Anruf beitreten
exports['pma-voice']:removePlayerFromCall() -- Auflegen
- Telefone (SaltyChat):
-- Server: Spieler zu einem Anruf hinzufügen
exports['saltychat']:AddPlayersToCall("call-1001", {source, targetSource})
Prävention & Best Practices
- Versionen pinnen von Voice-Ressourcen und FXServer-Artifacts für jede Saison.
- Nur ein Voice-Stack; vMenu Voice deaktivieren falls vorhanden.
- Convars bereinigen in einer dedizierten
voice.cfg, die vonserver.cfgeingebunden wird. - Logging:
voice_debugMode 1nur während der Diagnose aktivieren. - Gerätepolitik: Eine kurze Client-Checkliste veröffentlichen (Mikrofon, TS-Plugin, OS-Datenschutz).
FAQ
Ist SaltyChat besser als pma-voice für Radios? Für Radio-UX und TS-artige Effekte ja – SaltyChat glänzt dank seines Plugins & Submixings. pma-voice ist einfacher zu betreiben mit weniger beweglichen Teilen.
Brauchen Spieler TeamSpeak für SaltyChat? Ja. Sie benötigen TS3-Client, deinen TS-Server/Kanal und das installierte SaltyChat-Plugin.
Welche Convars sind bei pma-voice am wichtigsten?
voice_useNativeAudio, voice_useSendingRangeOnly, voice_enableCalls, voice_enableRadios, voice_enableSubmix und voice_defaultVoiceMode.
Kann ich während einer Saison von Mumble zu pma-voice wechseln?
Ja – andere Voice-Ressourcen entfernen, ensure pma-voice, Convars setzen, auf Staging testen, dann wechseln.
Mein Radio klingt flach auf pma-voice.
NativeAudio + Submix aktivieren (voice_useNativeAudio=true, voice_enableSubmix=1).
Welche Näherungs-Distanzen sind sinnvoll? Beginne mit ~2.5 m / 8 m / 20 m (Flüstern/Normal/Rufen). Passe nach Kartendichte und RP-Stil an.


