0基础搭建自己的srs直播服务器及srs常见问题

Srs直播接入介绍

编写者:卓拓技术

联系邮箱:425116228@qq.com

参考文档:https://github.com/ossrs/srs/wiki/v2_CN_Home

一.Srs环境简单接入并运行

1.什么是srs

是定位于互联网直播服务器集群的开源框架。

开源地址:https://github.com/ossrs/srs/wiki/v2_CN_Home

2.srs的功能(已实现的功能)

  1. 推送RTMP到SRS、推送RTSP/UDP/FLV到SRS、拉取流到SRS。
  2. SRS还支持将接入的RTMP流进行各种变换,譬如将RTMP流转码
  3. 可以将流转发给其他服务器、转封装成HTTP-FLV流,转封装成HDS、录制成FLV
  4. SRS包含大规模集群的关键特性,譬如RTMP多级集群、VHOST虚拟服务器、无中断服务Reload、HTTP-FLV集群。
  5. SRS还提供丰富的应用接口,包括HTTP回调 安全策略Security、HTTP API接口、测速

3.部署srs前服务器环境要求

SRS主要运行在Linux系统上,譬如Centos和Ubuntu,包括x86、x86-64、ARM和MIPS。MacOS支持代码编辑和编译。    其他Unix-like系统不支持,SRS也不支持Windows系统。SRS的系统偏好主要是由于state-threads导致的,它极大的简化了服务器在复杂协议的处理。(注:如果本地测试搭建 windows系统需要安装Centos或Ubuntu,远程的购买镜像即可)

4.下载srs代码到服务器

如果国内访问github clone代码慢,可以使用oschina或csdn镜像,参考下面的地址

https://github.com/ossrs/srs/tree/develop#mirrors

获取SRS代码前,需要先安装git或Xshell(如何安装可以百度下)。

安装好git或Xshell后登陆服务器,就可以执行命令获取SRS代了

Github镜像命令如下:

git clone https://github.com/ossrs/srs.git(github)

git clone https://gitlab.com/winlinvip/srs-gitlab.git (gitlab)

git clone https://git.oschina.net/winlinvip/srs.oschina.git(oschina)

cd srs/trunk

    关于srs版本的问题(如果需要可以进行版本切换)

1.0系列版本

开发代号:HuKaiqun(胡开群---开发者的初中老师)

git pull && git checkout 1.0release(1.0版本分支)

2.0系列版本

开发代号:ZhouGuowen(周国文---开发人高中老师周国文老师)

git pull && git checkout 2.0release(2.0版本分支)

 3.0系列版本(测试开发中版本)

开发代号:OuXuli(欧旭理----大学老师欧旭理老师(欧工)

git pull && git checkout develop(3.0版本分支,不稳定暂时不能使用)

Master分支目前用做了链接和说明。

所以稳定度 2.0release/1.0release >> develop 3.0

5.编译srs

./configure && make

6.启动srs

./objs/srs -c conf/rtmp.conf

启动失败日志地址:srs/trunk/objs/srs.log

7.测试启动状态

./etc/init.d/srs start 测试是否已经启动命令(出现下面的提示说明已经启动)

8.推流测试工具 (OBS)

下载地址:https://obsproject.com/

安装后配置

1.点击来源窗口的 “+” 添加流来源可以选择窗口捕捉进行鼠标移动的观察(如下图一)

2.点击设置配置推流的路径(如下图二)

3.点击开始推流,出现图三就表示成功了(如下图三)

图一

0基础搭建自己的srs直播服务器及srs常见问题_第1张图片

图二

0基础搭建自己的srs直播服务器及srs常见问题_第2张图片

图三

 

0基础搭建自己的srs直播服务器及srs常见问题_第3张图片

9.拉流

1.使用srs官网推荐的网站播放视频流(点击下面的链接设置如图二你的推流地址即可)

http://winlinvip.github.io/srs.release/trunk/research/players/srs_player.html?vhost=players

(使用360浏览器可以直接播放,使用谷歌及其他浏览器可能需要安装flash插件才可)

(如下图播放样式)

0基础搭建自己的srs直播服务器及srs常见问题_第4张图片

  1. 使用第三方视频播放器加入链接即可 也可以下载vlc视频流播放器播放
  2. 有时候启动没有问题,但是就是看不了,原因是防火墙和selinux开着

sudo /etc/init.d/iptables stop

sudo /sbin/chkconfig iptables off

selinux也需要disable,运行命令getenforce,若不是Disabled,执行下面的步骤:

编辑配置文件:sudo vi /etc/sysconfig/selinux

把SELINUX的值改为disabled:SELINUX=disabled

重启系统:sudo init 6

 

10.其他指令

 ./etc/init.d/srs stop停止指令

 ./etc/init.d/srs restart 重启

二.Srs其他配置说明

https://github.com/ossrs/srs/wiki/v2_CN_Home

  • 如何部署SRS分发FLV分发流

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_SampleHttpFlv

  • 部署SRS分发HDS流

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_DeliveryHDS

  • 部署SRS对直播流转码

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_SampleFFMPEG

  • SRS转发RTMP流到其他服务器(拷贝)

参考地址:https://github.com/ossrs/srs/wiki/v1_CN_SampleForward

  • 如何部署SRS为低延迟模式

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_SampleRealtime

  • 将其他流拉到SRS作为RTMP流

参考地址:https://github.com/ossrs/srs/wiki/v1_CN_SampleIngest

  • 部署SRS为HTTP服务器

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_SampleHTTP

  • 启动SRS的DEMO

参考地址:https://github.com/ossrs/srs/wiki/v1_CN_SampleDemo

  • 部署RTMP分发集群,譬如CDN支持RTMP分发

参考:https://github.com/ossrs/srs/wiki/v1_CN_SampleRTMPCluster

  • 部署HTTP-FLV分发集群

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_SampleHttpFlvCluster

  • 一个集群支持多个用户,即Vhost

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_RtmpUrlVhost

  • 不中断服务的前提下应用新的配置,即Reload

参考地址:https://github.com/ossrs/srs/wiki/v1_CN_Reload

  • 集群中追溯错误和日志

参考地址:https://github.com/ossrs/srs/wiki/v1_CN_SrsLog

  •  使用HTTP回调侦听SRS的事件

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_HTTPCallback

  •  SRS的HTTP API获取数据

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_HTTPApi

  •  SRS测速接口获取带宽数据

参考地址:https://github.com/ossrs/srs/wiki/v1_CN_BandwidthTestTool

  •  一些特殊的控制配置

参考地址:https://github.com/ossrs/srs/wiki/v2_CN_SpecialControl

你可能感兴趣的:(srs环境)