用VPS搭建一个24小时无人的直播间适用于B站youtube(本人实测过的两个平台)

用VPS搭建一个24小时无人的直播间适用于B站youtube(本人实测过的两个平台)

环境准备与软件安装

首先更新系统软件包并安装必要的组件:

bash

1
2
3
4
5
6
7
8
9
10
11
# 更新软件仓库
sudo apt update

# 安装Nginx
sudo apt install nginx

# 安装Nginx-rtmp模块
sudo apt install libnginx-mod-rtmp

# 安装FFmpeg
sudo apt install ffmpeg

Nginx配置

主配置文件设置

编辑Nginx主配置文件,添加RTMP模块支持:

bash

1
sudo vi /etc/nginx/nginx.conf

在文件末尾添加以下RTMP配置:

nginx

1
2
3
4
5
6
7
8
9
10
11
12
rtmp {
server {
listen 1935;
chunk_size 10240;

application live {
live on;
record off;
include /etc/nginx/conf/push.conf;
}
}
}

创建推流配置

建立专门的配置目录和推流配置文件:

bash

1
2
3
4
5
# 创建配置目录
sudo mkdir /etc/nginx/conf

# 配置推流地址
sudo vi /etc/nginx/conf/push.conf

push.conf文件中添加您的直播平台推流地址:

nginx

1
push rtmp://您的直播平台地址/直播路径/密钥;

注意: 每个推流地址末尾必须包含分号。

服务验证与启动

配置检查与重载

bash

1
2
3
4
5
# 检查Nginx配置语法是否正确
sudo nginx -t

# 重新加载Nginx配置
sudo nginx -s reload

推流测试

使用FFmpeg进行基础推流测试:

bash

1
ffmpeg -re -stream_loop -1 -i /root/视频位置 -c copy -f flv "rtmp://127.0.0.1:1935/live"

后台持续推流

对于需要长期运行的直播场景,使用以下命令:

bash

1
nohup ffmpeg -loglevel quiet -re -stream_loop -1 -i /root/视频位置 -c copy -f flv "rtmp://127.0.0.1:1935/live" 1>/dev/null 2>&1 &

配置说明

  • 端口1935: RTMP协议标准端口
  • chunk_size 10240: 数据块大小设置
  • live on: 启用直播功能
  • record off: 禁用录制功能
  • stream_loop -1: 无限循环播放视频文件

故障排除

如果遇到问题,请检查:

  1. 防火墙是否开放1935端口
  2. Nginx配置语法是否正确
  3. 视频文件路径是否存在且格式支持
  4. 推流地址和密钥是否正确