How do you configure pma-voice and submixes? RAX Development sets up pma-voice (the standard FiveM proximity voice resource) on QBCore, ESX, and custom servers: install order, convars, radio/phone channels, and submixes so radio, calls, and megaphone audio sound distinct from normal proximity chat.
Quick answer: ensure pma-voice after framework → set native audio + voice convars → wire qb-radio / phone exports → register submix presets in client config → test with two clients. Voice setup help
What pma-voice is
pma-voice (community name; repo often AvarianKnight/pma-voice) replaces older Mumble wrappers for FiveM. It provides:
- Proximity voice — hear players near you based on 3D position
- Radio channels — job/personal radio when paired with qb-radio, mm_radio, etc.
- Phone / call audio — when integrated with your phone resource
- Submix support — EQ/filter effects on voice streams (radio “tin,” phone band, etc.)
Most 2026 RP templates ship pma-voice or document it; we align your pack so nothing still calls deprecated mumble-voip exports.
Base server configuration
- Download/update pma-voice to match your artifact build
ensure pma-voice in server.cfg after framework, before radio/phone scripts that depend on it
- Set recommended voice convars (version-specific — we use current upstream docs for your FXServer)
- Enable native audio path FiveM expects for submixes (client settings + server flags per guide)
- Confirm players use a working microphone; push-to-talk vs voice activation in keybind docs
- Test on staging with 2+ clients before live
Store secrets and API keys elsewhere — voice config is not sensitive but should live in Git with the rest of your cfg templates.
What submixes are
A submix applies an audio effect chain to a voice stream so listeners know how they are hearing someone (handheld radio vs open air). pma-voice exposes submix IDs you assign when a player enters radio, phone, or megaphone mode.
- Radio submix — band-limited, slight distortion, lower volume cap
- Phone submix — telephone-band EQ, often mono feel
- Megaphone / bullhorn — light reverb or compression (server taste)
- Default / none — clean proximity for normal speech
Submix definitions live in pma-voice client configuration (JSON/Lua table depending on version). We tune values so radio is intelligible without ear fatigue on long patrols.
How we configure submixes (workflow)
- Define submix presets in pma-voice config (name, effects, default volume multiplier)
- Map radio script join/leave events to
setVoiceProperty / export that applies radio submix
- Map phone answer/hangup to phone submix on both parties
- Ensure leaving radio/phone clears submix (no stuck “underwater” voice)
- Align radio channel logic with job restrictions (police-only channels server-validated)
- Document keybinds for players (PTT, radio talk, volume)
- QA with wired headset + cheap mic profiles
Framework integration
| Stack |
Typical pairing |
| QBCore | pma-voice + qb-radio / mm_radio + qb-phone or npwd |
| ESX | pma-voice + esx_radio / pma-radio forks + phone resource |
| Custom | Exports documented; we bridge your job radio Lua |
Radio item metadata, channel passwords, and emergency PANIC buttons must still be server-checked like any other trigger (secure triggers).
Recommended proximity and range tuning
- Whisper / normal / shout modes if enabled — distances that fit your RP (no shout across blocks unless intended)
- Vehicle isolation — optional muffling when windows up (pack-dependent)
- Radio click SFX on transmit start/end for clarity
- Balance with high-ping players — voice is UDP; bad routes still clip
Common issues we fix
- No one hears anyone (wrong ensure order or outdated pma-voice)
- Radio works but no submix effect (preset not applied on channel join)
- Stuck radio submix after death or disconnect
- Double voice from salute-phone + pma-voice conflict
- Two voice resources running (remove legacy tokovoip / old mumble)
- Players on wrong game build missing native audio features
Hosting and performance
Voice traffic is mostly peer/relay via FiveM infrastructure; the game server CPU impact is low compared to scripts and MySQL. Choose a VPS region close to your player base for overall latency (OneSync and game netcode still matter for RP beside voice).
How RAX Development helps
- Install and configure pma-voice on new server builds
- Custom submix presets matching your server branding
- Wire radio/phone resources and fix export mismatches after pack swaps
- Player keybind + settings guide for Discord pin
- Part of launch-ready checklist
US Navy Veteran, 13 years IT. Reviews · Shop · Contact
Related: XSound / custom audio ·
Target systems ·
Discord logging ·
Before starting a community
Conclusion
How do you configure pma-voice and submixes? Install pma-voice, set server convars, map radio and phone scripts to the correct submix presets, and test on staging. RAX Development handles voice stack setup on server builds and fixes broken radio/phone integration after framework changes.