SRS全称Simple RTMP Server,定位是运营级的互联网直播服务器集群,是一个非常简单就可以推送rtmp视频流的服务器.

github主页:https://github.com/ossrs/srs

目前稳定版为2.0,3.0版本正在开发中,2.0的文档为:https://github.com/ossrs/srs/wiki/v2_CN_Home,文档为中文版,里面内容和组件介绍也很清晰,开发srs的大牛也是中国人,看到这里不禁自豪一番^-^.

下面介绍srs的安装和基本配置:

操作系统是CentOS 7,程序包使用的github release页最新稳定版2.0

srs安装非常简单,以下几步搞定:

unzip srs-2.0-r2.zip
cd srs-2.0-r2/trunk
./configure
make

现在srs源码就编译完成了,程序包比较大但是编译过程挺快,注意make不要加-j参数,会报错.

编译完之后可以执行make install,默认是安装到/usr/local/srs,可以自定义,当然也可以不install,现在就可以直接执行了.

配置文件是:conf/rtmp.conf,默认非常精简只有下面这些:

只需上面这几行配置就可以完整的实现rtmp流媒体服务器,其中listen默认为1935,是rtmp流推送的默认端口;max_connections值最大连接;daemon是否为守护进行在后台执行,然后vhost为虚拟主机可以隔离客户,这个默认不用配置即可.

然后可以执行命令启动rtmp服务: ./objs/srs -c conf/rtmp.conf ,启动之后就可以向服务推流了,另外srs也提供了完整的http服务用作srs服务器使用,具体配置文件在conf/srs.conf,其中多了http部分的配置,其中用于播放测试的配置如下,也可以添加到rtmp.conf配置中:

http_server {
enabled on;
listen ;
dir ./objs/nginx/html;
}

添加配置完成后,重启srs服务器然后可以访问页面,我这里地址是:http://192.168.182.135:8080,ip和端口要改成实际配置的,访问会跳转到默认页面.

现在可以进行rtmp推流测试,可以使用ffmpeg,在srs下的doc目录下有测试视频,新开shell窗口到ffmpeg目录下执行下面命令推送rtmp视频流:

./bin/ffmpeg -re -i /root/srs-2.0-r2/trunk/doc/source.200kbps.768x320.flv -vcodec copy -acodec copy -f flv rtmp://192.168.182.135:1935/live/livestream

这里说一下rtmp url的格式,和http协议类似,分为以下几个部分:

协议头:rtmp  和http,https类似,其他的还有RTMPS,RTMFP等.

主机:rtmp服务的主机,使用ip地址或主机名

端口号:rtmp服务器的端口,默认为1935,当不指定时默认是1935

App:这里app名称为live,类似于http中的目录或者应用路由,一般用于区分不同的流,可以任意指定.

Stream:这里为livestream,类似于http中的文件或者单个请求页面,也可以任意指定.

执行上面命令后即开始推流,然后可以在刚才的srs页面选择上面的JWPlayer6播放器或者AdobeOSMF播放器输入上面的rtmp地址,然后点击播放,正常播放视频即测试推流成功:

另外也可以使用vlc播放视频流,在ffmpeg推流执行完之前视频都是可以正常播放的.

以上就是SRS用作流媒体服务器的基本安装和配置.

SRS流媒体服务器安装配置的更多相关文章

  1. 为SRS流媒体服务器添加HLS加密功能(附源码)

    为SRS流媒体服务器添加HLS加密功能(附源码) 之前测试使用过nginx的HLS加密功能,会使用到一个叫做nginx-rtmp-module的插件,但此插件很久不更新了,网上搜索到一个中国制造的叫做 ...

  2. Windows服务器安装配置PHP7.0环境图文教程

    摘自http://www.111cn.net/phper/linux-php/109865.htm Windows服务器安装配置PHP7.0环境图文教程 www.111cn.net 更新:2016-0 ...

  3. Linux下Redis服务器安装配置

    说明:操作系统:CentOS1.安装编译工具yum install wget  make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel ...

  4. CentOS下Redis服务器安装配置

    说明: 操作系统:CentOS 1.安装编译工具 yum install wget  make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-de ...

  5. Linux下SVN服务器安装配置及客户端安装说明

    原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...

  6. SRS流媒体服务器搭建+ffmpeg推流VLC取流观看

    一.编译SRS https://github.com/winlinvip/simple-rtmp-server 目前有1.0-release.2.0.3.0等版本 2.0官方文档地址:https:// ...

  7. Linux 下 Memcached 缓存服务器安装配置

    Linux 下 Memcached 缓存服务器安装配置 [日期:2011-08-06] 来源:Linux社区  作者:Linux [字体:大 中 小]   [安装Memcache服务器端]我目前的平台 ...

  8. Apache服务器安装配置

    Apache服务器安装 1.Apache服务器安装      在Linux系统下,apache服务器的安装方式比较灵活,可以使用二进制包安装,比如:rpm包.deb包.已编译好的包.也可以简单的使用y ...

  9. 装部署VMware vSphere 5.5文档 (6-2) 为IBM x3850 X5服务器安装配置VMware ESXi

    部署VMware vSphere 5.5 实施文档 ########################################################################## ...

随机推荐

  1. mysql中的几种join 及 full join问题

    [注意]:Oracle数据库支持full join,mysql是不支持full join的,但仍然可以同过左外连接+ union+右外连接实现 初始化SQL语句:   /*join 建表语句*/   ...

  2. 《转》 java.lang.OutOfMemoryError - 关于java的内存溢出

    java.lang.OutOfMemoryError: PermGen space PermGen space的全称是Permanent Generation space 是指内存的永久保存区域, 该 ...

  3. 【C++ Primer 第六章】 1. 定义模板

    类模板 题目描述:实现StrBlob的模板版本. /* Blob.h */ #include<iostream> #include<vector> #include<in ...

  4. POJ 1064 1759 3484 3061 (二分搜索)

    POJ 1064 题意 有N条绳子,它们长度分别为Li.如果从它们中切割出K条长度相同的绳子的话,这K条绳子每条最长能有多长?答案保留小数点后2位. 思路 二分搜索.这里要注意精度问题,代码中有详细说 ...

  5. springmvc返回中文乱码问题

    关于springmvc的返回中文乱码的问题,网上可谓是清一色的一样,无外乎就两种,要么在局部类或这方法上解决,类似如下的代码: @GetMapping(value="/error/query ...

  6. 020 RDD的理解

    一:源码介绍RDD 1.RDD介绍 五大特性,保证了Spark的扩展性,容错性等特性. A list of partitions ====> 一个许多分区的集合,分区中包含数据 A functi ...

  7. 如何查看Ubuntu版本,以及Linux内核版本??

    查看Ubuntu版本: 方法一:   cat /etc/issue 方法二:   sudo lsb_release -a 查看内核版本: uname -r

  8. 《Android进阶之光》--RxJava结合Retrofit访问网络

    1)配置 dependencies{ ... compile 'io.reactivex:rxjava:1.2.0' compile 'io.reactivex:rxandroid:1.2.1' co ...

  9. VS Code 配置 C/C++ 环境(转)

      写作原因 微软的 VSCode 一直以来为人诟病的一个问题就是对于 C/C++ 工程的编译以及调试支持度有限,配置起来比较复杂,但是 vscode-cpptools 团队经过一段时间的 bug 修 ...

  10. poj 1579 Function Run Fun 【记忆化递归】

    <题目链接> 题目大意: 给出一些递归式,直接套用这些递归式计算. 解题分析: 递归式已经由题目明确说明了,但是无脑递归铁定超时,所以此时,我们需要加上记忆化,对于那些已经算过的,就没有必 ...