Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

68 lines
2.3 KiB

# supported stream protocols (the handshake is always performed with TCP)
protocols: [udp, tcp]
# port of the TCP RTSP listener
rtspPort: 8554
# port of the UDP RTP listener
rtpPort: 8000
# port of the UDP RTCP listener
rtcpPort: 8001
# command to run when a client connects.
# this is terminated with SIGINT when a client disconnects.
runOnConnect:
# timeout of read operations
readTimeout: 10s
# timeout of write operations
writeTimeout: 5s
# supported authentication methods
# WARNING: both methods are insecure, use RTSP inside a VPN to enforce security.
authMethods: [basic, digest]
# enable Prometheus-compatible metrics on port 9998
metrics: false
# enable pprof on port 9999 to monitor performances
pprof: false
# destinations of log messages; available options are 'stdout' and 'file'
logDestinations: [stdout]
# if 'file' is in logDestinations, this is the file that will receive the logs
logFile: rtsp-simple-server.log
# these settings are path-dependent. The settings under the path 'all' are
# applied to all paths that do not match a specific entry.
paths:
all:
# source of the stream - this can be:
# * record -> the stream is provided by a client through the RECORD command (like ffmpeg)
# * rtsp://original-url -> the stream is pulled from another RTSP server
source: record
# if the source is an RTSP url, this is the protocol that will be used to pull the stream
sourceProtocol: udp
# if the source is an RTSP url, it will be pulled only when at least one reader
# is connected, saving bandwidth
sourceOnDemand: no
# command to run when this path is requested.
# This can be used, for example, to publish a stream on demand.
# This is terminated with SIGINT when the path is not requested anymore.
runOnDemand:
# command to run when a client starts publishing.
# This is terminated with SIGINT when a client stops publishing.
runOnPublish:
# command to run when a clients starts reading.
# This is terminated with SIGINT when a client stops reading.
runOnRead:
# username required to publish
publishUser:
# password required to publish
publishPass:
# IPs or networks (x.x.x.x/24) allowed to publish
publishIps: []
# username required to read
readUser:
# password required to read
readPass:
# IPs or networks (x.x.x.x/24) allowed to read
readIps: []