pma-voice not working: players can't hear each other on FiveM

No voice chat on your FiveM server with pma-voice? Check the ensure order, OneSync, the voice convars, UDP port 30120 and the player's voice settings and microphone.

Players join, the game works, and nobody can hear anybody. Or you can speak and see the voice icon, and others hear nothing. Voice chat on FiveM breaks for a few common reasons, some on the server and some on the player's PC.

This guide starts with the server and ends with the player-side settings, in the order that finds the problem fastest.

1. Is pma-voice started

Open the server console and check that the resource is running:

text
ensure pma-voice

In server.cfg, it should start before the resources that depend on it:

cfg
set onesync on

ensure oxmysql
ensure ox_lib
ensure pma-voice

ensure my_framework
ensure my_scripts

Rules for the order:

  • Voice before the scripts that use it (radio, phone call, megaphone scripts and so on).
  • If the resource sits inside a folder like [voice], make sure that folder is ensured. A common mistake is a category folder with the resource inside that you never ensured.
  • Check the console for errors when pma-voice starts. If it fails to start, nothing else will work.

Run only one voice resource. If you have another one, such as an older mumble resource or a different voice system, stop it, because two systems fight over the same audio.

2. OneSync must be on

pma-voice needs OneSync. Without it, voice does not work properly. In server.cfg:

cfg
set onesync on

Restart the server. The details and a way to verify are in enabling OneSync.

3. The voice convars

pma-voice reads its settings from convars in server.cfg. Two that are often involved:

cfg
setr voice_useNativeAudio true
setr voice_useSendingRangeOnly true
  • voice_useNativeAudio uses the game's own audio effects for voice, so it sounds like it comes from the world. Set it to true or leave it out.
  • voice_useSendingRangeOnly limits who is sent your audio to those in range. It reduces load and can solve a case where the voice is too loud or leaks across the map.

setr (not set) is needed because these values are also sent to the clients. Put them before the ensure pma-voice line, and restart the server after you change them. The resource's own page lists the other settings, so check it before you add any you saw in a forum post.

4. The port: voice shares 30120

pma-voice uses FiveM's built-in voice server (it is Mumble based), and it does not need its own port. It runs through the same port as your server, 30120, and it uses UDP.

So if the game works but voice does not, check that UDP is open, not only TCP:

bash
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp

On Windows, add the same rules to Windows Firewall. Also check the hosting provider's firewall, and your router if the server is at home. The full details are in FiveM server not showing: port forwarding and firewall.

5. Player-side settings

If only one or a few players have the problem, it is on their PC. Ask them to check:

  1. In FiveM, open the pause menu and go to Settings, then Voice Chat. Voice chat must be enabled.
  2. Choose the correct input device (their microphone) and output device. If Windows changed the default device, FiveM may still point at the old one.
  3. Check the input mode and the push-to-talk key, if it is set to push to talk, and press the key while speaking.
  4. In Windows Settings > Privacy > Microphone, allow desktop apps to use the microphone.
  5. Check the microphone is not muted, and its volume in Windows is not at zero.
  6. Close other apps that take control of the microphone, for example another voice program that uses it exclusively.

Then they should reconnect to the server. If it still fails, ask them to try a different microphone or a headset, which rules out the device.

Tip: to separate a server problem from a player problem, join with two PCs or two accounts, or ask a friend. If a second player hears you fine, the server is not the issue.

6. Other things to check

  • Wrong key to cycle the proximity range: players can change how far they speak with a key. If no one hears you, make sure you are not set to the smallest range.
  • A script that mutes players: radio, phone or job scripts that use pma-voice exports can leave someone in a channel. Reconnect, or restart that script.
  • The resource was restarted while players were online: voice can break for those already connected. Players reconnect and it returns.
  • Console errors: read them from the top, see how to read a FiveM script error.

Checklist

Symptom Fix
Nobody hears anybody Check ensure pma-voice runs and starts before the scripts using it
Voice acts strangely Turn on OneSync with set onesync on
Game works, voice does not Open UDP 30120, voice shares the game port
Voice range or sound wrong Check setr voice_useNativeAudio true and setr voice_useSendingRangeOnly true
Only one player affected Settings > Voice Chat: input device, push to talk, Windows microphone permission
Two voice resources Run only one voice system

Quick answers

Does pma-voice need a separate port?

No. It uses the FiveM built-in voice server on the same port as your game server, 30120. UDP on that port must be open in your firewall.

Does pma-voice need OneSync?

Yes. pma-voice relies on OneSync, so turn it on with set onesync on in server.cfg before you troubleshoot anything else.

Players hear nothing in game. Is it the server or the player?

Test with two players. If nobody hears anybody, look at the server: resource order, OneSync, port 30120 UDP. If only one player is affected, check their FiveM voice settings and microphone.

Scripts that skip this problem

Mic PhoneA foldable phone that unfolds into a tablet and carries onto a player's real phone.View script →CCTV Security CamerasPlaceable cameras, a live multi-view tablet and printed evidence photos.View script →

Keep reading