刚开始搭建srs流媒体服务器的的时候真的是一脸懵逼,查阅了网上的很多资料跟博客,但都发现了其中的一些问题。经过自己的摸索,最终搭建成功了,废话不多说,接下来就让我们一步步搭建srs流媒体服务器。
1.下载源码
git clone https://code.csdn.net/winlinvip/srs-csdn.git
2.切换到2.0分支
git pull && git checkout 2.0release
3.切换到trunk目录
cd /srs-csdn/trunk4.编译安装
./configure --prefix=/usr/local/srs --with-ssl --with-hls --with-hds --with-dvr --with-nginx --with-http-callback --with-http-server --with-stream-caster --with-http-api --with-ffmpeg --with-transcode --with-ingest --with-stat --with-librtmp --with-research --with-utest --with-gperf --with-gprof make;make install
5.经过大概十几分钟的安装,安装成功后,第三方应用启动:
sudo ./objs/nginx/sbin/nginx --- 启动nginx for hls ./objs/ffmpeg/bin/ffmpeg ---ffmpeg python ./research/api-server/server.py 8085 ---to start the api-server
6.srs启动
cd /mnt/srs-csdn/trunk ./objs/srs -c conf/srs.conf ps -ef | grep srs ./objs/srs -v
7.配置rtmp
RTMP URL解释:
rtmp://HOST:PORT/app/stream_name rtmp: 协议头 HOST:注意的IP地址或域名 app: 应用名称 stream_name:流名称
8.找到文件目录:srs-csdn/trunk/conf/rtmp.conf 用Xftp修改其中的内容,把以下内容加入到rtmp.conf中,注意这个是最关键的一步,涉及到能不能启动的问题,
listen 1935; pid ./objs/srs.pid; chunk_size 60000; ff_log_dir ./objs; srs_log_tank file; #配置日志答应到文件,需要和srs_log_level配合使用 srs_log_level trace; #制定配置文件的级别,默认级别是trace srs_log_file ./objs/srs.log; #制定日志文件的位置。 max_connections 1000; #最大连接数 daemon on; #以daemon的方式启动,如果要启动在console,那么需要配置daemon off;并且,需要配置srs_log_tank console; utc_time off; #是否使用utc时间。如果该值为off则使用本地时间,如果开始使用utc时间。 vhost __defaultVhost__ { #默认的vhost,在没有指明vhost的情况,默认使用这个vhost。 }
9.
启用你刚才配置的conf文件
./objs/srs -c conf/rtmp.conf
如果没报错,那么恭喜你下一步就可以推流了。
推流:先用srs里的demo进行推流的演示,这里需要特别注意的地方是,如果你用的是云服务器,我用的是阿里的,Ip一定要设置为
内网的Ip才能成功的推流。
sudo ./objs/ffmpeg/bin/ffmpeg -re -i ./doc/source.200kbps.768x320.flv \-vcodec copy \-f flv -y rtmp://192.168.1.132/ofalDemo/test当出现下面这个界面的时候就是推流成功了
10.VLC取流观看
下载VLC,输入网络串流
rtmp://101.132.159.179/ofalDemo/test
需要注意的是,这里的Ip是你服务的公网Ip,接下来就可以观看了。
这样流媒体服务器就搭建成功了,最后需要注意的几点,搭建的时候一定要注意所需要的端口是开放的,如果你懒得配置规则,那么直接把防火墙关了,在进行测试,到这里应该大多数人都没有问题了,最后附上官方的开发文档
参考:https://blog.csdn.net/Henry_wk/article/details/50377881
https://www.jianshu.com/p/3bbd855c9b64
到这,srs流服务器的搭建就成功了,除了srs之外我还在服务器上搭建了,obs推流+red5+vlc拉流,在下一篇博客我将会写这部分内容,本文若有不当之处,欢迎指正。