-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsfu_config.example.yaml
More file actions
54 lines (46 loc) · 2.18 KB
/
sfu_config.example.yaml
File metadata and controls
54 lines (46 loc) · 2.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
server_address: ":3300"
auth_secret: "change_me_before_use_it_in_production"
stun_servers:
- "stun:stun.l.google.com:19302"
region: "eu-central"
public_base_url: "https://sfu-eu.example.com"
# Optional: advertise the router/public IP in ICE candidates when the SFU
# runs behind 1:1 NAT or static UDP port forwarding.
ice_public_ip: ""
# Optional: restrict WebRTC UDP sockets to a fixed port range.
# Leave both as 0 to preserve the current OS-managed ephemeral port behavior.
udp_port_range_start: 0
udp_port_range_end: 0
# Webhook discovery
webhook_url: "http://webhook:3200/api/v1/webhook/sfu/heartbeat"
# Pre-generated JWT token for webhook authentication (typ=sfu, id=<service_id>)
webhook_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
# Should match service_id from the token
service_id: ""
# External telemetry gateway. Reuse the same JWT as webhook_token.
telemetry_otlp_endpoint: "https://telemetry.example.com"
telemetry_otlp_headers: "Authorization=Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
telemetry_otlp_protocol: "http/protobuf"
telemetry_metric_export_interval: "60000"
# Heartbeat interval for the v2 SFU signaling protocol hello payload.
# Clients should heartbeat at this cadence over op=2 once connected to /signal?v=2.
signal_heartbeat_interval_ms: 15000
# DAVE / E2EE support for /signal?v=2
dave_enabled: true
dave_required_default: false
dave_transition_timeout_ms: 2000
dave_old_ratchet_window_ms: 10000
dave_allow_av1: false
# Optional: cap maximum audio bitrate (per sender) via SDP constraints
# 0 disables capping. Common values: 64, 96, 128 (in kbps)
# This sets Opus fmtp maxaveragebitrate and b=AS/TIAS for audio m-lines.
max_audio_bitrate_kbps: 0
# Optional: enforce max audio bitrate by disconnecting peers exceeding the cap.
# If true and max_audio_bitrate_kbps > 0, SFU monitors inbound audio RTP and
# closes the peer connection if sustained bitrate exceeds the configured limit.
enforce_audio_bitrate: false
# Optional: percent margin for bitrate enforcement to account for RTP/SRTP/UDP/IP
# overhead and brief jitter. Disconnects only if sustained bitrate exceeds
# (1 + margin_percent/100.0) * max_audio_bitrate_kbps.
# Typical values: 10..20
audio_bitrate_margin_percent: 15