当前位置: 首页 > 文档资料 > SRS Wiki 中文文档 >

SRS Wiki 首页

优质
小牛编辑
137浏览
2023-12-01

如何提问

提问是一门艺术,不是别人不待见你,是你提的问题实在不招人待见。提问前务必参考:How To Ask Question

SRS产品定位

SRS产品定位是什么?SRS亮点是什么?和其他产品对比呢?参考:Product

产品对比

SRS和其他流媒体产品的对比,差别在哪里,定位、区别、优势、劣势在哪里?参考:Compare

SRS功能列表

SRS支持的功能,包括已经支持的,计划中的,和没有计划的。参考Features

公用服务器

SRS是否提供公用服务器?供大家测试,演示,版本发布,自动编译等。是否有现成的SRS服务器可以推流和播放?参考Live Show

应用实例

SRS的实际应用,可以用SRS实际做点什么?参考:Examples/Samples

编译SRS

编译SRS的常见选项,SRS的功能,以及应用场景,编译和启动,DEMO的查看方法。链接:Build

SRS启动

如何以系统服务启动SRS?如何后台启动SRS?如何linux启动时自动启动SRS?如何启动SRS和DEMO的api,播放器/编码器/视频会议,但不用观看那些演示流?参考:Linux Service

SRS日志

如何查看SRS的日志?如何不以nohup但是后台启动?如何将日志打印到控制台?如何打印出更多或者更少的日志?如何打印出详细级别的日志?如何只打印出警告以上的日志?参考:Log

SRS的架构

SRS开发者必看的基础wiki,SRS的基础架构。链接:Architecture

RTMP URL & Vhost

搞不清楚RTMP的那些个vhost/app/stream?特别还有参数的时候?参考链接:RTMP URL & Vhost

RTMP握手协议

RTMP为何要依赖ssl?什么是RTMP简单握手和复杂握手?什么时候用Simple就足够了?参考:RTMP Handshake

FFMPEG直播流转码

如何使用SRS对直播流转码?如何只对视频或音频转码?如何配置台标?转码参数的意义和顺序?参考:FFMPEG/Transcoding

RTMP分发

SRS如何支持RTMP流?如何配置SRS分发RTMP流?参考:Delivery RTMP

HLS分发

如何将RTMP流切片成HLS分发?HLS相关知识,SRS配置HLS?参考链接:Delivery HLS

HDS分发

如何将RTMP流切片成HDS分发?HDS相关知识,SRS配置HDS?参考链接:Delivery HDS

HTTP Stream分发

如何分发点播flv流,支持xxx.flv?start=offset请求?如何分发直播flv流,rtmp流转换为flv流?如何分发HTTP流?如何分发HTTP aac流?分发HTTP ts流?分发HTTP mp3流?参考链接:Delivery HTTP Stream

流媒体分发方式

如何选择分发协议?RTMP的优势在哪里?什么时候用HTTP-FLV?HLS优势和缺点是什么?为什么要DASH?参考:Delivery Method

备注:SRS1或2叫做RTMP PK HLS

内置HTTP服务器

如何不依赖外部web服务器直接可分发HTTP流譬如HLS?SRS为何支持内置的HTTP服务器?参考:HTTP Server

DVR录制

如何将直播RTMP流录制为flv文件?如何让每一片都从关键帧开始?什么是DVR的plan,什么是segment和session方式的plan?如何自定义dvr的文件名和路径?参考:DVR

DRM防盗链

SRS如何支持DRM?如何支持防盗链?Refer防盗链如何配置?Token防盗链如何使用?参考:DRM

Reload

如何在不影响正在服务的用户的前提下:将一个转码流的码率调低?如何禁用某些频道的HLS?如何添加和删除频道?参考:Reload

低延时应用

如何配置低延时?延时到底受哪些因素的影响?SRS如何配置?SRS延迟多大?参考:Low Latency

HTTP Callback

关于HttpCallback,即HttpHooks。如何认证客户端连接?如何在发布流时通知外部程序?如何在客户端连接和关闭时加入额外处理逻辑?如何hook dvr事件?SRS在各种事件时可以回调HTTP接口。参考:HTTP Callback

HTTP管理接口

如何管理服务器?页面js如何重启服务器,获取信息?php管理系统如何管理SRS服务器?什么是RAW API?参考:HTTP API

Ingest采集

SRS如何拉流?如何将已经存在的RTSP流分发成RTMP/HLS?如何将设备中的媒体数据编码为流输出?参考:Ingest

Stream Cast流转换服务

SRS如何接收RTSP流?如何Push MPEG-TS over UDP到SRS?如何接收其他协议的流?参考:Streamer

Edge搭建大型集群

SRS如何支持大规模CDN集群?在流众多时forward/ingest太浪费怎么办?如何支持FMS Edge方式,在访问时才回源?参考:Edge/Cluster

Forward搭建小型集群

使用forward搭建小型集群的配置方法。链接:Forward

对接Kafka/Spark集群

SRS如何对接到Kafka/Spark大数据系统?如何支持超大规模SRS集群的实时分析,动态调度,日志分析?请参考:Kafka/Big Data

Security禁用或允许连接

如何使用SRS的安全策略?如何禁止客户端推流到SRS,但是允许播放?如何允许某些IP的客户端?参考:Security

Exec启动外部程序

如何像nginx-rtmp一样在publish时执行外部程序?如何支持exec?如何支持exec_publish?参考:Exec

性能测试和对比

对比了SRS和高性能服务器nginx-rtmp,提供详细的测试步骤,供其他性能对比进行参考。链接:Performance

RaspberryPi性能测试

SRS在arm(RaspberryPi)下的性能如何?最多支持多少个并发?参考:RaspberryPi

RaspberryPi下转码

如何在RaspberryPi下转码音频?如何在pi下面开启HTTP服务器分发HLS?参考:ARM Transcode

ServerSideScript服务器端脚本

SRS为何不支持服务器端脚本?链接:Server-side Script

Flash/Android/IOS P2P

SRS支持Flash/Android/IOS P2P吗?如何支持?参考:Web P2P

SRS-librtmp

如何使用SRS提供的客户端rtmp库?为何要提供?结构是什么?主要流程是什么?实例如何使用?参考:srs-librtmp

SRS应用于linux-arm

linux-arm设备如何使用SRS分发RTMP流?linux-arm上SRS的性能如何?参考:Linux ARM

SRS的windows分支

SRS在windows上支持到什么程度?客户端库支持得如何?服务器能在windows跑吗?参考:Windows

SRS带宽测试

视频很卡,播放不了,缓冲区突然很大,推流上不来,都有可能是带宽过低,SRS支持测试客户端到服务器的带宽。参考:Bandwidth Test(BandwidthTestTool, BWTC)

RTMP ATC

如何让SRS分发ATC时间(即不从零开始)?如何支持HDS/HLS源站热备?参考:RTMP ATC

TimeJitter时间戳矫正

SRS如何矫正时间戳?时间戳抖动如何处理?RTMP时间戳单增如何处理?参考:TimeJitter

Heartbeat

SRS如何以心跳形式汇报自己的信息?譬如arm嵌入式设备上运行服务器,每隔一定时间将自己的信息上报到api服务器。参考:Heartbeat

点播FLV流

SRS如何支持点播?FLV流如何支持?如何支持时移?录制的文件如何作为点播分发?参考:VOD

GPERF内存和性能分析

如何查找内存泄漏?valgrind不支持st怎么办?如何知道哪个函数占用内存多?哪个函数性能有问题?参考:GPERF

GPROF性能分析

如何对SRS做性能优化?如何用gprof分析SRS性能?如何看性能的函数调用图?参考:GPROF

Perf性能分析

如何使用内核性能分析工具分析srs性能?参考:Perf

C++的开发环境

C++如何选择开发环境?建议UltimateC++,当然等jetbrains出Windows下C++的IDE了会更好。参考:IDE

GIT获取代码

SRS的稳定版本是什么?如何获取SRS最新代码?GIT下载很慢怎么办?参考:GIT

客户端SDK

移动端如何推流和播放?Android推流SDK?Android播放SDK?iOS推流SDK?iOS播放SDK?参考:客户端SDK

Usage: RTMP

使用实例:如何使用SRS分发RTMP直播流?参考:Usage: RTMP

Usage: RTMP Cluster

使用实例:如何使用SRS分发RTMP直播流集群?参考:Usage: RTMP Cluster

Usage: HTTP FLV

使用实例:如何使用SRS分发HTTP FLV直播流?参考:Usage: HTTP FLV

Usage: HTTP FLV Cluster

使用实例:如何使用SRS分发HTTP FLV直播流集群?参考:Usage: HTTP FLV Cluster

Usage: HTTP FLV

使用实例:如何使用SRS分发RTMP流?参考:Usage: RTMP

Usage: HLS

使用实例:如何使用SRS分发HLS(m3u8/ts)流?参考:Usage: HLS

Usage: Transcode2HLS

使用实例:如何对不符合要求的流(h.264+aac)进行HLS流分发?参考:Usage: Transcode2HLS

Usage: FFMPEG

使用实例:如何使用SRS实时转码RTMP流?编码器不能输出h264+aac如何转码后分发HLS?参考:Usage: FFMPEG

Usage: Ingest

使用实例:如何将文件变成直播流?如何将已有流采集到SRS?如何做虚拟直播?如何抓取RTSP流?参考:Usage: Ingest

Usage: Forward

使用实例:如何使用SRS搭建小型集群?一路流如何做主备?如何将送到SRS的自动转发到备用服务器?参考:Usage: Forward

Usage: Realtime

使用实例:如何尽量降低延迟到1秒之内?SRS最低延迟的配置?参考:Usage: Realtime

Usage: ARM

使用实例:如何搭建ARM虚拟开发环境?如何在ARM上部署SRS服务器端?参考:Usage: ARM

Usage: HTTP

使用实例:如何不依赖外部服务器分发HLS流?如何使用SRS内置的HTTP Server?参考:Usage: HTTP

Usage: DEMO

使用实例:如何部署SRS的DEMO(提供网页演示播放/推送RTMP到SRS,播放HLS,转码,视频会议等)?参考:Usage: DEMO