srs

ossrsMIT活跃维护

简单高性能的实时流媒体服务器,支持 RTMP、WebRTC、HLS、SRT 等主流协议和多种音视频编码,适合搭建低延迟直播与分发服务。

SRS is a simple, high-performance, AI-driven real-time media server supporting RTMP, WebRTC, HLS, HTTP-FLV, HTTP-TS, SRT, MPEG-DASH, and GB28181, with codec support for H.264, H.265, AV1, VP9, AAC, Opus, and G.711.

v6.0-r3发布于 2026-10-31 01:13 UTC29,436star +3 / 7 天5,707fork同步于 2026-11-10 11:21 UTC

怎么上手

由 README 提炼,执行前请确认
docker run --rm -it -p 1935:1935 -p 1985:1985 -p 8080:8080 -p 8000:8000/udp -p 10080:10080/udp ossrs/srs:6
硬件要求按 README 说明

README 未说明显存或 GPU 要求;支持 Linux、macOS 及 Windows x64,覆盖 x86_64、ARMv7、AArch64、Apple M1、RISC-V、LoongArch、MIPS 架构。

支持 Apple Silicon有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

SRS 是高性能实时媒体服务器,支持 RTMP、WebRTC、HLS、SRT 等多种协议互转

简单高性能的实时流媒体服务器,支持 RTMP、WebRTC、HLS、SRT 等主流协议和多种音视频编码,适合搭建低延迟直播与分发服务。

核心能力

  • 支持 RTMP、WebRTC、HLS、HTTP-FLV、SRT、MPEG-DASH、GB28181 协议
  • 支持 H.264、H.265、AV1、VP9、AAC、Opus、G.711 编解码
  • 可在 RTMP 与 WebRTC 之间互相转换
  • 提供 HTTP API、DVR 录制、转码与集群能力
  • 覆盖 x86_64、ARM、M1、RISC-V、LoongArch、MIPS 架构

容易踩的坑

README 推荐用 Docker 运行,需映射 1935、1985、8080 及 8000/10080 UDP 等多个端口;推流测试需自备 doc/source.flv 或使用 OBS 按 rtmp://localhost/live 与 livestream 配置;WebRTC 相关用法需另查官方 wiki 文档。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v6.0-r3
  1. v7.0-a4Release v7.0-a4pre-release2026-10-31 · 2026-10-31 01:42 UTC
    查看更新说明

    If you would like to support SRS, please consider contributing to our OpenCollective.

    a80aebbe41e052974c83c5667ff35fad256736f5 Release v7.0-a4, 7.0 alpha4, v7.0.215, 333567 lines.

    Co-Authored-By: Claude Opus 5.5 [email protected]

    Resource

    Docker

    Usage

    Performance: v7.0-a4 vs v7.0-a3

    Each scenario is an A/B run: both builds at once in Docker, each SRS on its own vCPU, the same load and the same flat CBR source (H.264 200 kbps + AAC 32 kbps, 25 fps). SRS CPU is averaged over 180 s and compared second by second. Negative means v7.0-a4 uses less CPU. Changes within about ±1 point are noise.

    ScenarioClientsv7.0-a3 CPUv7.0-a4 CPUChange (95% CI)
    RTMP → RTMP11,52058.6%57.3%−2.2% (−3.1% to −1.3%)
    RTMP → HTTP-FLV11,52076.1%76.0%−0.2% (−0.7% to +0.4%)¹
    RTMP → HTTP-TS2,88056.3%53.7%−4.7% (−5.4% to −4.0%)
    RTMP → RTSP2,88067.3%88.5%+31.5% (+31.2% to +31.9%)
    RTMP → HLS5,76013.0%12.8%−1.8% (−6.6% to +2.9%)
    RTMP → DASH5,76016.7%17.0%+1.4% (−3.0% to +5.8%)
    RTMP → WHEP1,15261.8%62.4%+1.1% (+0.7% to +1.5%)
    WHIP → WHEP1,80072.1%73.1%+1.5% (+1.0% to +1.9%)
    WHIP → RTMP11,52050.0%49.6%−0.8% (−1.5% to −0.2%)
    WHIP → HTTP-FLV11,52074.0%73.8%−0.3% (−0.6% to +0.1%)
    SRT → SRT57641.3%45.5%+10.2% (+9.9% to +10.5%)
    SRT → RTMP5,76022.7%22.6%−0.6% (−2.5% to +1.3%)
    SRT → WHEP1,15261.4%63.0%+2.6% (+2.2% to +3.0%)
    RTMP publishers1,15279.0%79.7%+0.9% (+0.7% to +1.1%)
    WHIP publishers40021.2%21.9%+2.9% (+2.1% to +3.7%)
    Many streams (1 pub + 2 players each)576 streams64.3%64.3%−0.1% (−0.3% to +0.2%)

    ¹ 213 v7.0-a3 players (1.8%) failed before the measured window and did not reconnect, so v7.0-a3 carried slightly fewer players; v7.0-a4 had no failures.

    • Faster: HTTP-TS (−4.7%) and RTMP → RTMP (−2.2%).
    • Slower: RTMP → RTSP +31.5% and SRT → SRT +10.2%, with the same media delivered on both builds; smaller rises on WHIP publishers (+2.9%) and SRT → WHEP (+2.6%).
    • No real change: everything else is within about ±2%.

    Setup: Mac mini M4 (Mac16,10), Docker 29.8.2, Linux 7.0.14 VM with 8 GB. These numbers compare the two versions on one machine; they are not the capacity of a production server.

  2. v8.0-d3Release v8.0-d3pre-release2026-10-31 · 2026-10-31 01:35 UTC
    查看更新说明

    If you would like to support SRS, please consider contributing to our OpenCollective.

    2438f668e2a52b1561df9f08b0d11bfa53dfa8a1 Release v8.0-d3, 8.0 dev3, v8.0.74, 410579 lines.

    Co-Authored-By: Claude Opus 5.5 [email protected]

    Resource

    Docker

    Usage

    Performance: v8.0-d3 vs v8.0-d2

    Each scenario is an A/B run: both builds at once in Docker, each SRS on its own vCPU, the same load and the same flat CBR source (H.264 200 kbps + AAC 32 kbps, 25 fps). SRS CPU is averaged over 180 s and compared second by second. Negative means v8.0-d3 uses less CPU. Changes within about ±1 point are noise.

    ScenarioClientsv8.0-d2 CPUv8.0-d3 CPUChange (95% CI)
    RTMP → RTMP11,52048.3%44.6%−7.6% (−8.3% to −6.8%)
    RTMP → HTTP-FLV11,52071.4%71.4%0.0% (−0.4% to +0.3%)
    RTMP → HTTP-TS2,88057.3%56.3%−1.8% (−2.4% to −1.2%)
    RTMP → RTSP2,88066.8%86.5%+29.4% (+29.1% to +29.7%)
    RTMP → HLS5,76013.2%12.6%−4.4% (−8.8% to +0.1%)
    RTMP → DASH5,76017.0%17.0%+0.1% (−8.1% to +8.3%)
    RTMP → WHEP1,15260.1%60.8%+1.2% (+0.8% to +1.6%)
    WHIP → WHEP1,80073.6%72.2%−1.8% (−2.1% to −1.5%)
    WHIP → RTMP11,52042.8%42.3%−1.1% (−2.1% to −0.2%)
    WHIP → HTTP-FLV11,52068.8%70.1%+1.8% (+1.5% to +2.2%)
    SRT → SRT57641.3%45.2%+9.3% (+9.0% to +9.5%)
    SRT → RTMP5,76020.7%20.7%−0.2% (−2.0% to +1.6%)
    SRT → WHEP1,15262.3%61.7%−0.9% (−1.3% to −0.4%)
    RTMP publishers1,15277.0%78.4%+1.8% (+1.5% to +2.0%)
    WHIP publishers40020.9%21.6%+3.6% (+3.0% to +4.2%)
    Many streams (1 pub + 2 players each)576 streams63.3%62.9%−0.7% (−0.9% to −0.4%)
    • Faster: RTMP → RTMP (−7.6%).
    • Slower: RTMP → RTSP +29.4% and SRT → SRT +9.3%, with the same media delivered on both builds; smaller rises on WHIP publishers (+3.6%).
    • No real change: everything else is within about ±2%.

    Setup: Mac mini M4 (Mac16,10), Docker 29.8.2, Linux 7.0.14 VM with 8 GB. These numbers compare the two versions on one machine; they are not the capacity of a production server.

  3. v6.0-r3Release v6.0-r3最新正式版2026-10-31 · 2026-10-31 01:13 UTC

    If you would like to support SRS, please consider contributing to our OpenCollective.

    9f6d88164c8608d80ac41264998e80b8076d5e43 Release v6.0-r3, 6.0 release3, v6.0.195, 172562 lines.

    Co-Authored-By: Claude Opus 5.5 [email protected]

    Resource

    Resource Mirror: gitee.com

    Docker

    Docker Mirror: aliyun.com

    Doc: ossrs.io

    Doc: ossrs.net

    Performance: v6.0-r3 vs v6.0-r2

    Each scenario is an A/B run: both builds at once in Docker, each SRS on its own vCPU, the same load and the same flat CBR source (H.264 200 kbps + AAC 32 kbps, 25 fps). SRS CPU is averaged over 180 s and compared second by second. Negative means v6.0-r3 uses less CPU. Changes within about ±1 point are noise.

    ScenarioClientsv6.0-r2 CPUv6.0-r3 CPUChange (95% CI)
    RTMP → RTMP11,52042.7%39.9%−6.5% (−7.5% to −5.5%)¹
    RTMP → HTTP-FLV11,52071.5%68.3%−4.4% (−4.8% to −4.1%)
    RTMP → HTTP-TS2,88057.1%54.3%−5.0% (−5.9% to −4.0%)
    RTMP → HLS5,76013.1%13.3%+1.5% (−4.2% to +7.2%)
    RTMP → WHEP1,15261.8%62.9%+1.8% (+1.3% to +2.3%)
    WHIP → RTMP11,52044.3%43.8%−1.0% (−2.2% to +0.2%)
    WHIP → HTTP-FLV11,52066.8%66.3%−0.7% (−1.1% to −0.3%)
    SRT → SRT57640.8%40.7%−0.3% (−0.6% to 0.0%)
    SRT → RTMP5,76016.5%16.1%−2.8% (−5.3% to −0.3%)
    SRT → WHEP1,15261.5%62.6%+1.8% (+1.4% to +2.3%)
    RTMP publishers1,15284.6%85.8%+1.5% (+0.7% to +2.2%)
    WHIP publishers40019.5%20.6%+5.9% (+5.4% to +6.5%)
    Many streams (1 pub + 2 players each)576 streams62.4%63.3%+1.4% (+1.1% to +1.7%)

    ¹ Some v6.0-r2 players failed whi

  4. v7.0-a3Release v7.0-a3pre-release2026-10-25 · 2026-10-25 20:01 UTC
    查看更新说明

    If you would like to support SRS, please consider contributing to our OpenCollective.

    3fbb9df55e6569e937c8049f52316399ef68ded5 Release v7.0-a3, 7.0 alpha3, v7.0.205, 329753 lines.

    Co-Authored-By: Claude Opus 5.5 [email protected]

    Resource

    Docker

    Usage

    Performance: v7.0-a3 vs v7.0-a0

    Each scenario is an A/B run: both builds at once in Docker, each SRS on its own vCPU, the same load and the same flat CBR source (H.264 200 kbps + AAC 32 kbps, 25 fps). SRS CPU is averaged over 180 s and compared second by second. Negative means v7.0-a3 uses less CPU. Changes within about ±1 point are noise.

    ScenarioClientsv7.0-a0 CPUv7.0-a3 CPUChange (95% CI)
    RTMP → RTMP11,52056.2%57.7%+2.7% (+1.8% to +3.6%)
    RTMP → HTTP-FLV11,52087.0%85.8%−1.3% (−1.9% to −0.8%)
    RTMP → HTTP-TS2,88057.7%60.0%+3.9% (+3.1% to +4.7%)
    RTMP → RTSP2,88069.7%69.0%−1.1% (−1.5% to −0.6%)
    RTMP → HLS5,76013.8%14.6%+5.5% (+0.6% to +10.5%)
    RTMP → WHEP1,15262.1%64.5%+3.9% (+3.4% to +4.4%)
    WHIP → WHEP1,80081.4%81.1%−0.3% (−1.7% to +1.1%)¹
    WHIP → RTMP11,52060.0%58.9%−1.7% (−2.6% to −0.8%)
    WHIP → HTTP-FLV11,52085.8%87.1%+1.6% (+0.6% to +2.5%)
    SRT → RTMP5,76021.2%26.5%+25.1% (+23.1% to +27.2%)
    SRT → WHEP1,15270.7%73.2%+3.4% (+2.9% to +4.0%)
    RTMP publishers1,15283.3%84.4%+1.3% (+1.1% to +1.4%)
    WHIP publishers40053.3%53.9%+1.1% (−0.7% to +2.9%)¹
    Many streams (1 pub + 2 players each)576 streams73.9%74.9%+1.4% (+1.2% to +1.6%)

    ¹ 95% CI contains 0: no real change.

    RTMP → DASH and SRT → SRT are omitted: the v7.0-a0 baseline could not carry comparable load for them under the test harness, so there is no like-for-like comparison.

    • Faster: WHIP → RTMP (−1.7%), HTTP-FLV (−1.3%) and RTSP (−1.1%).
    • Slower: SRT → RTMP +25.1%, and smaller rises on HLS (+5.5%), RTMP → WHEP (+3.9%), HTTP-TS (+3.9%), SRT → WHEP (+3.4%) and RTMP → RTMP (+2.7%).
    • No real change: WHIP → WHEP and WHIP publishers.

    Setup: Mac mini M4 (Mac16,10), Docker 29.8.2, Linux 7.0.14 VM. These numbers compare the two versions on one machine; they are not the capacity of a production server.

  5. v8.0-d2Release v8.0-d2pre-release2026-10-24 · 2026-10-24 16:36 UTC
    查看更新说明

    If you would like to support SRS, please consider contributing to our OpenCollective.

    92928e16a94cccff9f2d89b64e446d8dbad87086 Release v8.0-d2, 8.0 dev2, v8.0.65, 360819 lines.

    Add the v8.0-d2 release line to the README releases and the SRS 8.0 changelog.


    Co-Authored-By: Claude Opus 5.5 [email protected]

    Resource

    Docker

    Usage

    Performance: v8.0-d2 vs v8.0-d1

    Each scenario is an A/B run: both builds at once in Docker, each SRS on its own vCPU, the same load and the same flat CBR source (H.264 200 kbps + AAC 32 kbps, 25 fps). SRS CPU is averaged over 180 s and compared second by second. Negative means v8.0-d2 uses less CPU. Changes within about ±1 point are noise.

    ScenarioClientsv8.0-d1 CPUv8.0-d2 CPUChange (95% CI)
    RTMP → RTMP11,52055.7%50.2%−9.9% (−10.7% to −9.1%)¹
    RTMP → HTTP-FLV11,52071.6%69.4%−3.1% (−3.5% to −2.7%)
    RTMP → HTTP-TS2,88063.9%67.8%+6.2% (+4.6% to +7.8%)
    RTMP → RTSP2,88069.2%67.4%−2.6% (−3.0% to −2.3%)
    RTMP → HLS5,76013.7%13.3%−2.5% (−7.2% to +2.2%)
    RTMP → DASH5,76017.8%18.0%+1.2% (−5.0% to +7.4%)
    RTMP → WHEP1,15273.1%72.5%−0.8% (−1.1% to −0.5%)
    WHIP → WHEP1,80076.9%76.3%−0.8% (−1.2% to −0.5%)
    WHIP → RTMP11,52049.8%49.5%−0.6% (−1.4% to +0.2%)
    WHIP → HTTP-FLV11,52071.3%72.4%+1.6% (+1.2% to +1.9%)
    SRT → SRT57642.3%42.4%+0.2% (0.0% to +0.4%)
    SRT → RTMP5,76022.2%21.9%−1.4% (−3.0% to +0.3%)
    SRT → WHEP1,15264.2%63.3%−1.4% (−1.8% to −1.1%)
    RTMP publishers1,15279.8%80.0%+0.2% (+0.2% to +0.3%)
    WHIP publishers40022.2%22.2%−0.2% (−0.5% to 0.0%)
    Many streams (1 pub + 2 players each)576 streams65.3%64.5%−1.3% (−1.5% to −1.2%)

    ¹ Some players failed while connecting, on both builds (up to 1,027 on v8.0-d1 and 51 on v8.0-d2), in the first seconds of the 30 s settle; every player was healthy in the measured window.

    • Faster: RTMP → RTMP (−9.9%), HTTP-FLV (−3.1%) and RTSP (−2.6%).
    • Slower: HTTP-TS +6.2%.
    • No real change: everything else is within about ±2%.

    Setup: Mac mini M4 (Mac16,10), Docker 29.8.2, Linux 7.0.14 VM with 8 GB. These numbers compare the two versions on one machine; they are not the capacity of a production server.

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    SRS(Simple Realtime Server)

    SRS/8.0 (Free) is a simple, high-performance, AI-driven real-time media server. It supports RTMP, WebRTC, HLS, HTTP-FLV, SRT, MPEG-DASH, and GB28181 on Linux and macOS across x86_64, ARMv7, AArch64, Apple M1, RISC-V, LoongArch, and MIPS architectures, and natively on Windows x64. Supported codecs include H.264, H.265, AV1, VP9, AAC, Opus, and G.711. See the complete list of features.

    SRS Overview

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

    SRS is licenced under MIT, and some third-party libraries are distributed under their licenses.

    Usage

    Please check the Getting Started guide in English or Chinese. We highly recommend using SRS with docker:

    docker run --rm -it -p 1935:1935 -p 1985:1985 -p 8080:8080 \
        -p 8000:8000/udp -p 10080:10080/udp ossrs/srs:6
    

    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:

    If you'd like to use WebRTC, convert RTMP to WebRTC, or convert WebRTC to RTMP, please check out the wiki documentation in either English or Chinese.

    To learn more about RTMP, HLS, HTTP-FLV, SRT, MPEG-DASH, WebRTC protocols, clustering, HTTP API, DVR, and transcoding, please check the documents in English or Chinese.

    AI Agent

    I recommend to use AI to understand and maintain your SRS, please follow the wiki AI Agent for details.

    Contributing

    The maintainers, and contributors are listed here. The maintainers who made significant contributions and maintained parts of SRS are listed below, ranked by the number of commits:

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

    A huge THANK YOU goes out to:

    We're really thankful to everyone in the community for helping us find bugs and improve the project. To stay in touch and keep helping our community, please check out this guide.

    Of course, financial support is very important to us, so we can build the website and use AI tools to maintain the community. Please visit OpenCollective to become a backer or sponsor.

    LICENSE

    SRS is licenced under MIT, and some third-party libraries are distributed under their licenses.

    Releases

    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.