Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
PlaylistURL string
DBPath string
LogDir string
HTTPAddr string
LegacyHTTPAddr string
UPnPEnabled bool
UPnPAddr string
UPnPNotifyInterval time.Duration
UPnPMaxAge time.Duration
UPnPContentDirectoryUpdateIDCacheTTL time.Duration
TunerCount int
TraditionalGuideStart int
FriendlyName string
DeviceID string
DeviceAuth string
RefreshSchedule string
ReconcileDynamicRulePaged bool
FFmpegPath string
FFprobePath string
StreamMode string
StartupTimeout time.Duration
StartupRandomAccessRecoveryOnly bool
MinProbeBytes int
MaxFailovers int
FailoverTotalTimeout time.Duration
UpstreamOverlimitCooldown time.Duration
FFmpegReconnectEnabled bool
FFmpegReconnectDelayMax time.Duration
FFmpegReconnectMaxRetries int
FFmpegReconnectHTTPErrors string
FFmpegRWTimeout time.Duration
FFmpegStartupProbeSize int
FFmpegStartupAnalyzeDuration time.Duration
FFmpegInputBufferSize int
FFmpegDiscardCorrupt bool
FFmpegCopyRegenerateTimestamps bool
FFmpegSourceLogLevel string
FFmpegSourceStderrPassthroughEnabled bool
FFmpegSourceStderrLogLevel string
FFmpegSourceStderrMaxLineBytes int
ProducerReadRate float64
ProducerReadRateCatchup float64
ProducerInitialBurst int
BufferChunkBytes int
BufferFlushInterval time.Duration
BufferTSAlign188 bool
StallDetect time.Duration
StallHardDeadline time.Duration
StallPolicy string
StallMaxFailovers int
CycleFailureMinHealth time.Duration
RecoveryFillerEnabled bool
RecoveryFillerMode string
RecoveryFillerInterval time.Duration
RecoveryFillerText string
RecoveryFillerEnableAudio bool
SubscriberJoinLag int
SubscriberSlowPolicy string
SubscriberMaxBlocked time.Duration
SessionIdleTimeout time.Duration
SessionDrainTimeout time.Duration
SessionMaxSubscribers int
SessionHistoryLimit int
SessionSourceHistoryLimit int
SessionSubscriberHistoryLimit int
SourceHealthDrainTimeout time.Duration
PreemptSettleDelay time.Duration
AutoPrioritizeProbeTuneDelay time.Duration
AutoPrioritizeWorkers string
ProbeInterval time.Duration
ProbeTimeout time.Duration
AdminBasicAuth string
AdminJSONBodyLimitBytes int64
DVRLineupReloadTimeout time.Duration
RequestTimeout time.Duration
RateLimitRPS float64
RateLimitBurst int
RateLimitMaxClients int
RateLimitTrustedProxies []string
TuneBackoffMaxTunes int
TuneBackoffInterval time.Duration
TuneBackoffCooldown time.Duration
EnableMetrics bool
HTTPRequestLogEnabled bool
LogLevel string
CatalogSearchMaxTerms int
CatalogSearchMaxDisjuncts int
CatalogSearchMaxTermRunes int
}
Config carries runtime settings from CLI flags and environment variables.
func (Config) Redacted ¶
func (c Config) Redacted() RedactedConfig
type RedactedConfig ¶
type RedactedConfig struct {
PlaylistURLConfigured bool `json:"playlist_url_configured"`
DBPath string `json:"db_path"`
LogDir string `json:"log_dir"`
HTTPAddr string `json:"http_addr"`
LegacyHTTPAddr string `json:"legacy_http_addr,omitempty"`
UPnPEnabled bool `json:"upnp_enabled"`
UPnPAddr string `json:"upnp_addr"`
UPnPNotifyInterval string `json:"upnp_notify_interval"`
UPnPMaxAge string `json:"upnp_max_age"`
UPnPContentDirectoryUpdateIDCacheTTL string `json:"upnp_content_directory_update_id_cache_ttl"`
TunerCount int `json:"tuner_count"`
TraditionalGuideStart int `json:"traditional_guide_start"`
FriendlyName string `json:"friendly_name"`
DeviceID string `json:"device_id"`
DeviceAuthConfigured bool `json:"device_auth_configured"`
RefreshSchedule string `json:"refresh_schedule,omitempty"`
ReconcileDynamicRulePaged bool `json:"reconcile_dynamic_rule_paged"`
FFmpegPath string `json:"ffmpeg_path"`
FFprobePath string `json:"ffprobe_path"`
StreamMode string `json:"stream_mode"`
StartupTimeout string `json:"startup_timeout"`
StartupRandomAccessRecoveryOnly bool `json:"startup_random_access_recovery_only"`
MinProbeBytes int `json:"min_probe_bytes"`
MaxFailovers int `json:"max_failovers"`
FailoverTotalTimeout string `json:"failover_total_timeout"`
UpstreamOverlimitCooldown string `json:"upstream_overlimit_cooldown"`
FFmpegReconnectEnabled bool `json:"ffmpeg_reconnect_enabled"`
FFmpegReconnectDelayMax string `json:"ffmpeg_reconnect_delay_max"`
FFmpegReconnectMaxRetries int `json:"ffmpeg_reconnect_max_retries"`
FFmpegReconnectHTTPErrors string `json:"ffmpeg_reconnect_http_errors"`
FFmpegRWTimeout string `json:"ffmpeg_rw_timeout"`
FFmpegStartupProbeSize int `json:"ffmpeg_startup_probesize"`
FFmpegStartupAnalyzeDuration string `json:"ffmpeg_startup_analyzeduration"`
FFmpegInputBufferSize int `json:"ffmpeg_input_buffer_size"`
FFmpegDiscardCorrupt bool `json:"ffmpeg_discard_corrupt"`
FFmpegCopyRegenerateTimestamps bool `json:"ffmpeg_copy_regenerate_timestamps"`
FFmpegSourceLogLevel string `json:"ffmpeg_source_log_level"`
FFmpegSourceStderrPassthroughEnabled bool `json:"ffmpeg_source_stderr_passthrough_enabled"`
FFmpegSourceStderrLogLevel string `json:"ffmpeg_source_stderr_log_level"`
FFmpegSourceStderrMaxLineBytes int `json:"ffmpeg_source_stderr_max_line_bytes"`
ProducerReadRate string `json:"producer_readrate"`
ProducerReadRateCatchup string `json:"producer_readrate_catchup"`
ProducerInitialBurst int `json:"producer_initial_burst"`
BufferChunkBytes int `json:"buffer_chunk_bytes"`
BufferFlushInterval string `json:"buffer_flush_interval"`
BufferTSAlign188 bool `json:"buffer_ts_align_188"`
StallDetect string `json:"stall_detect"`
StallHardDeadline string `json:"stall_hard_deadline"`
StallPolicy string `json:"stall_policy"`
StallMaxFailovers int `json:"stall_max_failovers"`
CycleFailureMinHealth string `json:"cycle_failure_min_health"`
RecoveryFillerEnabled bool `json:"recovery_filler_enabled"`
RecoveryFillerMode string `json:"recovery_filler_mode"`
RecoveryFillerInterval string `json:"recovery_filler_interval"`
RecoveryFillerText string `json:"recovery_filler_text"`
RecoveryFillerEnableAudio bool `json:"recovery_filler_enable_audio"`
SubscriberJoinLag int `json:"subscriber_join_lag"`
SubscriberSlowPolicy string `json:"subscriber_slow_policy"`
SubscriberMaxBlocked string `json:"subscriber_max_blocked"`
SessionIdleTimeout string `json:"session_idle_timeout"`
SessionDrainTimeout string `json:"session_drain_timeout"`
SessionMaxSubscribers int `json:"session_max_subscribers"`
SessionHistoryLimit int `json:"session_history_limit"`
SessionSourceHistoryLimit int `json:"session_source_history_limit"`
SessionSubscriberHistoryLimit int `json:"session_subscriber_history_limit"`
SourceHealthDrainTimeout string `json:"source_health_drain_timeout"`
PreemptSettleDelay string `json:"preempt_settle_delay"`
AutoPrioritizeProbeTuneDelay string `json:"auto_prioritize_probe_tune_delay"`
AutoPrioritizeWorkers string `json:"auto_prioritize_workers"`
ProbeInterval string `json:"probe_interval"`
ProbeTimeout string `json:"probe_timeout"`
AdminAuthConfigured bool `json:"admin_auth_configured"`
AdminJSONBodyLimitBytes int64 `json:"admin_json_body_limit_bytes"`
DVRLineupReloadTimeout string `json:"dvr_lineup_reload_timeout"`
RequestTimeout string `json:"request_timeout"`
RateLimitRPS string `json:"rate_limit_rps"`
RateLimitBurst int `json:"rate_limit_burst"`
RateLimitMaxClients int `json:"rate_limit_max_clients"`
RateLimitTrustedProxies []string `json:"rate_limit_trusted_proxies,omitempty"`
TuneBackoffMaxTunes int `json:"tune_backoff_max_tunes"`
TuneBackoffInterval string `json:"tune_backoff_interval"`
TuneBackoffCooldown string `json:"tune_backoff_cooldown"`
EnableMetrics bool `json:"enable_metrics"`
HTTPRequestLogEnabled bool `json:"http_request_log_enabled"`
LogLevel string `json:"log_level"`
CatalogSearchMaxTerms int `json:"catalog_search_max_terms"`
CatalogSearchMaxDisjuncts int `json:"catalog_search_max_disjuncts"`
CatalogSearchMaxTermRunes int `json:"catalog_search_max_term_runes"`
}
RedactedConfig is safe for logs and startup output.
Click to show internal directories.
Click to hide internal directories.