SRS主要运行在Linux系统上,譬如Centos和Ubuntu,包括x86、x86-64、ARM和MIPS。其他的OS可以使用 srs-docker开发和运行,比如macOS、Windows等。
SRS可以在一台服务器上运行集群,或者在多台服务器上也可以运行集群。SRS是单进程模型,不支持多进程;您可以使用 go-oryx 支持多进程。
1、安装
测试环境
CentOS 8 x64
基于安装包安装
下载与安装
SRS发布版本提供安装包的下载,访问 ossrs.net 下载安装包,如:SRS-CentOS7-x86_64-3.0.153.zip
上传到Linux系统并执行安装:
#SRS-CentOS7-x86_64-3.0.153.zip文件名替换为实际的文件名
unzip SRS-CentOS7-x86_64-3.0.153.zip
cd ./SRS-CentOS7-x86_64-3.0.153/
./INSTALL
若您需要自己编译SRS,请参考编译SRS
2、RTMP部署
#安装的目录
#/usr/local/srs
#默认的可用配置文件
#/usr/local/srs/conf/srs.conf
编写配置文件rtmp.conf
# 安装后,存在默认的配置文件/usr/local/srs/conf/rtmp.conf
listen 1935;
max_connections 1000;
vhost __defaultVhost__ {
}
启动SRS
#cd到/usr/local/srs目录
./objs/srs -c conf/rtmp.conf
推流
使用 OBS 推流,安装软件后依次点击【设置 - 推流】并填写相关信息,例如
#服务器的地址
rtmp://192.168.123.22/live
#串流密钥
livestream
再设置【场景-来源】添加视音频或图像等采集源,点击【开始推流】,此时OBS的右下角会显示推流成功的状态如下:
播流
填写对应协议的播放地址,例如rtmp://192.168.123.22/live/livestream
,点击【播放视频】效果如下:
常见问题
有时候启动没有问题,但是就是看不了,原因是防火墙和selinux开着。
可以用下面的方法关掉防火墙:
# disable the firewall
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