刚开始搭建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/trunk
4.编译安装
./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。
}
./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拉流,在下一篇博客我将会写这部分内容,本文若有不当之处,欢迎指正。