本文介绍了在 Ubuntu 零碎下配置 wvp-GB28181-pro 以及与 ZLMediaKit 联调的全流程教程。对于 ZLMediaKit 的配置过程请参照上一篇 Ubuntu 下配置 ZLMediaKit 的操作流程
1. 装置依赖
Ubuntu 环境下:
apt-get install -y openjdk-11-jre git maven nodejs npm
2. 装置 MySql 和 Redis
装置 MySql 和 Redis,可在 wvp 本机也可在其余服务器上,具体操作形式此处不再具体阐明,网上很多。
装置 MySql 后须要创立 wvp 数据库,执行 sql/mysql.sql
初始化数据库构造。
3. 编译运行 ZLMediaKit
参照上一篇 Ubuntu 下配置 ZLMediaKit 的操作流程
4. 编译 wvp-pro
4.1 下载代码
# 从 gitee 下载我的项目代码(此处还是装置在 opt 文件夹下)
cd /opt
git clone https://gitee.com/pan648540858/wvp-GB28181-pro.git
4.2 编译前端页面
cd /opt/wvp-GB28181-pro/web_src/
#用淘宝源下载
npm --registry=https://registry.npm.taobao.org install
npm run build
4.3 打包我的项目
cd /opt/wvp-GB28181-pro
mvn package
5. 批改配置文件
5.1 配置文件地位
wvp 配置文件基于 spring boot 的开发方式,配置文件的加载是很灵便的。默认在src/main/resources/application.yml
,局部配置项是可选,你不须要全副配置在配置文件中,齐全的配置阐明能够参看all-application.yml
。
5.2 须要批改的配置内容
配置文件中信息较多,以下是必须要改的
- redis 配置信息
- mysql 配置信息
- ZLM 连贯配置信息 (这里的
media.id
要和 ZLM 里的general.mediaServerId
统一,ZLM 的配置文件在release/linux/Debug/config.ini
,也要留神端口等信息是否统一)
6. 启动我的项目
将批改后的配置文件替换到 jar 包 BOOT-INF/classes
后启动。如果不想用替换 jar 包中配置文件的形式,能够通过指定配置文件的形式进行配置。
cd wvp-GB28181-pro/target
java -jar wvp-pro-*.jar --spring.config.location=../src/main/resources/application.yml
启动后拜访 http://ip 地址:18080
进行登陆,默认用户名明码都是 admin
7. 注意事项
- wvp 和 ZLM 联调胜利后,wvp 会接管 ZLM 的配置文件,批改其中的相干信息
- wvp 推流须要鉴权
wvp 联调后推流规定:
推流时须要携带推流鉴权的签名 sign
,sign=md5(pushKey)
(通过 MD5 转码后的 32 位字符串)
pushKey 来自数据库中 user 表,每个用户会有一个不同的 pushKey。
例如:pp=test,stream=live,pushKey=1000,ip=192.168.1.4, port=10554
那么推流地址为:
rtsp://192.168.1.4:10554/test/live?sign=a9b7ba70783b617e9998dc4dd82eb3c5
反对推流时自定义播放鉴权 Id,参数名为 callId
,此时sign=md5(callId_pushKey)
例如:app=test,stream=live,pushKey=1000,callId=12345678, ip=192.168.1.4,port=10554
那么推流地址为:
rtsp://192.168.1.4:10554/test/live?callId=12345678&sign=c8e6e01dde2d60c66dcea8d2498ffef1
具体规定和更多阐明可参照 WVP 官网文档