文章
问答
冒泡
基于ossrs进行推流与拉流
之前使用nginx的rtmp模块进行rtmp的推流与拉流。虽然可以实现功能,但是rtmp流的播放延迟太高了。经过一段时间的比较,选择了ossrs来作为流媒体服务器。 官网地址 https://ossrs.net/releases/
 
根据官方推荐,我们使用docker来部署服务
 
CANDIDATE="192.168.1.10"
docker run --rm -it -p 1935:1935 -p 1985:1985 -p 8080:8080 \
    --env CANDIDATE=$CANDIDATE -p 8000:8000/udp \
    registry.cn-hangzhou.aliyuncs.com/ossrs/srs:4 ./objs/srs -c conf/docker.conf
 
这里的仓库地址是阿里云的,但是在release列表里看到 最近的仓库已经到了 腾讯云了 https://github.com/ossrs/srs/releases?q=v4&expanded=true
所以,我们把仓库地址换成当前最新的。然后执行命令
 
访问8080端口,可以看到服务正常启动
0
 
 
通过 页面的推流地址 rtmp://192.168.50.121/live/livestream 进行推流
这里,我们使用obs 作为推流工具,live 是应用 libestream 是room的概念,所以 服务器是 rtmp://192.168.50.121/live ,串流秘钥 输入 livestream
 
0
 
在obs上选一个视频进行测试
0
 
以下是webrtc的效果
0
 
也可以通过拉取rtmp流访问,会有一点点延迟,但是比nginx的要好很多的
0
 
在控制台 可以看到当前的客户端连接情况
0
 
把几个窗口放一起,可以直观的看到效果,wbrtc是近乎实时的,rtmp有一定延时,主要看业务可接收度。
 
 

关于作者

落雁沙
非典型码农
获得点赞
文章被阅读