通过srs实现直播
最终效果
效果图
环境配置
服务器:centos:7, nodejs:10.16.3
客户端:windows10
推流服务器
通过SRS实现流媒体, 它支持RTMP/HLS/WebRTC/SRT/GB28181
srs实现流媒体服务器
Step 1: 获取 SRS
(1)如果服务器上有git的话
git clone /winlinvip/srs.oschina.git srs &&
cd srs/trunk && git remote set-url origin /ossrs/srs.git && git pull
(2)由于本人机子配置不高,没有安装git,所以直接下载了最新的包来上传到服务器上
Step 2: 编译 SRS
./configure && make
可能遇到的问题:
当前目录权限不够
修改http.flv.live.conf配置
文件在安装目录下的/trunk/conf(这里需要放行1935端口)
listen1935;
max_connections1000;
daemonoff;
srs_log_tankconsole;
http_server{
enabledon;
listen8080;
dir./objs/nginx/html;
}
vhost__defaultVhost__{
#http_remux{
#enabledon;
#mount[vhost]/[app]/[stream].flv;
#}
}
Step 3: 运行 SRS
./objs/srs -c conf/srs.conf
安装ffmpeg
由于centos没有可以直接安装的rpm依赖,所以需要使用第三方的Nux Dextop yum源来安装
更新系统
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
如果你是centos7的话
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
如果是centos6的话
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm
安装ffmpeg和ffmpeg开发依赖
sudo yum install ffmpeg ffmpeg-devel -y
测试是否安装成功
ffmpeg -h
有输出对应的帮助信息的话,则安装成功
通过ffmpeg将案例进行推流
也可以通过obs,这里只是测试效果
ffmpeg -re -i /www/wwwroot/srs/trunk/doc/source.200kbps.768x320.flv -vcodec copy -acodec copy -f flv rtmp://139.xxx.x.82/live/livestream
/www/wwwroot/为你的路径,139.xxx.x.82 为你的公网ip。
在线测试推流效果
只需将url替换成你上面的rtmp://139.xxx.x.82/live/livestream 地址即可
obs实现客户端推流
设置推流来源为上面的地址,主要服务器的地址不需要livestream,串流秘钥为livestream。
obs
转载请标明出处:
如果觉得《srs直播 java开发 通过srs实现直播》对你有帮助,请点赞、收藏,并留下你的观点哦!