Server configuration fields
Defaults and limits for listener, accounts, sessions, media, and RPC capacity.
The tables below describe the JSON file consumed by remedia-server. Defaults apply to omitted fields. The generated schema contains the complete nested constraints.
Listener
| Field | Default | Constraints |
|---|---|---|
listen | "127.0.0.1:8787" | IP address and TCP port 0–65535; IPv6 uses brackets. Supports environment references. |
Connection and request limits
| Field | Default | Constraints |
|---|---|---|
limits.maxConnections | 128 | 1–65536 |
limits.maxClientSessions | 128 | 1–10000 |
limits.maxTotalPlayers | 256 | 1–10000 |
limits.maxPlayersPerClient | 16 | 1–1000 |
limits.maxMessageBytes | 65536 | 1024–1048576 |
limits.requestTimeoutMs | 30000 | 1–300000 |
limits.maxInFlightRequests | 16 | 1–4096 |
limits.maxRequestsPerSecond | 60 | 1–100000 |
limits.eventBuffer | 128 | 1–65536 |
Media access
| Field | Default | Constraints |
|---|---|---|
media.allowedFileRoots | [] | Server-local directories. Relative to the config file. ~ expands at startup. Roots must exist and be directories. Empty denies file playback. |
media.allowedUrlHosts | [] | Allowed DNS hosts and subdomains. Empty denies URL playback. Wildcard cannot be mixed with specific resolved hosts. |
media.allowHttp | true | Permit HTTP media URLs, subject to host and network policy. |
media.blockPrivateNetworks | true | Reject media URLs resolving to private or reserved network addresses. |
Console output
| Field | Default | Constraints |
|---|---|---|
observability.console | true | Enable console diagnostics. Exporter configuration uses existing runtime environment settings. |
Account and session settings
| Field | Default | Constraints |
|---|---|---|
auth | Required unless using users | password required; username defaults to remedia |
users | Required unless using auth | min items 1 |
sessionResumptionTimeoutSeconds | 60 | 1–86400 |
limits.maxPlayersPerClient cannot exceed limits.maxTotalPlayers. limits.maxClientSessions applies per authenticated username.
Configure exactly one of auth or users. users must contain at least one account. Usernames are unique, nonempty, and cannot contain a colon or control characters. Passwords are nonempty. Both values support environment references.
Audio and plugins
- Crossfade and Opus settings apply to server players.
- Plugin host fields define operation permissions and per-host limits.
- Observability settings define process environment and exporter behavior.