Skip to content

v3_EN_Docs

winlin edited this page Aug 29, 2015 · 36 revisions

Welcome to the simple-rtmp-server wiki!

To ask questions or file bug reports, please see HowToAskQuestion

What's the product plan of SRS? What are the key features? Please see: [SRS Product] (v1_EN_Product)

For a comparison of SRS and other streaming media servers, please see Product Comparison

The key features of SRS, the implementation, both planned and not planned. Please see: SRS Features

Is there a public server for an SRS demo? I provide a server with public ip and name (ossrs.net) for all users to publish and play, it's free but it's only for testing. Please see: SRS Demo Server

Who is using SRS? What can you use SRS for, for your project and customers? Please see: Applications

How to build SRS? How to enable or disable the feature of SRS? How to build and start the demo pages of SRS? Please see: Build SRS

How to use init.d script to start SRS as a system service? How to run SRS as a daemon? How to auto start SRS when the system restarts? How to start SRS demo pages (including the players, encoders and video meeting demo)? Please see: SRS Init.d Script

How to get the SRS logs? How to trace logs to console? How to get less verbose logs because the log files are too large? How to get more detailed log levels? How to get warning level log only? Please see: SRS Log

The architecture for all SRS developers。Please see: SRS Architecture

What is the vhost or app or stream of RTMP? How to pass the authentication params to the server in the RTMP URL? Please see: RTMP URL & Vhost

Why build openssl for RTMP server? What are the simple and complex handshakes of RTMP? Which scenarios should use simple handshake? Please see: RTMP Handshake

How to use SRS to transcode live streams? How to transcode audio only? How to passthrough audio or video? How to add a logo to a stream? What are the transcode params and the sequence for FFPMEG? Please see: FFMPEG Live Transcoding

How to support RTMP streaming with SRS? How to configure SRS to support RTMP? What is the benefit of RTMP? Please see: RTMP Delivery

How to convert RTMP to be delivered as HLS? What is HLS? How to configure HLS in SRS? Please see: HLS Delivery

How to convert RTMP to be delivered as HDS? What is HDS? How to configure HDS in SRS? Please see: HDS Delivery

How to deliver FLV VOD stream, or to support xxx.flv?start=offset? How to deliver FLV live stream, or to remux RTMP to FLV? How to deliver HTTP AAC stream? How to deliver HTTP TS stream? How to deliver HTTP MP3 stream? Please read HTTP Stream Delivery

How to choose a delivery protocol? What about RTMP? What about HTTP? What about HLS? The history and use scenarios of RTMP, HTTP and HLS. Please see: RTMP PK HLS

Can SRS support HTTP? How to deliver files over HTTP with SRS? Why does SRS support an embedded HTTP server? Can you use an external HTTP Server? Please see: Embedded HTTP Server

[DVR record live stream] (v2_EN_DVR)

How to record a live stream to an FLV file? How to record to pieces of files which start from keyframes with similar duration? What is the DVR plan, for example, segment and session plan? How to specify the path and filename? Please see: [DVR record live stream] (v2_EN_DVR)

[DRM] (v3_EN_DRM)

How to support hotlink denial? Does SRS support DRM? How to configure referrer DRM? How to implement token DRM? Does SRS support FMS token traversal? Please see: [DRM] (v3_EN_DRM)

How to reload SRS? How to add new vhosts without restarting the server? How to change the configuration without restarting the server? Please see: Reload

How to use SRS in pseudo realtime? What is the latency? What is the minimum latency of SRS in a commercial scenario, for example, CDN networks? Please see: Low Latency

About the HttpCallback or HttpHooks. How to authenticate the client? How to make callbacks to external HTTP APIs when clients publish a stream? How to notify your system when clients connect or disconnect? How to hook into the DVR? Please see: HTTP Callback

How to manage the server via the HTTP management API? How to manage the server, for example, to get server status in HTML pages? How can PHP/python management systems manage SRS? Please see: HTTP Management API

How does SRS pull specified RTMP/RTSP/HTTP streams and deliver them? How to deliver your RTSP stream from your ancient RTSP camera to RTMP, then deliver it to CDNs as RTMP or HLS? How to encode the signals from a device to output to SRS and then deliver them to the Internet? Please see: Ingest

How to push RTSP to SRS? How does SRS accept RTSP streams? How to push MPEG-TS over UDP to SRS? How does SRS accept streams over other protocols? Read Streamer

How to use SRS with CDNs? Does SRS support the key features for CDN: vhost, edge, reload, HTTP API and MIT source code? Why forwarding and ingesting is not okay for huge live clusters? Does SRS support FMS edge mode? Please see: Edge: Huge Live Cluster

How to use SRS for a small number of streams and server cluster? How to build origin fault backup with only one stream? Please see: Forward: Tiny Live Cluster

How to apply a security strategy? How to deny all publishing and allow all playback? How to deny clients by specified IP addresses? Please see: Security: Allow or Deny Clients

How to support exec or exec_publish like nginx-rtmp? Please read Exec: Fork external program

How many concurrent connections can SRS serve? What about the performance of SRS? We compare the high performance server nginx-rtmp and SRS, and provide some benchmarks for server performance checks. Please see: Performance Benchmark

What about the performance benchmark on arm (raspberrypi)? How many concurrent connections are supported on arm for SRS? Please see: RaspberryPi Performance Benchmark

How do you transcode live streams on a raspberrypi? How do you deliver HLS on raspberrypi? Please see: RaspberryPi Transcoding

Why doesn't SRS support ServerSide script? How to use HTTP callbacks instead? Please see: ServerSide Script

How does SRS support Flash/Android/IOS P2P? Please read Flash/Android/IOS P2P

Why does SRS provide a client RTMP library? How to use srs-librtmp? How to modify the amf0 metadata to use srs-librtmp? How to get server debug info from srs-librtmp? Please see: SRS-librtmp

How to use SRS on linux-arm devices to deliver RTMP? What is the performance of SRS on linux-arm? Please see: SRS for linux-arm

What is the status of the SRS Windows branch? Why is the SRS Windows branch experimental and not recommended for use? What about the srs-librtmp Windows branch? Why is srs-librtmp Windows branch okay for Windows? Please see: SRS windows Branch

What is the bandwidth between the player and the SRS server? SRS provides c (in srs-librtmp), javascript and flash SDKs to test the bandwidth. Please see: SRS Bandwidth Test(BandwidthTestTool, BWTC)

How to deliver streams with ATC timestamp? How to support HDS/HLS origin server fault-backup? Please see: RTMP ATC

How does SRS correct the timestamps of streams? How to correct the time jitter? How to ensure the timestamp of RTMP to increase monotonically? Please see: TimeJitter Timestamp Correct

SRS can report status to external HTTP servers by POSTing to an HTTP URL. For example, SRS on arm can report its data to a management server. Please see: Heartbeat

Does SRS support VOD? What about the FLV VOD stream? How to support time-shift for live streams? How to deliver DVR files as VOD streams? Please see: FLV VOD stream

How to figure out memory leaks? Why use gmc? Why isn't valgrind supported by SRS? How to figure out performance bottlenecks? Please see: GPERF Memory and Performance Analysis

How to figure out the performance issues of SRS? How to use gprof? How to draw performance graphs using dot? Please see: GPROF Performance Analysis

How to use the kernel performance tool perf to figure out the performance issues of SRS? Please see: Perf Performance Analysis

How to choose a C++ IDE? We recommend the UltimateC++ or Clion. Please see: C++ IDE

How to get the stable release of SRS? How to merge master with your branch? How to use CSDN mirror in China? Please see: GIT Usage

Usage: How to use SRS to deliver RTMP? Please see: Usage: RTMP

Usage: How to use SRS to deliver RTMP cluster? Please see: Usage: RTMP Cluster

Usage: How to use SRS to deliver HTTP FLV live streaming? Please read Usage: HTTP FLV

Usage: How to use SRS to deliver HTTP FLV live streaming cluster? Please read Usage: HTTP FLV Cluster

Usage: How to use SRS to deliver HLS? Please see: Usage: HLS

Usage: How to use SRS to transcode stream (non H.264+AAC) to deliver HLS? Please see: Usage: Transcode2HLS

Usage: How to use SRS to transcode streams? How to transcode codecs for HLS? Please see: Usage: FFMPEG

Usage: How to ingest files to live stream? How to ingest existing streams to SRS? How to use SRS for virtual live streaming? How to ingest RTSP to SRS? Please see: Usage: Ingest

Usage: How to use SRS to build tiny clusters? How to build an origin backup cluster when you only have one stream? How to forward streams to other servers from SRS? How to forward streams to a backup server from SRS? Please see: Usage: Forward

Usage: How to decrease the latency to <1s? How to configure SRS in minimum latency mode? Please see: Usage: Realtime

Usage: How to run SRS on ARM linux? Please see: Usage: ARM

Usage: How to deliver HLS without an external HTTP server? How to use the embedded HTTP server of SRS? Please see: Usage: HTTP

Usage: How to deploy the demo of SRS? The SRS demo provides players, flash encoders, live meeting demo, flash HLS player, and transcoding. Please see: Usage: DEMO

Winlin 2015.5

Welcome to SRS wiki!

SRS 5.0 wiki

Please select your language:

SRS 4.0 wiki

Please select your language:

SRS 3.0 wiki

Please select your language:

SRS 2.0 wiki

Please select your language:

SRS 1.0 wiki

Please select your language:

Clone this wiki locally