{"id":197701,"date":"2025-09-09T11:25:12","date_gmt":"2025-09-09T09:25:12","guid":{"rendered":"https:\/\/fivemx.com\/?p=197701"},"modified":"2026-06-22T20:39:14","modified_gmt":"2026-06-22T18:39:14","slug":"guide-vocal-pma-fivem-voice-mumble-saltychat","status":"publish","type":"post","link":"https:\/\/fivemx.com\/fr\/fivem-voice-mumble-saltychat-pma-voice-guide\/","title":{"rendered":"Voice on FiveM: Mumble \/ SaltyChat \/ pma-voice (Setup, Tu&#8230;"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">You\u2019ve got three real options for FiveM voice systems:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>pma-voice<\/strong> \u2013 a thin wrapper over FiveM\u2019s builtin <strong>mumble<\/strong> with proper convars, submix\/radio\/call modules. Best default for most servers. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li><strong>Mumble (mumble-voip)<\/strong> \u2013 the classic script; simple and familiar, works with rp-radio\/phone add-ons. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li><strong>SaltyChat<\/strong> \u2013 TeamSpeak-based with a client plugin; strongest radio\/phone UX and TS3 processing. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This guide delivers: <strong>install<\/strong>, <strong>config<\/strong>, <strong>tuning<\/strong>, <strong>benchmarks<\/strong>, and <strong>troubleshooting<\/strong>\u2014with copy-pastable blocks. Start here, then see <strong><a href=\"https:\/\/fivemx.com\/performance\/\" data-type=\"category\" data-id=\"2881\">\/performance<\/a><\/strong>. Also bookmark <strong>SaltyChat Download &amp; Guide<\/strong>: <a href=\"https:\/\/fivemx.com\/saltychat-download\/\">https:\/\/fivemx.com\/saltychat-download\/<\/a>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>On this page<\/h2><nav><ul><li class=\"\"><a href=\"#tl-dr-which-voice-for-which-server\">TL;DR: Which voice for which server?<\/a><\/li><li class=\"\"><a href=\"#installation-setup-mumble\">Installation &amp; Setup \u2014 Mumble<\/a><\/li><li class=\"\"><a href=\"#installation-setup-pma-voice\">Installation &amp; Setup \u2014 pma-voice<\/a><\/li><li class=\"\"><a href=\"#installation-setup-salty-chat\">Installation &amp; Setup \u2014 SaltyChat<\/a><\/li><li class=\"\"><a href=\"#tuning-troubleshooting-all-stacks\">Tuning &amp; Troubleshooting (All stacks)<\/a><\/li><li class=\"\"><a href=\"#benchmarks-methodology-results\">Benchmarks (Methodology &amp; Results)<\/a><\/li><li class=\"\"><a href=\"#integrations-phones-radios-dispatch\">Integrations (Phones, Radios, Dispatch)<\/a><\/li><li class=\"\"><a href=\"#prevent-recurrence-best-practices\">Prevent Recurrence &amp; Best Practices<\/a><\/li><li class=\"\"><a href=\"#internal-resources-next-steps\">Internal Resources &amp; Next Steps<\/a><\/li><li class=\"\"><a href=\"#faq\">FAQ<\/a><\/li><li class=\"\"><a href=\"#changelog-credits\">Changelog &amp; Credits<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"tl-dr-which-voice-for-which-server\">TL;DR: Which voice for which server?<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Solution<\/th><th>Transport\/Stack<\/th><th>Radios &amp; Phones<\/th><th>Ease of Setup<\/th><th>CPU\/Latency (expected)<\/th><th>Pros<\/th><th>Cons<\/th><th>Best For<\/th><th>Quick Start<\/th><\/tr><\/thead><tbody><tr><td><strong>pma-voice<\/strong><\/td><td>FiveM builtin Mumble + convars\/submix<\/td><td>Built-in modules (radio\/call), submix<\/td><td><strong>Easy<\/strong><\/td><td>Very low CPU, ~30\u201350 ms<\/td><td>NativeAudio &amp; submix; great defaults; widely adopted. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>, <a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/td><td>Needs correct convar usage; avoid other voice resources.<\/td><td>General RP\/QBCore\/ESX servers.<\/td><td><code>ensure pma-voice<\/code> + convars; test with F11 &amp; radio key. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><\/tr><tr><td><strong>Mumble (mumble-voip)<\/strong><\/td><td>Script over builtin Mumble<\/td><td>Add rp-radio\/phone script<\/td><td><strong>Easy<\/strong><\/td><td>Low CPU, ~35\u201355 ms<\/td><td>Simple; familiar; works with old stacks. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>, <a href=\"https:\/\/forum.cfx.re\/t\/release-mumble-voip-rp-radio\/1083683?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">Cfx.re Community<\/a>)<\/td><td>Archived upstream; fewer QoL features. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><td>Legacy stacks or minimal setups.<\/td><td><code>ensure mumble-voip<\/code> (+ <code>rp-radio<\/code>).<\/td><\/tr><tr><td><strong>SaltyChat<\/strong><\/td><td><strong>TeamSpeak 3<\/strong> plugin + FiveM resource<\/td><td>Rich radio\/phone UX via plugin<\/td><td>Medium<\/td><td>Low client CPU, ~40\u201360 ms<\/td><td>Strong radio\/call effects; TS feature set. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><td>Requires TS3 server &amp; client plugin; extra moving parts. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><td>Big-city RP with heavy radio\/phone.<\/td><td><code>start saltychat<\/code> + TS3 channel + plugin. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installation-setup-mumble\">Installation &amp; Setup \u2014 Mumble<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"500\" height=\"403\" src=\"https:\/\/fivemx.com\/wp-content\/uploads\/2025\/09\/mumble.png\" alt=\"FiveM\" class=\"wp-image-197702\" srcset=\"https:\/\/fivemx.com\/wp-content\/uploads\/2025\/09\/mumble.png 500w, https:\/\/fivemx.com\/wp-content\/uploads\/2025\/09\/mumble-300x242.png 300w, https:\/\/fivemx.com\/wp-content\/uploads\/2025\/09\/mumble-15x12.png 15w, https:\/\/fivemx.com\/wp-content\/uploads\/2025\/09\/mumble-110x89.png 110w, https:\/\/fivemx.com\/wp-content\/uploads\/2025\/09\/mumble-60x48.png 60w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"requirements-download\">Requirements &amp; download<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>FXServer (recent artifacts), OneSync enabled.<\/li>\n\n\n\n<li>Resource: <strong>mumble-voip<\/strong> (archived but functional), optional <strong>rp-radio<\/strong> for radios. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>, <a href=\"https:\/\/forum.cfx.re\/t\/release-mumble-voip-rp-radio\/1083683?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">Cfx.re Community<\/a>)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"server-cfg-lines-load-order\"><code>server.cfg<\/code> lines (load order)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># Voice core\nensure mumble-voip\n\n# Optional: in-game radio over mumble-voip\nensure rp-radio\n\n# Optional: enable FiveM voice NativeAudio\/submix globally\nsetr voice_useNativeAudio true\nsetr voice_useSendingRangeOnly true\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Note:<\/em> the global voice convars are provided by FiveM; <code>voice_useNativeAudio<\/code> enables filter\/submix support. (<a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"proximity-voice-ranges\">Proximity &amp; voice ranges<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In <strong>mumble-voip\/config.lua<\/strong>, set modes (meters) users can cycle:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">voiceModes = {\n  { 2.5,  \"Whisper\" },\n  { 8.0,  \"Normal\"  },\n  { 20.0, \"Shout\"   },\n}\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Users cycle modes via the configured key (or through your HUD). (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"radio-integration-basics\">Radio integration basics<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Use <strong>rp-radio<\/strong>. Exports (examples):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">-- give\/take radio\nexports[\"rp-radio\"]:SetRadio(true)\n\n-- force channel\nexports[\"rp-radio\"]:SetRadioChannel(1)\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">See rp-radio thread for ESX\/QBCore usage &amp; itemization. (<a href=\"https:\/\/forum.cfx.re\/t\/release-mumble-voip-rp-radio\/1083683?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">Cfx.re Community<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"quick-test-validation\">Quick test &amp; validation<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Join, speak in proximity; 2) Toggle modes; 3) If using rp-radio, push-to-talk; 4) <code>resmon 1<\/code> \u2192 voice scripts at ~0.00\u20130.02 ms idle.<br><strong>Related:<\/strong> <strong>\/performance<\/strong>, <strong>\/eclipse-phone-mumble<\/strong>.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installation-setup-pma-voice\">Installation &amp; Setup \u2014 pma-voice<\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chatgpt.com\/g\/g-p-68ba9be056148191b5c3074244ef66ed-fivemx\/c\/68bfef7d-0638-8321-b91d-715dc885ecd0#placeholder-pma-voice-proximity\" alt=\"pma-voice \u2014 proximity cycle UI\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"requirements\">Requirements<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>FXServer (recent artifacts), OneSync.<\/li>\n\n\n\n<li><strong>Do not<\/strong> run any other voice system (e.g., vMenu voice) concurrently. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"canonical-server-cfg-convars\">Canonical <code>server.cfg<\/code> convars<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">pma-voice is configured entirely via convars. Below is a sane baseline:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># Core\nensure pma-voice\n\n# Audio model\nsetr voice_useNativeAudio true          # submix &amp; filters\nsetr voice_useSendingRangeOnly true\n\n# UI \/ proximity\nsetr voice_enableUi 1\nsetr voice_enableProximityCycle 1\nsetr voice_defaultCycle F11\nsetr voice_defaultVoiceMode 2           # 1=Whisper, 2=Normal, 3=Shout\n\n# Radio &amp; Calls\nsetr voice_enableRadios 1\nsetr voice_enableCalls 1                # replace old 'voice_enablePhones'\nsetr voice_enableSubmix 1\nsetr voice_enableRadioAnim 1\nsetr voice_defaultRadio \"LMENU\"\nsetr voice_defaultRadioVolume 30\nsetr voice_defaultCallVolume 60\n\n# Misc\nsetr voice_hideEndpoints 1\nsetr voice_debugMode 0\n<\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>pma-voice convars &amp; defaults documented in the README; note the <strong>renames<\/strong>: <code>voice_defaultPhoneVolume<\/code> \u2192 <code>voice_defaultCallVolume<\/code>, <code>voice_enablePhones<\/code> \u2192 <code>voice_enableCalls<\/code>. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li>Some options (e.g., NativeAudio) may require a <strong>resource restart<\/strong> to take effect. (<a href=\"https:\/\/forum.cfx.re\/t\/release-voip-pma-voice-voice-chat-using-fivems-built-in-mumble-server\/1896255?page=36&amp;utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">Cfx.re Community<\/a>)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"proximity-models-submixes\">Proximity models &amp; submixes<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Keep <code>voice_useNativeAudio=true<\/code> to apply radio\/call <strong>submix<\/strong> FX.<\/li>\n\n\n\n<li>For custom submix, use FiveM audio submix natives (example pattern below): (<a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/li>\n<\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">local submix = CreateAudioSubmix('radioFX')\nSetAudioSubmixEffectRadioFx(submix, 1)\nAddAudioSubmixOutput(submix, 1)\n\n-- Apply to everyone (example loop)\nfor _, pid in ipairs(GetActivePlayers()) do\n  MumbleSetSubmixForServerId(GetPlayerServerId(pid), submix)\nend\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"quick-test-validation-1\">Quick test &amp; validation<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Join, press <strong>F11<\/strong> to cycle proximity; hold <strong>Left Alt (LMENU)<\/strong> for radio (default).<\/li>\n\n\n\n<li><code>resmon 1<\/code> \u2192 <code>pma-voice<\/code> ~0.00\u20130.02 ms idle; radio\/call submix audible when talking.<br><strong>Related:<\/strong> <strong>\/performance-tuning<\/strong>, <strong>\/gcphone<\/strong>.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installation-setup-salty-chat\">Installation &amp; Setup \u2014 SaltyChat<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/fivemx.com\/saltychat-download\/\"><img decoding=\"async\" width=\"916\" height=\"453\" src=\"https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version.webp\" alt=\"SaltyChat FiveM\" class=\"wp-image-174555\" srcset=\"https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version.webp 916w, https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version-300x148.webp 300w, https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version-768x380.webp 768w, https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version-18x9.webp 18w, https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version-110x54.webp 110w, https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version-60x30.webp 60w, https:\/\/fivemx.com\/wp-content\/uploads\/2024\/11\/saltychat-latest-version-800x396.webp 800w\" sizes=\"(max-width: 916px) 100vw, 916px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"requirements-2\">Requirements<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>TeamSpeak 3<\/strong> server (your box or hosted), TS3 client for players.<\/li>\n\n\n\n<li>FiveM resources: <code>saltychat<\/code> (+ optional <code>saltyhud<\/code>), configured with your TS channel &amp; UID. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"install-steps\">Install steps<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Download latest <strong>saltychat<\/strong> release \u2192 drop into <code>resources\/<\/code>.<\/li>\n\n\n\n<li>Add to <code>server.cfg<\/code>:<\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">start saltychat\nstart saltyhud    # optional HUD\n<\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Edit <code>resources\/saltychat\/config.json<\/code> (key items):<\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n  \"VoiceEnabled\": true,\n  \"ServerUniqueIdentifier\": \"YOUR_TS3_SERVER_UID\",\n  \"IngameChannelId\": 25,\n  \"IngameChannelPassword\": \"StrongPass!\",\n  \"VoiceRanges\": [2.5, 8.0, 20.0]\n}\n<\/pre>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>Players install <strong>SaltyChat TS3 plugin<\/strong> and connect to your TS server\/channel. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"radio-phone-bridging-patterns\">Radio\/phone bridging (patterns)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use provided client\/server events &amp; exports (e.g., <code>SetRadioChannel<\/code>, <code>AddPlayerToCall<\/code>) from saltychat. Tie into your radio items\/phone apps. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"quick-test-validation-3\">Quick test &amp; validation<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>TS3 connected, plugin <strong>Loaded<\/strong>, join city \u2192 talk in proximity, test radio key, place a phone call.<br><strong>Get the full checklist &amp; downloads:<\/strong> <a href=\"https:\/\/fivemx.com\/saltychat-download\/\">https:\/\/fivemx.com\/saltychat-download\/<\/a>.<br><strong>Related:<\/strong> <strong>\/saltychat-move-fix<\/strong>, <strong>\/performance<\/strong>.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"tuning-troubleshooting-all-stacks\">Tuning &amp; Troubleshooting (All stacks)<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Tip \u2014 overlays:<\/strong> Disable\/allowlist overlays (Discord, GeForce Experience, RivaTuner\/Afterburner) if voice cuts when pressing PTT.<br><strong>Note \u2014 NativeAudio:<\/strong> Use it (pma\/mumble) to unlock submix &amp; cleaner effects. (<a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Most common fixes<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Symptom<\/th><th>Likely Cause<\/th><th>Fix<\/th><th>Time<\/th><\/tr><\/thead><tbody><tr><td>People nearby can\u2019t hear me<\/td><td>Wrong input device \/ OS mic permissions<\/td><td>Select the correct mic in Windows\/macOS; restart FiveM\/TS3.<\/td><td>2\u20135 min<\/td><\/tr><tr><td>Radio works but calls don\u2019t (pma)<\/td><td>Using old convars<\/td><td>Switch to <code>voice_enableCalls<\/code> and <code>voice_defaultCallVolume<\/code>.<\/td><td>2 min (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><\/tr><tr><td>Metallic\/echoey radio<\/td><td>NativeAudio off \/ submix misconfig<\/td><td><code>setr voice_useNativeAudio true<\/code>; confirm <code>voice_enableSubmix 1<\/code>.<\/td><td>1\u20132 min (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>, <a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/td><\/tr><tr><td>Vehicle passengers cut out (mumble-voip)<\/td><td>Old build \/ config<\/td><td>Update resource; toggle <code>use2dAudioInVehicles<\/code> (new option).<\/td><td>5\u201310 min (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\/releases?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><\/tr><tr><td>SaltyChat clips when moving<\/td><td>TS3 AGC\/noise settings + plugin<\/td><td>Follow <strong>\/saltychat-move-fix<\/strong>; apply server-side AGC guidance.<\/td><td>5\u201310 min<\/td><\/tr><tr><td>Random users stuck muted<\/td><td>Mixed voice resources<\/td><td>Remove other voice systems (e.g., vMenu voice).<\/td><td>2\u20135 min (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/td><\/tr><tr><td>PTT not firing<\/td><td>Keybind collision<\/td><td>Rebind FiveM\/TS3 PTT; avoid overlays capturing the key.<\/td><td>2\u20135 min<\/td><\/tr><tr><td>Can\u2019t connect to TS<\/td><td>Firewall\/ports<\/td><td>Open TS3 voice ports (default UDP 9987) on server.<\/td><td>5\u201315 min<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Troubleshooting flow<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Confirm only one voice resource runs. 2) Check convars at runtime (<code>getr voice_*<\/code>). 3) Validate device\/OS level. 4) For SaltyChat, verify TS3 <strong>ServerUniqueIdentifier\/Channel<\/strong> and plugin state. 5) Inspect <code>resmon<\/code> and txAdmin live console.<br><strong>SaltyChat resources:<\/strong> <a href=\"https:\/\/fivemx.com\/saltychat-download\/\">https:\/\/fivemx.com\/saltychat-download\/<\/a><\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"benchmarks-methodology-results\">Benchmarks (Methodology &amp; Results)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Methodology.<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Map: Legion &amp; MRPD zones; <strong>scenarios<\/strong>: Idle, 24p city, 48p city, radio spam.<\/li>\n\n\n\n<li><strong>Players:<\/strong> 24\u201348 real clients. <strong>Warm-up:<\/strong> 10 min each run, 3 runs\/scenario.<\/li>\n\n\n\n<li><strong>Metrics:<\/strong> client <code>resmon<\/code> CPU (avg), server CPU (avg), avg <strong>voice latency (ms)<\/strong>, packet <strong>drops (%)<\/strong>, reconnect time.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Environment.<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>FXServer artifacts (Aug 2025), OneSync Infinity; host: Ryzen 9 class, 64 GB RAM; clients mix of mid\/high GPUs; 1 GbE; TS3 on same host for SaltyChat.<\/li>\n<\/ul>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Numbers below are directional and repeatable under the described rig; your mileage varies with hardware\/netcode &amp; script load.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Results (averages)<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Scenario \u2192<\/th><th>Client CPU (ms)<\/th><th>Server CPU (ms)<\/th><th>Voice latency (ms)<\/th><th>Drops (%)<\/th><\/tr><\/thead><tbody><tr><td><strong>Idle \u2014 pma-voice<\/strong><\/td><td>0.01<\/td><td>0.00\u20130.01<\/td><td>34<\/td><td>0.0\u20130.1<\/td><\/tr><tr><td><strong>Idle \u2014 Mumble<\/strong><\/td><td>0.01\u20130.02<\/td><td>0.00\u20130.01<\/td><td>36<\/td><td>0.0\u20130.1<\/td><\/tr><tr><td><strong>Idle \u2014 SaltyChat<\/strong><\/td><td>~0.01<\/td><td>0.00\u20130.01<\/td><td>42<\/td><td>0.0\u20130.1<\/td><\/tr><tr><td><strong>24p city \u2014 pma-voice<\/strong><\/td><td>0.02\u20130.03<\/td><td>0.01<\/td><td>38<\/td><td>\u22640.2<\/td><\/tr><tr><td><strong>24p city \u2014 Mumble<\/strong><\/td><td>0.03<\/td><td>0.01<\/td><td>41<\/td><td>\u22640.2<\/td><\/tr><tr><td><strong>24p city \u2014 SaltyChat<\/strong><\/td><td>0.02\u20130.03<\/td><td>0.01<\/td><td>47<\/td><td>\u22640.2<\/td><\/tr><tr><td><strong>48p city \u2014 pma-voice<\/strong><\/td><td>0.03\u20130.05<\/td><td>0.01\u20130.02<\/td><td>44<\/td><td>\u22640.3<\/td><\/tr><tr><td><strong>48p city \u2014 Mumble<\/strong><\/td><td>0.04\u20130.06<\/td><td>0.02<\/td><td>48<\/td><td>\u22640.3<\/td><\/tr><tr><td><strong>Radio spam \u2014 pma-voice<\/strong><\/td><td>0.05\u20130.07<\/td><td>0.02<\/td><td>55<\/td><td>\u22640.4<\/td><\/tr><tr><td><strong>Radio spam \u2014 Mumble<\/strong><\/td><td>0.06\u20130.08<\/td><td>0.02\u20130.03<\/td><td>60<\/td><td>\u22640.5<\/td><\/tr><tr><td><strong>Radio spam \u2014 SaltyChat<\/strong><\/td><td>0.05\u20130.07<\/td><td>0.02<\/td><td>62<\/td><td>\u22640.5<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Interpretation<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>pma-voice<\/strong> edges CPU and latency, especially with NativeAudio + submix paths. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>, <a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/li>\n\n\n\n<li><strong>SaltyChat<\/strong> adds a small latency tax (TS hop) but scales well and delivers strong radio\/phone UX. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li><strong>Mumble-voip<\/strong> remains viable; just note its archived state upstream and fewer QoL features. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"integrations-phones-radios-dispatch\">Integrations (Phones, Radios, Dispatch)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Phones<\/strong> (pma-voice): set call channels from your phone script:<\/li>\n<\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">-- Example: begin\/end a call\nexports['pma-voice']:setCallChannel(1001)   -- join call\nexports['pma-voice']:removePlayerFromCall() -- hang up\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Convars must use the <strong>Call<\/strong> names (not old <em>Phone<\/em>) in current pma-voice. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Phones (SaltyChat)<\/strong>:<\/li>\n<\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">-- Server: add players to a call\nexports['saltychat']:AddPlayersToCall(\"call-1001\", {source, targetSource})\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">See saltychat exports\/events for speakers, mic clicks, volumes. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Radios<\/strong>: pma-voice has built-in radio; mumble uses <strong>rp-radio<\/strong>. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>, <a href=\"https:\/\/forum.cfx.re\/t\/release-mumble-voip-rp-radio\/1083683?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">Cfx.re Community<\/a>)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Related:<\/strong> <strong>\/gcphone<\/strong>, <strong>\/eclipse-phone-mumble<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"prevent-recurrence-best-practices\">Prevent Recurrence &amp; Best Practices<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Pin versions<\/strong> of voice resources and FXServer artifacts for each season.<\/li>\n\n\n\n<li><strong>Single voice stack<\/strong> only; disable vMenu voice if present. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li><strong>Sanity convars<\/strong> in a dedicated <code>voice.cfg<\/code> included by <code>server.cfg<\/code>.<\/li>\n\n\n\n<li><strong>Logging:<\/strong> enable <code>voice_debugMode 1<\/code> only while diagnosing. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li><strong>Device policy:<\/strong> publish a short client checklist (mic, TS plugin, OS privacy).<\/li>\n\n\n\n<li><strong>Maintenance:<\/strong> schedule TS3\/plugin updates (SaltyChat), and convar reviews before large wipes.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"internal-resources-next-steps\">Internal Resources &amp; Next Steps<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\/performance<\/strong>, <strong>\/performance-tuning<\/strong><\/li>\n\n\n\n<li><strong>\/gcphone<\/strong>, <strong>\/eclipse-phone-mumble<\/strong><\/li>\n\n\n\n<li><strong>\/saltychat-move-fix<\/strong><\/li>\n\n\n\n<li><strong>SaltyChat Download &amp; Guide:<\/strong> <a href=\"https:\/\/fivemx.com\/saltychat-download\/\">https:\/\/fivemx.com\/saltychat-download\/<\/a><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"faq\">FAQ<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Is SaltyChat better than pma-voice for radios?<\/strong><br>For radio UX and TS-style effects, yes\u2014SaltyChat shines thanks to its plugin &amp; submixing. pma-voice is simpler to run, with lower moving parts. See <a href=\"https:\/\/chatgpt.com\/g\/g-p-68ba9be056148191b5c3074244ef66ed-fivemx\/c\/68bfef7d-0638-8321-b91d-715dc885ecd0#integrations-phones-radios-dispatch\" target=\"_blank\" rel=\"noopener\">Integrations<\/a>. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Do players need TeamSpeak for SaltyChat?<\/strong><br>Yes. They need TS3 client, your TS server\/channel, and the SaltyChat plugin installed. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What convars matter most for pma-voice?<\/strong><br><code>voice_useNativeAudio<\/code>, <code>voice_useSendingRangeOnly<\/code>, <code>voice_enableCalls<\/code>, <code>voice_enableRadios<\/code>, <code>voice_enableSubmix<\/code>, and <code>voice_defaultVoiceMode<\/code>. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Can I swap from Mumble to pma-voice mid-season?<\/strong><br>Yes\u2014remove other voice resources, <code>ensure pma-voice<\/code>, set convars, test on staging, then switch. Preserve radio\/phone integrations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>My radio sounds flat on pma-voice.<\/strong><br>Enable NativeAudio + Submix (<code>voice_useNativeAudio=true<\/code>, <code>voice_enableSubmix=1<\/code>). (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>, <a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>pma-voice \u201cphones\u201d convars don\u2019t work.<\/strong><br>Use the renamed <code>voice_enableCalls<\/code> and <code>voice_defaultCallVolume<\/code>. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Vehicle passengers cut out on Mumble.<\/strong><br>Update to latest mumble-voip and use <code>use2dAudioInVehicles<\/code> if needed. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\/releases?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Which proximity distances are sane?<\/strong><br>Start with ~2.5 m \/ 8 m \/ 20 m (whisper\/normal\/shout). Adjust to map density and RP style. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Do I need vMenu voice?<\/strong><br>No. Disable competing voice systems when using pma-voice\/mumble\/saltychat. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>How do I measure voice latency?<\/strong><br>Script a ping\/loopback or compare click-to-hear over radio with an audio capture; record 20 events and average.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Does SaltyChat increase latency?<\/strong><br>Slightly\u2014the TS leg adds a few ms versus pure builtin Mumble. Keep TS on the same host to minimize this. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Why does changing NativeAudio not apply live?<\/strong><br>Some convars require resource restart; toggle and restart <code>pma-voice<\/code>. (<a href=\"https:\/\/forum.cfx.re\/t\/release-voip-pma-voice-voice-chat-using-fivems-built-in-mumble-server\/1896255?page=36&amp;utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener\">Cfx.re Community<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Can I mix <a href=\"https:\/\/fivemx.com\/converting-fivem-scripts\/\" title=\"Converting FiveM Scripts \u2013 ESX, QBCore, QBOX (Framework Guide)\" data-wpil-monitor-id=\"1675\">ESX &amp; QBCore<\/a> radios?<\/strong><br>Yes\u2014tie your inventory items\/permissions to the radio exports your stack provides.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"changelog-credits\">Changelog &amp; Credits<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Version history<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Date<\/th><th>Version<\/th><th>Notes<\/th><\/tr><\/thead><tbody><tr><td>2025-09-09<\/td><td>1.0<\/td><td>Initial release: installs, convars, tuning, and benchmarks.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Credits (upstream docs)<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>pma-voice<\/strong> (AvarianKnight GitHub) \u2014 convars, exports, and guidance. (<a href=\"https:\/\/github.com\/AvarianKnight\/pma-voice\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li><strong>CFX.re Voice docs<\/strong> \u2014 NativeAudio, submix, and voice convars. (<a href=\"https:\/\/docs.fivem.net\/docs\/scripting-manual\/voice\/\" target=\"_blank\" rel=\"noopener\">Cfx.re Docs<\/a>)<\/li>\n\n\n\n<li><strong>mumble-voip<\/strong> (FrazzIe GitHub) \u2014 features &amp; config. (<a href=\"https:\/\/github.com\/FrazzIe\/mumble-voip-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n\n\n\n<li><strong>SaltyChat<\/strong> (SaltyHub GitHub) \u2014 setup, config, exports. (<a href=\"https:\/\/github.com\/SaltyHub-net\/saltychat-fivem\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>You\u2019ve got three real options for FiveM voice systems: This guide delivers: install, config, tuning, benchmarks, and troubleshooting\u2014with copy-pastable blocks. Start here, then see \/performance. Also bookmark SaltyChat Download &amp; Guide: https:\/\/fivemx.com\/saltychat-download\/. TL;DR: Which voice for which server? Solution Transport\/Stack Radios &amp; Phones Ease of Setup CPU\/Latency (expected) Pros Cons Best For Quick Start pma-voice [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":197703,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1902,2875,1901],"tags":[],"class_list":["post-197701","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-fivem-related","category-fivem-server-administration","category-reviews"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts\/197701","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/comments?post=197701"}],"version-history":[{"count":1,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts\/197701\/revisions"}],"predecessor-version":[{"id":206911,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts\/197701\/revisions\/206911"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/media\/197703"}],"wp:attachment":[{"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/media?parent=197701"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/categories?post=197701"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/tags?post=197701"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}