Gapless playback — two different mechanisms
Some music is meant to run without a break — live albums, classical movements, DJ sets, concept records. A half-second of silence between tracks ruins them. The plugin offers two ways to remove that gap, and they work very differently.
True gapless (NextURI). When a renderer says it supports it, the plugin pre-loads the next track onto the device before the current one ends, so the device crosses the boundary internally with no silence — like a CD player. This is the preferred mechanism: each track keeps its own metadata, seeking and skipping still work, and there's nothing to switch on — the plugin uses it automatically on capable devices. Per device, you can turn it off (for hardware whose implementation is buggy) or tell the plugin not to clear the queued track when the list empties (a workaround for devices that treat an empty queue as "stop").
Continuous stream. The older fallback concatenates everything into one endless stream. It guarantees no gaps on any device — but at a real cost: the renderer shows the first track's information for the entire session, "next/previous" controls stop working, and because everything is fused into one stream, it must all be transcoded (force-native can't apply). The on-screen label spells out the trade-off.
Which to use. Prefer true gapless — it's automatic and lossless. Fall back to continuous stream only for a device that can't do NextURI and where the gaps genuinely bother you, accepting that you lose per-track metadata and transport controls. The two are mutually exclusive: turning on continuous stream disables NextURI, so you can't accidentally run both.

Settings
| Control | What it does |
|---|---|
| Enable gapless playback (NextURI) for this device | Enables true gapless (NextURI) for this device. On for capable devices; turn off if the device's implementation is buggy. |
| Do not send blank NextURI when queue empties | Stops the plugin sending a blank NextURI when the queue empties — a workaround for devices (e.g. Denon) that treat that as "stop". |
| Output as a continuous stream | Sends one continuous concatenated stream instead of discrete tracks. Removes gaps on any device, but the renderer shows only the first track's info, transport controls stop working, and everything is transcoded. Disables NextURI while on. |