GithubHelp home page GithubHelp logo

junkai0531 / srs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ossrs/srs

0.0 0.0 0.0 247.48 MB

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

Home Page: https://ossrs.io

License: MIT License

Shell 2.26% JavaScript 5.78% C++ 87.79% Python 0.19% Lua 0.04% Go 0.39% CSS 0.01% Makefile 0.03% HTML 3.33% NSIS 0.09% CMake 0.06% Batchfile 0.01% Dockerfile 0.03%

srs's Introduction

SRS(Simple Realtime Server)

SRS/6.0 (Hang) is a simple, high-efficiency, and real-time video server, supporting RTMP/WebRTC/HLS/HTTP-FLV/SRT/MPEG-DASH/GB28181, Linux/Windows/macOS, X86_64/ARMv7/AARCH64/M1/RISCV/LOONGARCH/MIPS, and essential features.

SRS Overview

Note: For more details on the single-node architecture for SRS, please visit the following link.

SRS is licenced under MIT or MulanPSL-2.0. Please note that while MulanPSL-2.0 is compatible with Apache-2.0, some third-party libraries are distributed under their licenses.

Usage

Please refer to the Getting Started or 中文文档:起步 guide.

To compile SRS from source:

git clone -b develop https://gitee.com/ossrs/srs.git &&
cd srs/trunk && ./configure && make && ./objs/srs -c conf/srs.conf

Open http://localhost:8080/ to verify, and then stream using the following FFmpeg command:

ffmpeg -re -i ./doc/source.flv -c copy -f flv -y rtmp://localhost/live/livestream

Alternatively, stream by OBS using the following configuration:

  • Service: Custom
  • Server: rtmp://localhost/live
  • Stream Key: livestream

Play the following streams using media players:

Please note that to convert RTMP to WebRTC, you should use the file rtmp2rtc.conf.

Note: In addition to FFmpeg or OBS, it is possible to publish by H5 via WHIP as well. To enable WebRTC to publish and convert it to RTMP, please refer to the wiki(CN, EN) documentation. It is essential to ensure the candidate(CN or EN) is set correctly for WebRTC to avoid potential issues, as it can cause significant problems.

Note: It is highly recommended to run SRS directly with docker(CN / EN), CVM(CN / EN), or K8s(CN / EN). However, compiling SRS from source code is also possible and easy. For detailed instructions, please refer to the "Getting Started"(CN / EN) guide.

Note: If you require HTTPS for WebRTC and modern browsers, please refer to the HTTPS API(CN / EN), HTTPS Callback(CN / EN), and HTTPS Live Streaming(CN / EN) documentation. Additionally, SRS works perfectly with an HTTPS proxy like Nginx.

Please refer to the following wikis for more information:

  • What are the steps to deliver RTMP streaming? (CN, EN)
  • What is the process for delivering WebRTC streaming? (CN, EN)
  • What are the steps to convert RTMP to HTTP-FLV streaming? (CN, EN)
  • How can RTMP be converted to HLS streaming? (CN, EN)
  • What is the best approach for delivering low-latency streaming? (CN, EN)
  • How can an RTMP Edge-Cluster be constructed? (CN, EN)
  • What is the process for building an RTMP Origin-Cluster? (CN, EN)
  • How can an HLS Edge-Cluster be set up?(CN, EN)

Here are some other important wikis:

  • Usage: What is the method for delivering DASH (Experimental)? (CN, EN)
  • Usage: How can an RTMP stream be transcoded using FFMPEG? (CN, EN)
  • Usage: What is the process for setting up an HTTP FLV Live Streaming Cluster? (CN, EN)
  • Usage: How can HLS be delivered using an NGINX Cluster? (CN, EN)
  • Usage: What steps are to ingest a file, stream, or device to RTMP? (CN, EN)
  • Usage: How can a stream be forwarded to other servers? (CN, EN)
  • Usage: What are the strategies for improving edge performance on multiple CPUs? (CN, EN)
  • Usage: How can bugs be reported or contact be made with us? (CN, EN)

Sponsor

Would you like additional assistance from us? By becoming a sponsor or backer of SRS, we can provide you with the support you need:

  • Backer: $5 per month, online text chat support through Discord.
  • Sponsor: $100 per month, online meeting support, 1 meeting per month in 1 hour.

Please visit OpenCollective to become a backer or sponsor, and send us a direct message on Discord. We are currently providing support to the developers listed below:

We at SRS aim to establish a non-profit, open-source community that assists developers worldwide in creating your own high-quality streaming and RTC platforms to support your businesses.

AUTHORS

The TOC(Technical Oversight Committee) and contributors:

  • Winlin: Founder of the project, focusing on ST and Issues/PR. Responsible for architecture and maintenance.
  • ZhaoWenjie: One of the earliest contributors, focusing on HDS and Windows. Has expertise in client technology.
  • ShiWei: Specializes in SRT and H.265, maintaining SRT and FLV patches for FFmpeg. An expert in codecs and FFmpeg.
  • XiaoZhihong: Concentrates on WebRTC/QUIC and SRT, with expertise in network QoS. Contributed to ARM on ST and was the original contributor for WebRTC.
  • WuPengqiang: Focused on H.265, initially contributed to the FFmpeg module in SRS for transcoding AAC with OPUS for WebRTC.
  • XiaLixin: Specializes in GB28181, with expertise in live streaming and WebRTC.
  • LiPeng: Concentrates on WebRTC and contributes to memory management and smart pointers.
  • ChenGuanghua: Focused on WebRTC/QoS and introduced the Asan toolchain to SRS.
  • ChenHaibo: Specializes in GB28181 and HTTP API, contributing to patches for FFmpeg with WHIP.
  • ZhangJunqin: Focused on H.265, Prometheus Exporter, and API module.

A big THANK YOU also goes to:

Contributing

We extend our heartfelt gratitude to the community for their contributions in identifying bugs and enhancing the project. To stay connected with us and keep contributing to our community, please follow the guide.

LICENSE

FOSSA Status

SRS is licenced under MIT or MulanPSL-2.0. Please note that while MulanPSL-2.0 is compatible with Apache-2.0, some third-party libraries are distributed under their licenses.

Releases

  • 2023-08-31, Release v6.0-d1, v6.0-d1, 6.0 dev1, v6.0.72, 167135 lines.
  • 2023-07-09, Release v6.0-d0, v6.0-d0, 6.0 dev0, v6.0.59, 166739 lines.
  • 2023-08-31, Release v5.0-b4, v5.0-b4, 5.0 beta4, v5.0.176, 162919 lines.
  • 2023-08-02, Release v5.0-b3, v5.0-b3, 5.0 beta3, v5.0.170, 162704 lines.
  • 2023-07-09, Release v5.0-b2, v5.0-b2, 5.0 beta2, v5.0.166, 162520 lines.
  • 2023-06-11, Release v5.0-b1, v5.0-b1, 5.0 beta1, v5.0.157, 162494 lines.
  • 2023-05-14, Release v5.0-b0, v5.0-b0, 5.0 beta0, v5.0.155, 162600 lines.
  • 2023-03-23, Release v5.0-a5, v5.0-a5, 5.0 alpha5, v5.0.148, 162066 lines.
  • 2023-02-12, Release v5.0-a4, v5.0-a4, 5.0 alpha4, v5.0.141, 161897 lines.
  • 2023-01-02, Release v5.0-a3, v5.0-a3, 5.0 alpha3, v5.0.128, 161327 lines.
  • 2022-12-18, Release v5.0-a2, v5.0-a2, 5.0 alpha2, v5.0.112, 161233 lines.
  • 2022-12-01, Release v5.0-a1, v5.0-a1, 5.0 alpha1, v5.0.100, 160817 lines.
  • 2022-11-25, Release v5.0-a0, v5.0-a0, 5.0 alpha0, v5.0.98, 159813 lines.
  • 2022-11-22, Release v4.0-r4, v4.0-r4, 4.0 release4, v4.0.268, 145482 lines.
  • 2022-09-16, Release v4.0-r3, v4.0-r3, 4.0 release3, v4.0.265, 145328 lines.
  • 2022-08-24, Release v4.0-r2, v4.0-r2, 4.0 release2, v4.0.257, 144890 lines.
  • 2022-06-29, Release v4.0-r1, v4.0-r1, 4.0 release1, v4.0.253, 144680 lines.
  • 2022-06-11, Release v4.0-r0, v4.0-r0, 4.0 release0, v4.0.252, 144680 lines.
  • 2020-06-27, Release v3.0-r0, 3.0 release0, 3.0.141, 122674 lines.
  • 2020-02-02, Release v3.0-b0, 3.0 beta0, 3.0.112, 121709 lines.
  • 2019-10-04, Release v3.0-a0, 3.0 alpha0, 3.0.56, 107946 lines.
  • 2017-03-03, Release v2.0-r0, 2.0 release0, 2.0.234, 86373 lines.
  • 2016-08-06, Release v2.0-b0, 2.0 beta0, 2.0.210, 89704 lines.
  • 2015-08-23, Release v2.0-a0, 2.0 alpha0, 2.0.185, 89022 lines.
  • 2014-12-05, Release v1.0-r0, all bug fixed, 1.0.10, 59391 lines.
  • 2014-10-09, Release v0.9.8, all bug fixed, 1.0.0, 59316 lines.
  • 2014-04-07, Release v0.9.1, live streaming. 30000 lines.
  • 2013-10-23, Release v0.1.0, rtmp. 8287 lines.
  • 2013-10-17, Created.

Features

Please read FEATURES.

Changelog

Please read CHANGELOG.

Performance

Please read PERFORMANCE.

Architecture

Please read ARCHITECTURE.

Ports

Please read PORTS.

APIs

Please read APIS.

Mirrors

Please read MIRRORS.

Dockers

Please read DOCKERS.

Beijing, 2013.10
Winlin

srs's People

Contributors

winlinvip avatar xiaozhihong avatar xialixin avatar runner365 avatar chundonglinlin avatar duiniuluantanqin avatar zhengfl avatar chen-guanghua avatar johzzy avatar hungmingwu avatar lipeng19811218 avatar harlanc avatar mapengfei53 avatar snailtowardthesun avatar bluestn avatar t-bagwell avatar chandzhang avatar panda1986 avatar wenjiegit avatar rocfang avatar huachao avatar terrencetang2023 avatar pieerepi avatar lam2003 avatar callmenp avatar yapingcat avatar wrennywang avatar mingo-wu1 avatar zhouxiaojun2008 avatar xiaofeilong avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.