WVP和ZLM部署与接入NVR指南环境准备
WVP(Web Video Platform)和ZLM(Zhongli Media Server)部署与接入NVR指南
环境准备
确保服务器满足以下条件:
- 操作系统:Linux(推荐Ubuntu 20.04/22.04或CentOS 7/8)
- 硬件:至少4核CPU、8GB内存、100GB存储(视频存储需额外空间)
- 网络:开放HTTP/HTTPS端口(80/443)、RTMP(1935)、RTSP(554)等端口
- 依赖:JDK 11+、MySQL 5.7+、Redis 5.0+、FFmpeg
安装基础依赖:
# Ubuntu/Debian示例
sudo apt update && sudo apt install -y openjdk-11-jdk mysql-server redis-server ffmpeg
部署ZLM(流媒体服务器)
- 下载ZLM最新版本(如
ZLMediaKit
):
git clone --depth 1 https://github.com/ZLMediaKit/ZLMediaKit.git
cd ZLMediaKit && git submodule update --init
- 编译安装:
mkdir build && cd build
cmake .. -DENABLE_WEBRTC=ON
make -j4 && sudo make install
- 启动ZLM:
cd /usr/local/bin
./MediaServer -d # 后台运行
- 验证ZLM状态:
访问http://服务器IP:8080/index/api/getServerConfig
查看返回配置信息。
部署WVP(视频管理平台)
- 下载WVP-PRO源码:
git clone https://github.com/648540858/wvp-GB28181-pro.git
cd wvp-GB28181-pro
- 配置数据库:
创建MySQL数据库并导入初始化脚本:
CREATE DATABASE wvp CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE wvp;
source ./doc/database.sql;
- 修改配置文件:
编辑application.yml
:
spring:datasource:url: jdbc:mysql://localhost:3306/wvp?useSSL=falseusername: rootpassword: your_passwordsip:ip: 服务器IPport: 5060
- 启动WVP:
mvn clean package -DskipTests
java -jar target/wvp-pro-*.jar
接入NVR设备
- 在WVP中添加设备:
登录WVP管理界面(默认账号密码admin/123456),进入【设备管理】>【添加设备】。
填写NVR的SIP信息(GB28181协议):
- 设备ID:NVR的SIP编号(如34020000001320000001)
- IP/域名:NVR的IP地址
- 端口:NVR的SIP端口(默认5060)
- 密码:NVR的SIP认证密码
配置视频流传输:
在NVR管理界面中启用GB28181协议,填写WVP的SIP服务器信息(WVP的IP和端口)。验证视频流:
在WVP的【实时直播】页面选择对应通道,确认视频流正常播放。
防火墙与安全配置
开放必要端口:
sudo ufw allow 5060/tcp # SIP
sudo ufw allow 5060/udp
sudo ufw allow 10000:20000/udp # 媒体流端口范围
常见问题排查
- ZLM未启动:检查
/usr/local/bin/logs/error.log
日志。 - WVP连接NVR失败:确认NVR的SIP配置与WVP的SIP IP一致。
- 无视频流:在ZLM控制台查看流ID是否生成,使用FFmpeg测试拉流:
ffplay -i rtsp://ZLM服务器IP:554/streamid
通过以上步骤,即可完成WVP和ZLM的部署,并实现NVR视频的接入与管理。