• Stars
    star
    319
  • Rank 126,562 (Top 3 %)
  • Language
    JavaScript
  • License
    GNU Affero Genera...
  • Created over 2 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

SRS Stack is a video solution that is lightweight, open-source, and based on Go, Reactjs, SRS, FFmpeg, WebRTC, etc.

Usage

Run srs-stack in one docker:

docker run --rm -p 2022:2022 -p 2443:2443 -p 1935:1935/tcp -p 1985:1985/tcp \
  -p 8080:8080/tcp -p 8000:8000/udp -p 10080:10080/udp --name srs-stack \
  -v $HOME/db:/data ossrs/srs-stack:5

Note: Please use -e REACT_APP_LOCALE=zh and registry.cn-hangzhou.aliyuncs.com/ossrs/srs-stack:1 in China.

Note: All data will be saved in $HOME/db directory, please change it to your directory.

Then open http://localhost:2022 in browser.

You have the option to modify the volumes for srs-stack and direct them to different directories.

  • /data The global data directory.
    • .well-known The directory for Let's Encrypt ACME challenge.
    • config The .env for password, srs/redis/nginx/prometheus config, and SSL files.
    • dvr The dvr storage directory, save dvr files.
    • lego The LEGO Let's Encrypt ACME challenge directory.
    • record The record storage directory, save record files.
    • redis The redis data directory, the publish secret and record configuration.
    • signals The signals storage directory, save signal files.
    • upload The upload storage directory, save upload files.
    • vlive The storage directory for virtual live, save video files.
    • vod The storage directory for VoD, save video files.

You can use environment variables to modify the settings.

  • MGMT_PASSWORD: The mgmt administrator password.
  • REACT_APP_LOCALE: The i18n config for ui, en or zh, default to en.

Note: The MGMT_PASSWORD is also saved in /data/config/.env, you can modify it by yourself.

To access additional environment variables, please refer to the Environments section.

FAQ

  1. English FAQ
  2. δΈ­ζ–‡ FAQ

Tutorials

Other more use scenarios is on the way, please read this post.

Features

The features that we're developing:

  • A mgmt support authentication and automatic updates.
  • Run SRS in docker, query status by docker and SRS API.
  • Support publish by RTMP/WebRTC, play by RTMP/HTTP-FLV/HLS/WebRTC.
  • SRS container use docker logs json-file and rotate for logging.
  • Support high-resolution and realtime(200~500ms) live streaming by SRT.
  • Run SRS hooks in docker, to callback by SRS server.
  • Support publish by SRT, play by RTMP/HTTP-FLV/HLS/WebRTC/SRT.
  • Support DVR to tencent cloud storage, see #1193.
  • Change redis port and use randomly password.
  • Support integrity with tencent cloud VoD.
  • Forward stream to multiple platforms, see #2676.
  • Support WordPress Plugin or here.
  • Support Typecho Plugin.
  • Support aaPanel to install on any linux.
  • Support DVR to local disk.
  • Support upgrade to latest version manually.
  • Support HTTPS by let's encrypt with LEGO.
  • Support GB28181 by SRS 5.0 container.
  • Support live streaming transcoding by FFmpeg, see #2869.
  • Support virtual live streaming, covert file or other resource to live.
  • Support WebRTC face to face chat, see #2857.
  • Support WebRTC video chat room, see #2924.
  • Support a set of tools for developer, see #2891.
  • Collect logs of mgmt and containers together.
  • Stop, restart and upgrade containers.
  • Support logrotate to manage the logs.
  • Enhance prometheus API with authentication.
  • Integrate with prometheus and node-exporter.

License

SRS Stack is an open-source project, licensed under the AGPL-3.0-or-later license.

Developer

For development, please refer to the Environments about the API and architecture.

2022.11

More Repositories

1

srs

SRS is a simple, high-efficiency, real-time video server supporting RTMP, WebRTC, HLS, HTTP-FLV, SRT, MPEG-DASH, and GB28181.
C++
23,947
star
2

state-threads

Lightweight thread library for C/C++ coroutine (similar to goroutine), for high performance network servers.
C++
699
star
3

go-oryx

A HTTP/HTTPS API proxy for SRS.
Go
640
star
4

srs-bench

SB(SRS Bench) is a set of benchmark and regression test tools, for SRS and other media servers, supports HTTP-FLV, RTMP, HLS, WebRTC and GB28181.
Go
371
star
5

srs-sea

The SEA(Stream Encoder for Android) publish live stream to SRS over HTTP-FLV.
312
star
6

flutter_live

Live streaming player, iOS+Android, RTMP/HTTP-FLV/HLS/WebRTC, by Flutter+SRS.
JavaScript
303
star
7

srs-librtmp

The client library srs-librtmp of SRS(https://github.com/ossrs/srs)
247
star
8

librtmp

Fork from http://git.ffmpeg.org/rtmpdump integrated with srs.
C
142
star
9

go-oryx-lib

The public multiple media library for https://github.com/ossrs/go-oryx.
Go
105
star
10

srs-console

SRS console at http://ossrs.net/console
88
star
11

srs-gb28181

GB28181 server based on SRS
81
star
12

dev-docker

The docker for development environment for SRS.
Dockerfile
77
star
13

srs-unity

WebRTC Samples with SRS SFU server for Unity.
C#
54
star
14

signaling

A demo WebRTC signaling for https://github.com/ossrs/srs
JavaScript
44
star
15

srs-ble

The BLE is a better BULL LIVE ENCODER than OBS for PC(Windows/MAC).
31
star
16

srs-dolphin

Multiple cores ability for https://github.com/ossrs/srs
26
star
17

ai-talk

AI-Talk allows you to talk with OpenAI GPT.
Go
25
star
18

srs-sip

The SIP demo application for SRS GB28181.
Java
20
star
19

go-sharp

The go-sharp(go-srs-http-advanced-reverse-proxy) is the proxy for SRS HTTP FLV.
19
star
20

Typecho-Plugin-SrsPlayer

SRS Player is a video streaming player, supports HLS/HTTP-FLV/WebRTC etc.
JavaScript
19
star
21

srs-k2

Apply https://github.com/k2-fsa/sherpa-ncnn in live streaming and WebRTC
Go
18
star
22

ai-translation

AI translation for English study based on FFmpeg, Whisper, Fairseq, OBS, SRS, and GPT.
Python
17
star
23

srs-k8s-template

Template repository for deploying SRS to any K8s service by GitHub Actions
14
star
24

srs-windows

Adapt SRS for Windows
C++
12
star
25

WordPress-Plugin-SrsPlayer

SRS Player is a video streaming player, supports HLS/HTTP-FLV/WebRTC etc.
JavaScript
12
star
26

srs-docs

The documents for SRS
JavaScript
11
star
27

tc-ui

WebUI for tcconfig and tc
JavaScript
7
star
28

srs-helm

Helm Charts for SRS media server.
Shell
6
star
29

issues-translation

Use AI/GPT to translate GitHub issues into English.
Python
5
star
30

flutter_rtc

WebRTC demo by Flutter for https://github.com/ossrs/srs
Dart
4
star
31

srs-ack-template

Template repository for deploying SRS to ACK(Alibaba Cloud Container Service for Kubernetes)
4
star
32

tea

TEA(TC eBPF for AV) is a network emulator and a set of tools for SRS and any media systems.
C
4
star
33

srs-las

LAS server based on SRS
C++
3
star
34

srs-simulcast

WebRTC simulcast for SRS
C++
3
star
35

srs-spa

The SPA(Stream Player for Android) play live stream from SRS over HTTP-FLV.
3
star
36

flutter_srs

A new Flutter project.
C++
2
star
37

srs-sctp

WebRTC datachannel for SRS
C++
2
star
38

srs-toolkit-idea

SRS Toolkit for IntelliJ IDEA - a plugin for integrating with SRS from JetBrains IDEs, for https://github.com/ossrs/srs
Kotlin
2
star
39

srs-aks-template

Template repository for deploying SRS to AKS(Azure Kubernetes Service)
2
star
40

ossrs.net

For https://ossrs.net
HTML
1
star
41

srs-droplet-template

Deploy SRS to DigitalOcean droplet
1
star
42

srs-g711

Support G.711 for SRS
C++
1
star
43

srs-secure-api

Demonstrated Secure HTTP API for SRS.
1
star
44

k8s-set-context-action

GitHub Action for setting context before deploying to Kubernetes clusters
JavaScript
1
star