> For the complete documentation index, see [llms.txt](https://acestudios.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://acestudios.gitbook.io/docs/roleplay/live-radio/listening-modes.md).

# Listening Modes

Car radio, realism features and headphones — how players listen while driving or on foot.

## Car radio

With `Config.CarRadio.Enabled = true`, the **driver** picks the station and everyone inside the vehicle hears it. People nearby hear the music coming from the car too — louder with a door or roof open. The driver's or front passenger's volume slider sets the car's volume **for everyone** in it.

| Config (`config_advanced.lua`) | Default  | Description                                                 |
| ------------------------------ | -------- | ----------------------------------------------------------- |
| `HearingDistance`              | `12.0` m | Outside hearing distance with doors closed.                 |
| `OpenHearingDistance`          | `30.0` m | Outside hearing distance with a door open or the roof down. |
| `OutsideVolume`                | `0.6`    | Volume multiplier for people outside the vehicle.           |
| `RequireEngine`                | `true`   | The radio is silent while the engine is off.                |

{% hint style="info" %}
Audio mixes like in real life: a car radio, other cars and boomboxes are all heard together. Only headphones playing a station block everything else out for that player.
{% endhint %}

## Realism features

Each one is a separate toggle in `config.lua`.

### Signal fade

```lua
Config.SignalFade = { Enabled = true }
```

Music fades, static and dropouts creep in near the edge of a station's range, and reception weakens indoors. Fine-tuned with `FadeStart`, `StaticVolume`, `Dropouts` and `IndoorPenalty` in `config_advanced.lua` — see [Advanced Configuration](/docs/roleplay/live-radio/advanced-configuration.md#signal-fade).

{% hint style="warning" %}
Signal fade measures distance to the host on **each listener's own game**, so it only works while the host is within the listener's streaming range (about 400 m). Beyond that, listeners can't tell they're near the edge of the broadcast range until playback cuts out.
{% endhint %}

### Music ducking

```lua
Config.MusicDucking = { Enabled = true }
```

Music keeps playing under Live Voice/Podcast broadcasts and dips automatically (to `DuckVolume`, default `0.25`) while someone talks.

### One-way broadcasts

```lua
Config.OneWayBroadcast = { Enabled = true }
```

Listeners hear the host and guests but can't talk back.

{% hint style="warning" %}
With `OneWayBroadcast` **off**, pma-voice radio channels are two-way: anyone tuned in to a Live Voice or Podcast station can transmit with their radio push-to-talk key. With it **on**, listeners' games block transmitting and only play the host and guests — but this is enforced **client-side**, so a modified client could still reach the host and guests (other listeners still won't hear it).
{% endhint %}

## Headphones

```lua
Config.Headphones = { Enabled = true, Item = false, KeyPutsOn = false }
```

Lets players listen to the radio on foot; only they hear it.

* **Without an item** (`Item = false`): the command `/headphones` (`Command` in `config_advanced.lua`) puts them on — a small "Wearing headphones" box appears next to the mini player and the station list opens — and takes them off again.
* **With an item set** (for example `Item = 'headphones'`): the command is off and players use the item instead. On QBCore, Qbox and ESX the item is made usable automatically. See [Commands, Exports & Items](/docs/roleplay/live-radio/commands-and-exports.md#items) for the generated item entry.

While wearing them, the station list key (`Q` / `Config.StationListKey`) reopens the list. Set `KeyPutsOn = true` to also let that key put headphones on — only works when no item is required, and is off by default.

### In a vehicle

| Seat                     | Wearing headphones does                                                                                                                                                                                                                                                   |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Back seat                | Keeps hearing their own station — the car radio doesn't pull them in. `Q` opens the list for their headphones.                                                                                                                                                            |
| Driver / front passenger | The station list shows a **Car radio \| Headphones** switch. *Car radio* (default) hears and controls the car for everyone. *Headphones* hears their own station while the car keeps playing for everyone else. Taking the headphones off switches back to the car radio. |

### Appearance

Putting them on and taking them off plays an animation, and a headphones model sits on the player's head while worn, visible to everyone. Change the animations, model, bone, offset and rotation in `config_advanced.lua` (`PutOnAnimation`, `TakeOffAnimation`, `Prop`); set any of them to `false` to turn it off.

### Losing them

If a player on foot no longer has their headphones item, their radio turns off within 10 seconds.

For the ox\_inventory item format, see [Commands, Exports & Items](/docs/roleplay/live-radio/commands-and-exports.md#items).
