最近在研究无人直播,一直使用B站直播平台测试,由于在测试的过程中我需要不断地尝试各种骚操作,经常需要反复中断启动直播。某次偶然间发现有几个小伙伴在看我推的直播,为了给自己留点路人缘,我打算自建一个本地推流服务器用于测试。
Github
上有很多现成的项目可以使用, 有网友推荐 nginx-rtmp-module 和 Node-Media-Server。
秉着少掉点头发的目的,这里我选择由nodejs
开发的 Node-Media-Server。
接下来给大家分享我的搭建过程。
实现步骤
首先电脑需要先安装nodejs
环境 这一步就不在这细说了
1. 下载安装包
npm install node-media-server
2. 创建app.js
启动文件
vi app.js
并将以下启动代码填入到app.js中:
const NodeMediaServer = require('node-media-server');
const config = {
rtmp: {
port: 1935,
chunk_size: 60000,
gop_cache: true,
ping: 30,
ping_timeout: 60
},
http: {
port: 8000,
allow_origin: '*'
}
};
var nms = new NodeMediaServer(config)
nms.run();
3. 启动服务器
node app.js
此时我们在终端能看到启动日志, 表示推流服务器启动成功:
4. 将视频推送到该服务器中
这里使用FFmpeg
工具进行推流,指令如下:
ffmpeg -re -i xxx.mp4 -c copy -f flv "rtmp://localhost/live/STREAM_NAME"
推流地址固定为 : rtmp://localhost/live/STREAM_NAME
如果终端出现类似于以下日志 表示推送成功:
5. 拉流测试效果
拉流地址和推流地址相同为 rtmp://localhost/live/STREAM_NAME
我们可以借助能播放直播流的第三方播放器来测试,这里我使用恒星播放器,能正常拉取到视频。
6. 实现完毕
是不是很简单呢 有需要的话赶紧试试吧。
本文为作者“ 乱码三千”原创, 转载时请注明原文地址: https://code.newban.cn/475.html
版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。