SRS Wiki 首页
如何提问
提问是一门艺术,不是别人不待见你,是你提的问题实在不招人待见。提问前务必参考: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