SRS Stack is an all-in-one, out-of-the-box, and open-source video solution for creating online video services, including live streaming and WebRTC, on the cloud or through self-hosting.
SRS Stack makes it easy for you to create an online video service. It is made using Go, Reactjs, SRS, FFmpeg, and WebRTC. It supports protocols like RTMP, WebRTC, HLS, HTTP-FLV, and SRT. It offers features like authentication, streaming on multiple platforms, recording, transcoding, virtual live events, automatic HTTPS, and an easy-to-use HTTP Open API.
Package | Version | License |
---|---|---|
SRS Stack | 5.13.31 | AGPL-3.0-or-later |
SRS | 5.0 | MIT |
Docker | 20.10 | Apache-2.0 |
Nginx | 1.18.0 | Custom |
Redis | 5.0 | BSD-3-Clause |
FFmpeg | 4.2 | GPL-2.0 |
Click the Deploy to DigitalOcean button to create a Droplet based on this 1-Click App. If you aren’t logged in, this link will prompt you to log in with your DigitalOcean account.
In addition to creating a Droplet from the SRS 1-Click App using the control panel, you can also use the DigitalOcean API. As an example, to create a 4GB SRS Droplet in the SFO2 region, you can use the following curl
command. You need to either save your API access token) to an environment variable or substitute it in the command below.
curl -X POST -H 'Content-Type: application/json' \
-H 'Authorization: Bearer '$TOKEN'' -d \
'{"name":"choose_a_name","region":"sfo2","size":"s-2vcpu-4gb","image": "ossrs-srs"}' \
"https://api.digitalocean.com/v2/droplets"
Please follow the steps to configure SRS.
Create a droplet from the image available in the Marketplace.
After you created a Droplet, you can navigate to http://your_droplet_public_ipv4/mgmt
to initialize it.
Note: If you forget the password, you can find it at
/data/config/.env
as envMGMT_PASSWORD
Follow the guide in SRS, to publish stream and play it.
If wants to publish by WebRTC, you must setup the HTTPS.
Add a domain to your droplet. This is required because most browsers require HTTPS in order to allow you to use the camera and microphone in a website, and it’s not possible to enable HTTPS just with an IP.
Then navigate to System / HTTPS
and input your domain, click the Submit
to request a HTTPS cert from letsencrypt.