ghostream/docs/ghostream.example.yml

179 lines
4.9 KiB
YAML

## Example Ghostream configuration ##
# Uncomment and edit to change values
#
# All settings can also be changed with an environnement variable,
# e.g. GHOSTREAM_AUTH_BACKEND=ldap will change auth.backend to "ldap"
#
# You may also use GHOSTREAM_CONFIG environnement variable to change the
# loading path of the configuration.
## Authentification package ##
auth:
# If you disable authentification no more check will be done on incoming
# streams.
#
#enabled: true
# Authentification backend,
# can be "basic" to use a list of user:password
# can be "ldap" to use a LDAP server
#
#backend: basic
# Basic backend configuration
# To generate bcrypt hashed password from Python, use:
# python3 -c 'import bcrypt; print(bcrypt.hashpw(b"PASSWORD", bcrypt.gensalt(rounds=12)).decode("ascii"))'
#
#basic:
# credentials:
# # Demo user with password "demo"
# demo: $2b$10$xuU7XFwmRX2CMgdSaA8rM.4Y8.BtRNzhUedwN0G8tCegDRNUERTCS
# LDAP backend configuration
#
#ldap:
# uri: ldap://127.0.0.1:389
# userdn: cn=users,dc=example,dc=com
## Stream forwarding ##
# Forward an incoming stream to other servers
# The URL can be anything FFMpeg can accept as an stream output
# If a file is specified, the name may contains %Y, %m, %d, %H, %M or %S
# that will be replaced by the current date information.
forwarding:
# By default nothing is forwarded.
#
# This example forwards a stream named "demo" to Twitch and YouTube,
# and save the record in a timestamped-file,
#demo:
# - rtmp://live-cdg.twitch.tv/app/STREAM_KEY
# - rtmp://a.rtmp.youtube.com/live2/STREAM_KEY
# - /home/ghostream/lives/%name/live-%Y-%m-%d-%H-%M-%S.flv
## Prometheus monitoring ##
# Expose a monitoring endpoint for Prometheus
monitoring:
# If you disable monitoring module, no more metrics will be exposed.
#
#enabled: true
# You should not expose monitoring metrics to the whole world.
# To limit access to only localhost, use 127.0.0.1:2112
#listenAddress: :2112
## SRT server ##
# The SRT server receive incoming stream and can also serve video to clients.
srt:
# If you disable SRT module, it will be no more possible to receive incoming
# streams and this whole app will become useless.
#
#enabled: true
# To limit access to only localhost, use 127.0.0.1:9710
#listenAddress: :9710
# Max number of active SRT connections
#maxClients: 64
## Telnet server ##
# The telnet server receive the stream and emit the stream as ASCII-art.
telnet:
# By default the telnet server is disabled.
#
#enabled: false
# To limit access to only localhost, use 127.0.0.1:8023
#
#listenAddress: :8023
## Transcoders configuration ##
transcoder:
text:
# By default the text transcoder is disabled.
# You need to enable it to use telnet output.
#
#enabled: false
# Size is in characters. It is recommended to keep a 16x9 format.
#
#width: 80
#height: 45
# Time in milliseconds between two images.
# By default 50 ms, so 20 FPS.
# Displaying text takes time.
#
#delay: 50
## Web server ##
# The web server serves a WebRTC player.
web:
# If you disable web module, the stream will be accessible only via SRT or
# via forwarding module (see above).
#
#enabled: true
# Custom CSS stylesheet to change theme
#
#customCss: ""
# Web page favicon, can be .ico, .png or .svg
#
#favicon: /static/img/favicon.svg
# Server name seen by users
# If example.com reverses to this server, then change to example.com
#
#hostname: localhost
# To limit access to only localhost, use 127.0.0.1:8080
#
#listenAddress: :8080
# Web site name
# Put something cool here, such as "Cr@ns Stream"
#
#name: Ghostream
# Use the domain name as the stream name for some hosts
# e.g., on http://stream.example.com:8080/, if the domain stream.example.com is mapped to "example",
# the stream served will be "example".
# This implies that your domain will be able to serve only one stream.
# Dots in the domain name must be remplaced by dashes to avoid yaml issues.
#
#mapDomainToStream:
# stream-example-com: example
# Stream player poster
# Shown when stream is loading or inactive.
#
#playerPoster: /static/img/no_stream.svg
# Refresh period for viewer stats (below the player)
#
#viewersCounterRefreshPeriod: 20000
# Add a web page as a side widget
# This can be a public TheLounge or Element instance to make a chat.
# You can use {{.Path}} to include current stream name,
# e.g. https://example.com/stream_{{.Path}}
#
#widgetURL: ""
## WebRTC server ##
webrtc:
# If you disable webrtc module, the web client won't be able to play streams.
#
#enabled: true
# UDP port range used to stream
# This range must be opened in your firewall.
#
#minPortUDP: 10000
#maxPortUDP: 11000
# STUN servers, you should host your own Coturn instance
#
#STUNServers:
# - stun:stun.l.google.com:19302