linux部署安装SRS流媒体服务器教程
这段时间一直在搞RTMP流媒体直播项目,期间踩过很多坑,刚开始是用的nginx-rtmp作为流媒体转发服务器,但是效果并不尽人意,推拉流不稳定,特别是拉流,速度特别慢,平均要十多秒才能拉到流,并且交互并不是那么友好,比如说刚断开再立即拉流的话,很难拉到流,还有就是播放延时的问题,最少延时5秒,后面使用了srs来做,效果就好很多了,不仅解决了nginx-rtmp的不友好操作,也提升了性能和效率,延时也降低了,最低的时候延时1秒不到,不同的播放器有会有所差别,目前用过ffplay ,potplayer ,vlc分别测试过,ffplay的延时会比较高,potplayer和vlc播放延时比较低,平均在1.5秒左右。
选择SRS的理由也非常简单,SRS是国内的大牛开发的,虽然只能部署在linux平台,但部署的方式非常简单,不懂的小白只要看教程也可以直接上手,目前我部署过deepin和centos,都能正常运行,且操作方式一样,同时SRS的文档非常齐全,特别是wiki里面的各种说明,基本可以满足基础的需要,当然,srs还有很多优点,可以自行百度搜索了解一下。
OK,言归正传,下面开始部署:
SRS的部署不建议直接用git命令下载安装,文件组件会缺少,最好是到https://github.com/winlinvip/simple-rtmp-server下载zip压缩包,里面有完整的压缩包组件,我下载的是srs-3.0release.zip版本,。
一、 如果你是通过CRT远程连接到你的Linux服务器的,需要先把文件压缩包上传到服务器,也可以用xshell管理,xshell的我没用过,可以自行百度怎么上传。
我下载的是srs-3.0release.zip版本,接下来是通过先远程登录Linux系统,我是通过CRT的sftp上传到服务器的,过程如下:
1.远程登录linux系统
2.按alt+p启动sftp服务
3.输入put+路径上传文件(例:put E:srs-3.0release.zip)
4.在linux界面输入ls看一下是否上传成功
二、部署SRS
1.执行ls命令,查看文件是否在当前目录
2.执行解压命令:unzip ses-3.0.zip,解压srs-3.0.zip(ps:我为了方便,把文件名的release给去掉了),如果执行报错command not found,可能是unzip没安装,执行一下yum install -y zip unzip命令,安装一下zip和unzip就可以了。
3.执行ls命令,查看是否解压完成
4.执行cd srs-3.0release/trunk ,进入srs文件夹
5.执行./configure && make命令,编译文件
6.执行./objs/srs -c conf/srs.conf 启动srs服务
7.执行ps -ef | grep srs查看服务是否启动成功
8.到此srs安装已经完成,还需要安装ffmpeg服务,输入cd 3rdparty进入第三方组件包,可以看到srs自带了很多第三方插件
9.我们主要安装ffmpeg,如果你的Linux系统还没安装yasm的话,需要先安装yasm,srs也自带了,直接解压即可,我这里自带的是yasm-1.2.0.zip
10.安装yasm,输入unzip yasm-1.2.0.zip,解压
11.输入ls查看当前目录文件,输入cd yasm-1.2.0进入yasm文件夹
12.输入./configure编译yasm
13.输入make && make install安装yasm,安装完成即可。
14.输入cd .. 返回上一层目录
15.开始安装ffmpeg,我这里安装的是ffmpeg-4.1
16.输入unzip ffmpeg-4.1.zip解压文件
17.输入cd ffmpeg-4.1进入解压后ffmepg的文件目录
18.安装ffmpeg之前,需要先取得root权限,直接输入:su 在输入密码即可取得root权限。
19.输入./configure命令
20.输入:make && make install 开始安装ffmpeg
到这里,基本就全部安装完毕了。直接启动服务即可,推流的时候往linux直接推流即可,如:rtmp://srs服务器IP地址:1935/live/xxx,然后客户端再拉流就可以了
linux部署安装SRS流媒体服务器教程的更多相关文章
- linux上安装配置samba服务器
linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...
- 为SRS流媒体服务器添加HLS加密功能(附源码)
为SRS流媒体服务器添加HLS加密功能(附源码) 之前测试使用过nginx的HLS加密功能,会使用到一个叫做nginx-rtmp-module的插件,但此插件很久不更新了,网上搜索到一个中国制造的叫做 ...
- 在linux下安装配置rabbitMQ详细教程
在linux下安装配置rabbitMQ详细教程 2017年12月20日 17:34:47 阅读数:7539 安装Erlang 由于RabbitMQ依赖Erlang, 所以需要先安装Erlang. Er ...
- linux下安装配置svn服务器
linux下安装配置svn服务器 1. svn服务器安装 将subversion-1.4.0.tar.gz和subversion-deps-1.4.0.tar.gz传到服务器. tar xfvz su ...
- MAC 上编译安装nginx-rtmp-module 流媒体服务器
MAC 上编译安装nginx-rtmp-module 流媒体服务器 记录踩坑过程 下载nginx和nginx-rtmp-module wget http://nginx.org/download/ng ...
- windows media server 组件安装后流媒体服务器启动失败
做好的web应用,去客户现场部署的时候发现流媒体服务器不能启动.(现场服务器系统为windows server2008 R2) 自己测试的时候搭建环境没什么问题.从来没有遇到安装windows med ...
- 在 Linux 中安装 Lighttpd Web 服务器
Lighttpd 是一款开源 Web 服务器软件.Lighttpd 安全快速,符合行业标准,适配性强并且针对高配置环境进行了优化.相对于其它的 Web 服务器而言,Lighttpd 占用内存更少:因其 ...
- linux centos7 安装mysql-5.7.17教程(图解)
1系统约定安装文件下载目录:/data/softwareMysql目录安装位置:/usr/local/mysql数据库保存位置:/data/mysql日志保存位置:/data/log/mysql 2下 ...
- Linux下安装Nginx详细图解教程
什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...
随机推荐
- oracle 导入导出表
imp username/pwd@orcl file=c:\temp\exp.dmp tables=(table1, table2)#imp username/pwd@ip:1521/orcl ful ...
- 显卡,显卡驱动,nvcc, cuda driver,cudatoolkit,cudnn到底是什么?
在使用深度学习框架的过程中一定会经常碰到这些东西,虽然anaconda有时会帮助我们自动地解决这些设置,但是有些特殊的库却还是需要我们手动配置环境,但是我对标题上的这些名词其实并不十分清楚,所以老是被 ...
- MMORPG服务器场景中的aoi算法思考
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/lwtbn1/article/details/37961695 最近在做一个移动平台上的MMORPG项 ...
- django 导出xls文件
1.同目录下创建file_handle.py文件 file_handle.py import xlwt, datetime from xlwt import * import xlsxwriter # ...
- SpringBoot——配置文件详解【五】
前言 SpringBoot的配置文件 配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的. application.properties application.yml 配置文件 ...
- JS中把其他类型转换成字符串的三种方法
1.toString()方法 toString()方法返回的是相应值的字符串表现 数值.布尔值.对象和字符串值都有toString()方法,但是null和undefined值没有这个方法 例子: va ...
- 安装sentry的几个命令
docker run -d --name sentry-redis redis docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=se ...
- 【转】SkipList跳表基本原理
增加了向前指针的链表叫作跳表.跳表全称叫做跳跃表,简称跳表.跳表是一个随机化的数据结构,实质就是一种可以进行二分查找的有序链表.跳表在原有的有序链表上面增加了多级索引,通过索引来实现快速查找.跳表不仅 ...
- PyCharmIDE: 给脚本传递参数
- tomcat Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986
1.情景展示 tomcat 日志时不时会报出如下异常信息,到底是怎么回事? java.lang.IllegalArgumentException: Invalid character found ...