Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var DefaultStunServers = []string{
"stun.l.google.com:19302",
"stun1.l.google.com:19302",
}
Functions ¶
func GetExternalIP ¶ added in v0.10.5
func GetLocalIPAddress ¶ added in v0.10.5
Types ¶
type AudioConfig ¶
type AudioConfig struct { // minimum level to be considered active, 0-127, where 0 is loudest ActiveLevel uint8 `yaml:"active_level"` // percentile to measure, a participant is considered active if it has exceeded the ActiveLevel more than // MinPercentile% of the time MinPercentile uint8 `yaml:"min_percentile"` // interval to update clients, in ms UpdateInterval uint32 `yaml:"update_interval"` // smoothing for audioLevel values sent to the client. // audioLevel will be an average of `smooth_intervals`, 0 to disable SmoothIntervals uint32 `yaml:"smooth_intervals"` }
type Config ¶
type Config struct { Port uint32 `yaml:"port"` PrometheusPort uint32 `yaml:"prometheus_port"` RTC RTCConfig `yaml:"rtc"` Redis RedisConfig `yaml:"redis"` Audio AudioConfig `yaml:"audio"` Room RoomConfig `yaml:"room"` TURN TURNConfig `yaml:"turn"` WebHook WebHookConfig `yaml:"webhook"` NodeSelector NodeSelectorConfig `yaml:"node_selector"` KeyFile string `yaml:"key_file"` Keys map[string]string `yaml:"keys"` Region string `yaml:"region"` LogLevel string `yaml:"log_level"` Development bool `yaml:"development"` }
type NodeSelectorConfig ¶ added in v0.12.3
type NodeSelectorConfig struct { Kind string `yaml:"kind"` SysloadLimit float32 `yaml:"sysload_limit"` Regions []RegionConfig `yaml:"regions"` }
type PLIThrottleConfig ¶ added in v0.9.14
type RTCConfig ¶
type RTCConfig struct { UDPPort uint32 `yaml:"udp_port"` TCPPort uint32 `yaml:"tcp_port"` ICEPortRangeStart uint32 `yaml:"port_range_start"` ICEPortRangeEnd uint32 `yaml:"port_range_end"` NodeIP string `yaml:"node_ip"` // for testing, disable UDP ForceTCP bool `yaml:"force_tcp"` StunServers []string `yaml:"stun_servers"` UseExternalIP bool `yaml:"use_external_ip"` // Number of packets to buffer for NACK PacketBufferSize int `yaml:"packet_buffer_size"` // Max bitrate for REMB MaxBitrate uint64 `yaml:"max_bitrate"` // Throttle periods for pli/fir rtcp packets PLIThrottle PLIThrottleConfig `yaml:"pli_throttle"` }
type RedisConfig ¶
type RegionConfig ¶ added in v0.13.5
type RegionConfig struct { Name string `yaml:"name"` Lat float64 `yaml:"lat"` Lon float64 `yaml:"lon"` }
RegionConfig lists available regions and their latitude/longitude, so the selector would prefer regions that are closer
type RoomConfig ¶ added in v0.10.1
type TURNConfig ¶
type WebHookConfig ¶ added in v0.12.1
Click to show internal directories.
Click to hide internal directories.