SRS流媒体服务器是基于MIT协议的开源流媒体服务器项目,由杨成立发起并维护,SRS流媒体服务器是大娱乐直播领域广泛应用的野鸡服务器,志存高远不限于色情行业。
SRS流媒体服务器搭建
SRS 搭建rtmp流媒体服务器流程
首先在本页面下载"SRS流媒体服务器"
编译安装
cd trunk #查看编译时的帮助,里面有一些指定的参数是情况加减,官方文档 ./configure -h #开始编译: ./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
第三方应用启动
#启动nginx for hls sudo ./objs/nginx/sbin/nginx #ffmpeg ./objs/ffmpeg/bin/ffmpeg #to start the api-server python ./research/api-server/server.py 8085 ./objs/srs -c conf/srs_kp.conf ps -ef | grep srs #grep --color=auto srs ./objs/srs -v #2.0.242 可能用到的调试命令: sudo pkill -9 nginx objs/nginx/sbin/nginx -c ./objs/nginx-1.5.7/conf/nginx.conf sudo nginx -s reload
到此为止,SRS已编译安装完成!
配置RTMP
文件目录:./conf/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。 }
我配置的srs_kp.conf
注意gop_cache 一定要设置成on,否则切片推流有卡顿
# the config for srs to delivery hls # @see https://github.com/ossrs/srs/wiki/v1_CN_SampleHLS # @see full.conf for detail config. listen 1935; max_connections 1000; daemon off; srs_log_tank console; http_server { enabled on; listen 8080; dir ./objs/nginx/html; } vhost __defaultVhost__ { dvr { enabled on; #配置成时分秒 dvr_path ./objs/nginx/html/[app]/[stream]/[15][04][05].flv; dvr_plan segment; dvr_duration 5; #切片长度,这个可以改 e.g. 1 or 3 dvr_wait_keyframe on; } gop_cache on; }
推流和播放
推流:
./objs/ffmpeg/bin/ffmpeg -i "./doc/source.200kbps.768x320.flv" -vcodec libx264 -vprofile baseline -level 30 -g 60 -vb 800k -strict experimental -acodec aac -ab 96000 -ar 48000 -ac 2 -f flv rtmp://127.0.0.1:1935/live/gongjia
播放:
rtmp://172.17.6.96:1935/live/gongjia
查看日志
tail -f ./objs/srs.log ``
∨ 展开