The features of SRS.
- System: Support coroutine state-threads for high performance.
- System: Support native HTTP server(CN, EN) for http api and http live streaming.
- System: Support DVR(CN, EN) to record live streaming to FLV file.
- System: Support security strategy including allow/deny publish/play IP(CN, EN).
- System: Security: Enable CIDR for allow/deny play/publish, #2914. v4.0.248+
- System: Support Vhost(CN, EN) and __defaultVhost__.
- System: Support reloading(CN, EN) to apply changes of config.
- System: Support traceable and session-based log(CN, EN).
- System: Support listen at IPv4 and IPv6, read #460.
- System: Support docker by srs-docker.
- System: Support multiple processes by ReusePort(CN, EN), #775.
- System: Support include directive for config file, #2878.
- System: Support x86_64, armv7 and aarch64 docker image, #3058. v5.0.29+
- System: [Experimental] Enhance HTTP Stream Server for HTTP-FLV, HTTPS, HLS etc. #1657.
- System: [Experimental] Support DVR in MP4 format, read #738.
- System: [Experimental] Support Cygwin64 and MIPS cpu. v5.0.13+
- System: [Experimental] Support RISCV cpu, #3115. v5.0.33+
- System: [Experimental] Support loongarch, loongson CPU, #2689. v5.0.38+
- System: [Experimental] Support Apple Silicon M1(aarch64), #2747. v5.0.41+
- System: [Experimental] Support distributed tracing by Tencent Cloud APM. v5.0.64+
- System: [Experimental] Support grab backtrace stack when assert fail. v5.0.80+
- System: [Experimental] Support Google Address Sanitizer, #3216. v5.0.81+
- System: [Experimental] Windows: Support cygwin pipline and packager, #2532. v5.0.89+
- API: Support HTTP API(CN, EN) for system management.
- API: Support HTTP callback(CN, EN) for authentication and integration.
- API: Support reuse HTTP Stream port for HTTP API, #2881.
- API: [Experimental] Support Prometheus exporter, #2899. v5.0.67+
- Live: Support Edge Cluster for live streaming, see (CN, EN).
- Live: Support Origin server for converting RTMP to HTTP-FLV(CN, EN) and HLS(CN, EN).
- Live: Support Edge server for converting RTMP to HTTP-FLV(CN, EN).
- Live: Support HLS with aac(h.264+aac) and mp3(h.264+mp3) codec, please read bug #301.
- Live: Support transmux RTMP to HTTP-FLV/MP3/AAC/TS, please read wiki(CN, EN).
- Live: Support timestamp correcting for long time(>4.6hours) publishing/playing.
- Live: Support gop-cache(CN, EN) for player fast startup.
- Live: High performance(CN, EN) RTMP/HTTP-FLV, 6000+ connections.
- Live: Enhanced RTMP url which supports vhost in stream, read #1059.
- Live: Support origin cluster, please read #464, RTMP 302.
- Live: Support NGINX HLS Cluster, see CN or EN.
- Live: SRT: Support PUSH SRT by IP and optional port, see #3198. v5.0.76+
- Live: Kickoff publisher when stream is idle, which means no players. v5.0.144+
- Live: [Experimental] Support SRT server, read #1147. v4.0.143+
- Live: [Experimental] Support Coroutine Native SRT over ST, #3010. v5.0.30+
- RTC: Support playing stream by WebRTC, #307.
- RTC: Support publishing stream by WebRTC, #307.
- RTC: Support mux RTP/RTCP/DTLS/SRTP on one port for WebRTC, #307.
- RTC: Support client address changing for WebRTC, #307.
- RTC: Support transcode RTMP/AAC to WebRTC/Opus, #307.
- RTC: Support Unity to publish or play stream. v5.0.62+
- RTC: [Experimental] Support AV1 codec for WebRTC, #2324.
- RTC: [Experimental] Support transmux RTC to RTMP, #2093.
- RTC: [Experimental] Support WebRTC over TCP directly, #2852. v5.0.60+
- RTC: [Experimental] Support WHIP(WebRTC-HTTP ingestion protocol), #3170. v5.0.61+
- RTC: [Experimental] Support Larix Broadcaster, #3476. v5.0.148+
- Other: Support ingesting(CN, EN) other protocols to SRS by FFMPEG. v1.0.0+
- Other: Support forwarding(CN, EN) to other RTMP servers. v1.0.0+
- Other: Support transcoding(CN, EN) by FFMPEG. v1.0.0+
- Other: All wikis are writen in Chinese and English. v2.0.23+
- Other: Support valgrind and latest ARM by patching ST, read ST#1 and ST#2. v3.0.11+
- Other: Enhanced complex error code with description and stack, read #913. v3.0.26+
- Other: Support test coverage for core/kernel/protocol/service. v3.0.91+
- Other: Support a simple mgmt console, please read srs-console. v3.0.43+
- Other: Support dynamic forwarding by backend api, #2799. v5.0.24+
- Other: Support write log to tencent cloud CLS. v5.0.44+
- Other: [Experimental] Support pushing MPEG-TS over UDP, please read bug #250. v2.0.111+
- Other: [Experimental] Support pushing FLV over HTTP POST, please read wiki(CN, EN). v2.0.163+
- Other: [Experimental] Support push stream by GB28181, #3176. v5.0.74+
- Other: Support WHIP/WHEP player, #3460. v5.0.147+
- System: Support Windows/Cygwin 64bits, #2532.
- System: Support H.265 over RTMP and HLS, #465.
- System: Proxy to extend origin servers, #3138.
- System: Support source cleanup for idle streams, #413.
- Live: Support HLS variant, #463.
- RTC: Support IETF-QUIC for WebRTC Cluster, #2091.
- RTC: Improve RTC performance to 5K by multiple threading, #2188.
- Other: Support change user to run SRS, #1111.
- [Deprecated] Live: Support Adobe HDS(f4m), please read wiki(CN, EN) and #1535.
- [Deprecated] Other: Support bandwidth testing, please read #1535.
- [Deprecated] Other: Support Adobe FMS/AMS token traverse(CN, EN) authentication, please read #1535.
- [Removed] Other: Support pushing RTSP, please read #2304.
- [Removed] Other: Support HTTP RAW API, please read #2653.
- [Removed] Other: Support RTMP client library: srs-librtmp.
Remark: About the milestone and product plan, please read (CN, EN) wiki.