优化文档, 优化notify-catalog大并发处理
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 96 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 65 KiB After Width: | Height: | Size: 45 KiB |
@@ -1,2 +1,3 @@
|
||||
<!-- 自动点播 -->
|
||||
|
||||
# 自动点播
|
||||
|
||||
@@ -1,34 +1,56 @@
|
||||
<!-- 国标级联的使用 -->
|
||||
|
||||
# 国标级联的使用
|
||||
|
||||
国标28181不同平台之间支持两种连接方式,平级和上下级,WVP目前支持向上级级联。
|
||||
|
||||
## 1 接入平台
|
||||
|
||||
### 1.1 wvp-pro
|
||||
|
||||
#### 1.1.1 wvp-pro管理页面点击添加
|
||||

|
||||
|
||||

|
||||
|
||||
#### 1.1.2 填入wvp-pro上级平台信息
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
#### 1.1.3 编辑wvp-pro上级设备信息,开启订阅
|
||||

|
||||
|
||||

|
||||
|
||||
### 1.2 大华平台
|
||||
|
||||
### 1.3 海康平台
|
||||
|
||||
### 1.4 liveGBS
|
||||
#### 1.4.1. wvp-pro管理页面点击添加
|
||||

|
||||
#### 1.4.2. 填入liveGBS平台信息
|
||||

|
||||

|
||||
#### 1.4.3. 编辑liveGBS设备信息,开启目录订阅
|
||||

|
||||
#### 1.4.4. 编辑liveGBS设备信息,开启GPS订阅
|
||||

|
||||
|
||||
#### 1.4.1. wvp-pro管理页面点击添加
|
||||
|
||||

|
||||
|
||||
#### 1.4.2. 填入liveGBS平台信息
|
||||
|
||||

|
||||

|
||||
|
||||
#### 1.4.3. 编辑liveGBS设备信息,开启目录订阅
|
||||
|
||||

|
||||
|
||||
#### 1.4.4. 编辑liveGBS设备信息,开启GPS订阅
|
||||
|
||||

|
||||
|
||||
## 2 添加目录与通道
|
||||
|
||||
1. 级联平台添加目录信息
|
||||

|
||||
2. 为目录添加通道
|
||||

|
||||
3. 设置默认流目录
|
||||
如果需要后续自动生成的流信息都在某一个节点下,可以在对应节点右键设置为默认
|
||||
如果需要后续自动生成的流信息都在某一个节点下,可以在对应节点右键设置为默认
|
||||

|
||||
|
||||
|
||||
@@ -1,18 +1,71 @@
|
||||
<!-- 国标级联的使用 -->
|
||||
|
||||
# 国标级联的使用
|
||||
|
||||
国标28181不同平台之间支持两种连接方式,平级和上下级,WVP目前支持向上级级联。
|
||||
|
||||
## 添加上级平台
|
||||
|
||||
在国标级联页面点击“添加”按钮,以推送到上级WVP为例子,参看[接入设备](./_content/ability/device.md)
|
||||

|
||||
点击保存可以在上级的国标通道列表看到新增加的设备;
|
||||
|
||||
1. 名称
|
||||
上级平台看到的下级平台名称;
|
||||
2. 本地IP
|
||||
本地连接上级使用的具体哪个网卡;
|
||||
3. SIP认证用户名
|
||||
可以设置为与"设备国标编号"一致;
|
||||
4. 注册周期
|
||||
间隔多久发起一次注册,单位秒;
|
||||
5. 心跳周期
|
||||
间隔多久发送一次心跳,一般上级平台三次收不到心跳就会认为下级离线了, 所以建议{心跳周期}x3 < 注册周期;
|
||||
6. SDP发流IP
|
||||
调用媒体节点发送视频流给上级时,使用的本地IP;
|
||||
7. 信令传输
|
||||
信令传输模式,支持udp和TCP,没有特殊需求,默认UDP即可;
|
||||
8. 目录分组
|
||||
上级发送"CATALOG"消息查询通道信息,每一条消息中携带几条通道信息,默认为1,增大该值,可以加快通道发送速度;
|
||||
9. 字符集
|
||||
发送给上级"MESSAGE"消息中的消息体使用的编码格式,国标28181-2016默认为GB2312;
|
||||
10. 行政区划
|
||||
如果勾选"其他选项/推送平台信息"选项,会给上级推送平台信息,这里就是平台的行政区划信息
|
||||
11. 平台厂商
|
||||
如果勾选"其他选项/推送平台信息"选项,会给上级推送平台信息,这里就是平台的平台厂商信息
|
||||
12. 平台型号
|
||||
如果勾选"其他选项/推送平台信息"选项,会给上级推送平台信息,这里就是平台的平台型号信息
|
||||
13. 平台安装地址
|
||||
如果勾选"其他选项/推送平台信息"选项,会给上级推送平台信息,这里就是平台的平台安装地址信息
|
||||
14. 其他选项
|
||||
- RTCP保活
|
||||
在上级的流传输模式为UDP时,因为UDP的无状态特性,会无法知道上级是否在正常收流,启用RTCP保活时,就可以主动发送RTCP消息确认上级是否在正常收流,
|
||||
异常情况下,可以下级主动停止发流;
|
||||
- 消息通道
|
||||
支持通过报警消息给上级级WVP推送消息,消息内容由redis消息发送给wvp,wvp编辑成报警消息发送给上级;
|
||||
- 主动推送通道
|
||||
WVP模拟一条目录订阅信息,然后在共享通道变化时,发送CATAOLOG事件给上级,通知具体的通道变化,
|
||||
目前支持的状态有: 状态改变事件 ON:上线,OFF:离线,VLOST:视频丢失,DEFECT:故障,ADD:增加,DEL:删除,UPDATE:更新;
|
||||
- 推送平台信息
|
||||
勾选此项,上级收到的通道信息中会多出一个平台信息的通道.内容在平台的编辑中修改;
|
||||
- 推送分组信息
|
||||
勾选此项,如果你共享的通道分配了具体的业务分组以及虚拟组织,那么上级收到的通道中会包括业务分组以及虚拟组织节点信息;
|
||||
- 推送行政区划
|
||||
勾选此项,如果你共享的通道分配了具体的行政区划,那么上级收到的通道中会包括行政区划信息;
|
||||
|
||||
国标级联列表出现了级联的这个平台;同时状态显示为在线,如果状态为离线那么可能是你的服务信息配置有误或者网络不通。
|
||||
订阅信息列有三个图标,表示上级开启订阅,从左到右依次是:报警订阅,目录订阅,移动位置订阅。
|
||||
## 推送通道
|
||||
点击你要推送的平台的“选择通道”按钮。
|
||||
|
||||
## 通道共享
|
||||
|
||||
点击你要推送的平台的“通道共享”按钮。
|
||||

|
||||
- **页面结构**
|
||||
- 左侧为目录结构
|
||||
选择未分配,则右侧显示待分配的通道,可以点击“添加按钮”,在弹窗中选择要放置的位置,保存后即可添加通道成功
|
||||
选择其他的目录可以看到已经分配在这个目录下的通道,可以对其进行删除后重新在未分配中去分配。
|
||||
- 右侧为数据展示以及操作
|
||||
国标通道栏内为来自其他国标设备/平台的通道;直播流通道为来自推流/拉流代理的通道。
|
||||
|
||||
1. 添加状态选择"未共享"可以将具体的通道共享给上级;
|
||||
2. 添加状态选择"已共享"可以看到已经共享的通道,并且支持为这个通道在这个平台设备专门的名称和编号;
|
||||
3. 点击"按设备添加"可以将某个国标设备下的所有通道共享给上级;
|
||||
4. 点击"按设备移除"可以将某个国标设备下的所有通道取消共享给上级;
|
||||
5. 点击"全部添加"可以将所有通道共享给上级;
|
||||
6. 点击"全部移除"可以将所有通道共享给上级;
|
||||
|
||||
## 推送通道
|
||||
|
||||
WVP会将所有通道信息按照目录订阅消息通知形式,发送ADD事件给上级.
|
||||
@@ -1,12 +1,22 @@
|
||||
# 通道管理
|
||||
|
||||
通道管理为了对已经分配国标编号的通道进行统一的行政区划和业务分组管理,国标中对于组织结构有两种表示方式,一种是按照行政区划,一种是业务分组+虚拟组织的方式.
|
||||
行政区划结构固定,比如: 北京/市辖区/昌平区, 通道可以挂载道何一级行政区划下. 业务分组比较灵活, 可以按照自己的随意取名, 但是通道只能放在业务分组下的虚拟组织里,不能放在业务分组下.
|
||||
行政区划结构固定,比如: 北京/市辖区/昌平区, 通道可以挂载道何一级行政区划下. 业务分组比较灵活, 可以按照自己的随意取名,
|
||||
但是通道只能放在业务分组下的虚拟组织里,不能放在业务分组下.
|
||||
|
||||
## 行政区划
|
||||
左侧树结构为行政区划结构, 通过数据鼠标右键可以操作,包括: 刷新节点,新建节点,编辑节点,删除节点,添加设备(可以将某个国标设备下的通道全部添加道某一个节点下),移除设备(可以将某个国标设备下的通道全部从这个节点移除)
|
||||
右侧伪通道列表, 对于非国标接入的设备只有配置了国标编号后才可以在这里进行操作, 添加状态选择"未添加"可以进行添加操作,选择"已添加"进行移除操作
|
||||
|
||||
左侧树结构为行政区划结构, 通过数据鼠标右键可以操作,包括: 刷新节点,新建节点,编辑节点,删除节点,添加设备(
|
||||
可以将某个国标设备下的通道全部添加道某一个节点下),移除设备(可以将某个国标设备下的通道全部从这个节点移除)
|
||||
右侧伪通道列表, 对于非国标接入的设备只有配置了国标编号后才可以在这里进行操作, 添加状态选择"未添加"可以进行添加操作,选择"
|
||||
已添加"进行移除操作
|
||||

|
||||
|
||||
## 业务分组
|
||||
左侧树结构为业务分组结构, 通过数据鼠标右键可以操作,包括: 刷新节点,新建节点,编辑节点,删除节点,添加设备(可以将某个国标设备下的通道全部添加道某一个节点下),移除设备(可以将某个国标设备下的通道全部从这个节点移除)
|
||||
|
||||
左侧树结构为业务分组结构, 通过数据鼠标右键可以操作,包括: 刷新节点,新建节点,编辑节点,删除节点,添加设备(
|
||||
可以将某个国标设备下的通道全部添加道某一个节点下),移除设备(可以将某个国标设备下的通道全部从这个节点移除)
|
||||
业务分组下不能挂载设备,所以没有选择该节点的单选框.
|
||||
右侧伪通道列表, 对于非国标接入的设备只有配置了国标编号后才可以在这里进行操作, 添加状态选择"未添加"可以进行添加操作,选择"已添加"进行移除操作
|
||||
右侧伪通道列表, 对于非国标接入的设备只有配置了国标编号后才可以在这里进行操作, 添加状态选择"未添加"可以进行添加操作,选择"
|
||||
已添加"进行移除操作
|
||||

|
||||
@@ -1,8 +1,13 @@
|
||||
<!-- 云端录像 -->
|
||||
|
||||
# 云端录像
|
||||
|
||||

|
||||
云端录像是对录制在zlm服务下的录像文件的管理,录像的文件路径默认在ZLM/www/record下。
|
||||
如果你需要24小时的录像,目前有一个这种方案,可以参考[7*24不间断录像](./_content/ability/continuous_recording.md)。
|
||||
1. 云段录像支持录像文件的查看,播放(可能因为编码的原因导致无法播放);
|
||||
2. 支持录像的下载;
|
||||
3. 支持录像的合并下载;
|
||||
功能没有太多特殊的地方就不一一介绍了,大家自行体验吧。
|
||||
|
||||
- 国标设备是否录像: 可以再WVP的配置中user-settings.record-sip设置为true那么每次点播以及录像回放都会录像;
|
||||
- 推流设备是否录像: 可以再WVP的配置中user-settings.record-push-live设置为true;
|
||||
- 拉流代理的是否录像: 在添加和编辑拉流代理时可以指定, 每次点播都会进行录像
|
||||
- 录像文件存储路径配置: 可以修改media.record-path来修改录像路径,但是如果有旧的录像文件,请不要迁移,因为数据库记录了每一个录像的绝对路径,一旦修改会造成找到文件,无法定时移除以及播放
|
||||
- 录像保存时间: 可以修改media.record-day来修改录像保存时间,单位是天;
|
||||
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
# 语音对讲
|
||||
|
||||
## 流程和原理
|
||||
|
||||
语音对讲在国标28181-2016中分为broadcast(广播)和talk(对讲)两种模式,broadcast模式是从服务端把音频传送到设备端,是单向的,
|
||||
需要结合点播视频来实现双向对讲,talk模式支持双向,不过wvp只处理了和broadcast一样的把音频传递设备,这样两种模式可以使用一样的逻辑处理即可。
|
||||
不同的设备对于两种模式的支持不同且通常差异很大,不同的设备对同一个设备的支持也有一些不同,所以语音对讲中的兼容和适配也是问题最多的。talk模式因为在国标28181-2022中已经移除,所以这里不再讨论它了。
|
||||
|
||||
### 1. broadcast模式流程
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
"WVP-PRO" -> "设备": 语音广播通知
|
||||
@@ -16,24 +20,33 @@
|
||||
"ZLMediaKit" -> "设备": 向设备发送语音流
|
||||
@enduml
|
||||
```
|
||||
|
||||
与点播的流程不同的是,这里的invite消息是由设备发送给wvp的,wvp按照invite协商的方式给设备推送语音流,所有对讲的使用那种方式(UDP/TCP被动/TCP主动)传输语音流由设备决定
|
||||
|
||||
## 使用条件与限制
|
||||
因为invite消息是由设备发送给wvp的,这决定了发送语音流的方式,这也就决定了有的设备不能用于公网对讲,比如大部分的海康设备只支持udp方式收流(目前新版的海康设备已经在着手解决这个问题),那么wvp发流时只能按照sdp中指定的ip端口发流,所以如果wvp在公网,设备在内网中,那么wvp无法连接设备提供的IP,发流也就失败了。
|
||||
|
||||
因为invite消息是由设备发送给wvp的,这决定了发送语音流的方式,这也就决定了有的设备不能用于公网对讲,比如大部分的海康设备只支持udp方式收流(
|
||||
目前新版的海康设备已经在着手解决这个问题),那么wvp发流时只能按照sdp中指定的ip端口发流,所以如果wvp在公网,设备在内网中,那么wvp无法连接设备提供的IP,发流也就失败了。
|
||||
与海康不同的,大华以及很多执法记录仪厂商是支持tcp主动方式取流的,这样是可以实现公网对讲的。
|
||||
|
||||
|
||||
## 使用ffmpeg快速测试
|
||||
|
||||
由于浏览器对于音频的采集需要网页支持https才可以,所以如果想要实现网页音频对讲,那么你必须给wvp和zlm配置证书以使用https。
|
||||
测试阶段如果只是想测试功能可以用ffmpeg来模拟语音流,推送到wvp后可以实现把音频文件推送到摄像头。
|
||||
测试命令格式如下:
|
||||
|
||||
```shell
|
||||
ffmpeg -re -i {音频文件} -acodec pcm_alaw -ar 8000 -ac 1 -f rtsp 'rtsp://{zlm的IP}:{zlm的RTSP端口}/broadcast/{设备国标编号}_{通道国标编号}?sign={md5(pushKey)}'
|
||||
```
|
||||
|
||||
例如
|
||||
|
||||
```shell
|
||||
ffmpeg -re -i test.mp3 -acodec pcm_alaw -ar 8000 -ac 1 -f rtsp 'rtsp://192.168.1.3:22554/broadcast/34020000001320000001_34020000001320000001?sign=41db35390ddad33f83944f44b8b75ded'
|
||||
```
|
||||
|
||||
测试流程如下:
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
"FFMPEG" -> "ZLMediaKit": 推流到zlm
|
||||
@@ -44,33 +57,48 @@ ffmpeg -re -i test.mp3 -acodec pcm_alaw -ar 8000 -ac 1 -f rtsp 'rtsp://192.168.1
|
||||
"ZLMediaKit" -> "设备": 向设备推流
|
||||
@enduml
|
||||
```
|
||||
|
||||
如果听到设备播放你推送的音频,那么意味着调用成功,此过程推流即可需要调用任何接口
|
||||
|
||||
## 生产环境网页发起语音对讲
|
||||
|
||||
生产环境下使用语音对讲,如果是自己的客户端设备那么直接上面的ffmpeg测试方式,按照固定格式推流到zlm即可。
|
||||
对于WEB程序,主要是局域网和公网的区别,两个原因:
|
||||
|
||||
1. 很多设备不支持公网对讲
|
||||
2. 公网和局域网获取证书实现https支持的方式不同
|
||||
|
||||
### 公网使用
|
||||
|
||||
公网你可以直接使用证书厂商或者云服务器厂商提供的证书,这是很方便的。
|
||||
|
||||
### 局域网使用
|
||||
|
||||
局域网你需要为wvp和zlm生成自签名证书,这里我推荐一种生成自签名证书相对方便的方式,
|
||||
此方式为linux下的一种方式。
|
||||
下载证书生成工具:
|
||||
[https://github.com/FiloSottile/mkcert/releases/tag/v1.4.4](https://github.com/FiloSottile/mkcert/releases/tag/v1.4.4)
|
||||
安装此工具, 进入解压的工具目录,执行
|
||||
|
||||
```shell
|
||||
./mkcert-v1.4.4-linux-amd64 -install
|
||||
```
|
||||
|
||||
生成pem证书
|
||||
|
||||
```shell
|
||||
./mkcert-v1.4.4-linux-amd64 局域网IP 局域网IP2 局域网IP3
|
||||
```
|
||||
|
||||
你会得到两文件*-key.pem和*.pem, 此文件配置到wvp后既可实现证书的加载
|
||||
生成zlm使用的证书
|
||||
|
||||
```shell
|
||||
cat *.pem *-key.pem> ./zlm.pem
|
||||
```
|
||||
|
||||
得到的文件就是可以给zlm使用的证书
|
||||
zlm下使用证书有两种方式:
|
||||
|
||||
1. 替换zlm下的default.pem, 即删除此文件并把zlm.pem重命名为default.pem
|
||||
2. 在启动zlm的使用添加 `-s zlm.pem`
|
||||
@@ -1,14 +1,16 @@
|
||||
<!-- 7*24不间断录像 -->
|
||||
|
||||
# 7*24不间断录像
|
||||
|
||||
目前如果要实现不间断录像如果只是关闭无人观看停止推流是不够的,设备可能经历断网,重启,都会导致录像的中断,目前给大家提供一种可用的临时方案。
|
||||
目前如果要实现不间断录像如果只是关闭无人观看停止推流是不够的,设备可能经历断网,重启,都会导致录像的中断,目前给大家提供一种可用的临时方案。
|
||||
|
||||
**原理:** wvp支持使用流地址自动点播,即你拿到一个流地址直接去播放,即使设备处于未点播状态,wvp会自动帮你点播;ZLM
|
||||
的拉流代理成功后会无限重试,只要流一恢复就可以拉起来,基于这两个原理。
|
||||
**方案如下:**
|
||||
|
||||
1. wvp的配置中user-settings->auto-apply-play设置为团true,开启自动点播;
|
||||
2. 点击你要录像的通道,点击播放页面左下角的“更多地址”,点击rtsp,此时复制了rtsp地址到剪贴板;
|
||||
3. 在拉流代理中添加一路流,地址填写你复制的地址,启用成功即可。
|
||||
**前提:**
|
||||
**前提:**
|
||||
1. wvp使用多端口收流,不然你无法得到一个固定的流地址,也就无法实现自动点播。
|
||||
|
||||
|
||||
@@ -1,54 +1,68 @@
|
||||
<!-- 接入设备 -->
|
||||
|
||||
# 接入设备
|
||||
|
||||
## 国标28181设备
|
||||
设备接入主要是需要在设备上配置28181上级也就是WVP-PRO的信息,只有信息一致的情况才可以注册成功。设备注册成功后打开WVP->国标设备,可以看到新增加的设备;[设备使用](./_content/ability/device_use.md),
|
||||
主要有以下字段需要配置:
|
||||
|
||||
设备接入主要是需要在设备上配置28181上级也就是WVP-PRO的信息,只有信息一致的情况才可以注册成功。设备注册成功后打开WVP->
|
||||
国标设备,可以看到新增加的设备;[设备使用](./_content/ability/device_use.md),
|
||||
主要有以下字段需要配置:
|
||||
|
||||
- sip->port
|
||||
28181服务监听的端口
|
||||
28181服务监听的端口
|
||||
|
||||
- sip->domain
|
||||
domain宜采用ID统一编码的前十位编码。
|
||||
domain宜采用ID统一编码的前十位编码。
|
||||
|
||||
- sip->id
|
||||
28181服务ID
|
||||
28181服务ID
|
||||
|
||||
- sip->password
|
||||
28181服务密码
|
||||
28181服务密码
|
||||
|
||||
- 配置信息在如下位置
|
||||
- 配置信息在如下位置
|
||||
|
||||

|
||||
***
|
||||
|
||||
### 1. 大华摄像头
|
||||
|
||||

|
||||
|
||||
### 2. 大华NVR
|
||||
|
||||

|
||||
|
||||
### 3. 艾科威视摄像头
|
||||
|
||||

|
||||
|
||||
### 4. 水星摄像头
|
||||
|
||||

|
||||
|
||||
### 5. 海康摄像头
|
||||
|
||||

|
||||
|
||||
## 直播推流设备
|
||||
|
||||
这里以obs推流为例,很多无人机也是一样的,设置下推流地址就可以接入了
|
||||
|
||||
1. 从wvp获取推流地址, 选择节点管理菜单,查看要推流的节点;
|
||||

|
||||
2. 拼接推流地址
|
||||
得到的rtsp地址就是: rtsp://{流IP}:{RTSP PORT}/{app}/{stream}
|
||||
得到的rtmp地址就是: rtsp://{流IP}:{RTMP PORT}/{app}/{stream}
|
||||
其中流IP是设备可以连接到zlm的IP,端口是对应协议的端口号, app和stream自己定义就可以.
|
||||
得到的rtsp地址就是: rtsp://{流IP}:{RTSP PORT}/{app}/{stream}
|
||||
得到的rtmp地址就是: rtsp://{流IP}:{RTMP PORT}/{app}/{stream}
|
||||
其中流IP是设备可以连接到zlm的IP,端口是对应协议的端口号, app和stream自己定义就可以.
|
||||
3. 增加推流鉴权信息
|
||||
wvp默认开启推流鉴权,拼接好的地址是不能直接推送的,会被返回鉴权失败,参考[推流规则](_content/ability/push?id=推流规则)
|
||||
wvp默认开启推流鉴权,拼接好的地址是不能直接推送的,会被返回鉴权失败,参考[推流规则](_content/ability/push?id=推流规则)
|
||||
4. 推流成功后可以再推流列表中看到推流设备,可以播放
|
||||
此方式只支持设备实时流的播放,无其他功能, 推流信息在推流结束后会自动移除,在列表里就看不到了,如果需要推流信息需要为设备配置国标编号,这样才可以作为wvp的一个永久通道存在.
|
||||
此方式只支持设备实时流的播放,无其他功能, 推流信息在推流结束后会自动移除,在列表里就看不到了,如果需要推流信息需要为设备配置国标编号,这样才可以作为wvp的一个永久通道存在.
|
||||
|
||||
## 接入非国标IPC设备或者其他流地址形式的设备
|
||||
|
||||
这类设备的接入主要通过拉流代理的方式接入,原理就是zlm主动像播放器一样拉取这个流缓存在自己服务器供其他人播放.可以解决源设备并发访问能力差的问题.
|
||||
在拉流代理/添加代理后可以直接播放, 拉流代理也是同样只支持播放当前配置的流.
|
||||
|
||||
|
||||
|
||||
|
||||
[设备使用](_content/ability/device_use.md)
|
||||
|
||||
@@ -1,11 +1,20 @@
|
||||
<!-- 设备使用 -->
|
||||
|
||||
# 国标设备
|
||||
### 更新设备通道
|
||||
点击列表末尾的“刷新”按钮,可以看到一个圆形进度条,等进度结束提示成功后即可更新完成,如果通道数量有变化你可以看点击左上角的即可看到通道数量的变化;如果通道数量仍未0,那么可能时对方尚未推送通道给你。
|
||||
### 查看设备通道
|
||||
点击列表末尾的“通道”按钮,
|
||||
|
||||
### 更新设备通道
|
||||
|
||||
点击列表末尾的“刷新”按钮,可以看到一个圆形进度条,等进度结束提示成功后即可更新完成,如果通道数量有变化你可以看点击左上角的
|
||||
即可看到通道数量的变化;如果通道数量仍未0,那么可能时对方尚未推送通道给你。
|
||||
|
||||
### 查看设备通道
|
||||
|
||||
点击列表末尾的“通道”按钮,
|
||||
|
||||
### 编辑设备
|
||||
|
||||
点击列表末尾的“编辑”按钮,即可在打开的弹窗中对设备功能进行修改
|
||||
|
||||
- 设备名称
|
||||
如何未能从设备里读取到设备名称或者需要自己重命名,那么可以修改此选项。
|
||||
- 密码
|
||||
@@ -27,13 +36,27 @@
|
||||
wvp支持通过报警消息给下级WVP互相推送消息,消息内容由redis消息发送给wvp,wvp编辑成报警消息发送给下级
|
||||
- 收到ACK后发流
|
||||
语音对讲策略: 不同的设备对于语音对讲的收流时机要求不一,勾选后会在收到设备发送的ack后再开始发流,不勾选则在回复200OK后开始发流,目前已知大华设备不勾选,海康需要勾选.
|
||||
### 删除设备
|
||||
可以删除WVP中的设备信息,如果设备28181配置未更改,那么设备在下一次注册后仍然会注册上来。
|
||||
### 点播视频
|
||||
进入通道列表后,点击列表末尾的“播放”按钮,稍等即可弹出播放页面
|
||||
### 设备录像
|
||||
进入通道列表后,点击列表末尾的“设备录像”按钮,也可以在播放页面点击录像查询进入录像查看页面,选择要查看的日期即可对录像进行播放和下载。
|
||||
### 云台控制
|
||||
可以对支持云台功能的设备进行上下左右的转动以及拉近拉远的操作。
|
||||
### 获取视频的播放器地址
|
||||
视频点播成功后在实时视频页面,点击“更多地址”可以看到所有的播放地址,地址是否可以播放与你是否完整编译启用zlm功能有关,更与网络有关。
|
||||
|
||||
### 删除设备
|
||||
|
||||
可以删除WVP中的设备信息,如果设备28181配置未更改,那么设备在下一次注册后仍然会注册上来。
|
||||
|
||||
### 点播视频
|
||||
|
||||
进入通道列表后,点击列表末尾的“播放”按钮,稍等即可弹出播放页面
|
||||
|
||||
### 设备录像
|
||||
|
||||
进入通道列表后,点击列表末尾的“设备录像”按钮,也可以在播放页面点击录像查询进入录像查看页面,选择要查看的日期即可对录像进行播放和下载。
|
||||
|
||||
### 云台控制
|
||||
|
||||
可以对支持云台功能的设备进行上下左右的转动以及拉近拉远的操作。
|
||||
|
||||
### 获取视频的播放器地址
|
||||
|
||||
视频点播成功后在实时视频页面,点击“更多地址”可以看到所有的播放地址,地址是否可以播放与你是否完整编译启用zlm功能有关,更与网络有关。
|
||||
|
||||
### 语音对讲
|
||||
|
||||
[语音对讲](_content/ability/continuous_broadcast.md)
|
||||
@@ -1,20 +1,26 @@
|
||||
<!-- 电子地图 -->
|
||||
# 电子地图
|
||||
WVP提供了简单的电子地图用于设备的定位以及移动设备的轨迹信息,电子地图基于开源的地图引擎openlayers开发。
|
||||
### 查看设备定位
|
||||
1. 可以在设备列表点击“定位”按钮,自动跳转到电子地图页面;
|
||||
2. 在电子地图页面在设备上右键点击“定位”获取设备/平台下的所有通道位置。
|
||||
3. 单击通道信息可以定位到具体的通道
|
||||
|
||||
# 电子地图
|
||||
|
||||
WVP提供了简单的电子地图用于设备的定位以及移动设备的轨迹信息,电子地图基于开源的地图引擎openlayers开发。
|
||||
|
||||
### 查看设备定位
|
||||
|
||||
1. 可以在设备列表点击“定位”按钮,自动跳转到电子地图页面;
|
||||
2. 在电子地图页面在设备上右键点击“定位”获取设备/平台下的所有通道位置。
|
||||
3. 单击通道信息可以定位到具体的通道
|
||||
|
||||
### 查询设备轨迹
|
||||
|
||||
查询轨迹需要提前配置save-position-history选项开启轨迹信息的保存,目前WVP此处未支持分库分表,对于大数据量的轨迹信息无法胜任,有需求请自行二次开发或者定制开发。
|
||||
在电子地图页面在设备上右键点击“查询轨迹”获取设备轨迹信息。
|
||||
|
||||
PS: 目前的底图仅用用作演示和学习,商用情况请自行购买授权使用。
|
||||
|
||||
### 更换底图以及底图配置
|
||||
|
||||
目前WVP支持使用了更换底图,配置文件在web_src/static/js/config.js,请修改后重新编译前端文件。
|
||||
|
||||
```javascript
|
||||
window.mapParam = {
|
||||
// 开启/关闭地图功能
|
||||
|
||||
@@ -1,9 +1,20 @@
|
||||
<!-- 节点管理 -->
|
||||
|
||||
# 节点管理
|
||||
|
||||

|
||||
|
||||
WVP支持单个WVP多个ZLM的方案来扩展WVP的视频并发能力,并发点播是因为带宽和性能的原因,单个ZLM节点能支持的路数有限,所以WVP增加了ZLM集群来扩展并发并且保证ZLM的高可用。
|
||||
|
||||
## 默认节点
|
||||
|
||||
WVP中为了保证功能的完整性,ZLM节点至少要有一个默认节点,这个节点不是在管理页面添加的,而是在WVP的配置文件中配置的,这个节点不可在页面删除。每次启动会自动从配置文件中读取配置写入数据库备用。
|
||||
|
||||
## 新增节点
|
||||
启动你要添加的zlm节点,然后点击“添加节点”按钮输入zlm的ip, http端口,SECRET。点击测试测试完成则开始对节点进行详细的设置,如果你的zlm是使用docker启动的,可能存在zlm使用的端口与宿主机端口不一致的情况,需要在这里一一配置。
|
||||
|
||||
启动你要添加的zlm节点,然后点击“添加节点”按钮输入zlm的ip,
|
||||
http端口,SECRET。点击测试测试完成则开始对节点进行详细的设置,如果你的zlm是使用docker启动的,可能存在zlm使用的端口与宿主机端口不一致的情况,需要在这里一一配置。
|
||||
|
||||
## wvp使用多个节点的原理
|
||||
|
||||
wvp会把连接的节点统一记录在redis中,并记录zlm的负载情况,当新的请求到来时,会取出负载最低的那个zlm进行使用。以此保证节点负载均衡。
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
<!-- 在线文档 -->
|
||||
|
||||
# 在线文档
|
||||
|
||||
@@ -1,12 +1,17 @@
|
||||
<!-- 拉流代理 -->
|
||||
|
||||
# 拉流代理
|
||||
|
||||
不是所有的摄像机都支持国标或者推流的,但是这些设备可以得到一个视频播放地址,通常为rtsp协议,
|
||||
以大华为例:
|
||||
|
||||
```text
|
||||
rtsp://{user}:{passwd}@{ipc_ip}:{rtsp_port}/cam/realmonitor?channel=1&subtype=0
|
||||
```
|
||||
|
||||
可以得到这样一个流地址,可以直接用vlc进行播放,此时我们可以通过拉流代理功能将这个设备推送给其他国标平台了。
|
||||
流程如下:
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
"摄像机" <- "ZLMediaKit": 1. 流去流信息到ZLM
|
||||
@@ -15,10 +20,13 @@ rtsp://{user}:{passwd}@{ipc_ip}:{rtsp_port}/cam/realmonitor?channel=1&subtype=0
|
||||
"WVP-PRO" -> "ZLMediaKit": 4. 通知推流到上级国标平台
|
||||
@enduml
|
||||
```
|
||||
|
||||
## 添加代理
|
||||
|
||||
拉流代理支持两种方式:
|
||||
|
||||
1. ZLM中直接代理流,支持RTSP/RTMP,不支持转码;
|
||||
2. 借助ffmpeg完成拉转,可以通过修改ffmpeg拉转参数完成转码。
|
||||
点击页面的“添加代理”,添加信息后保存即可,如果你需要共享推流信息到其他国标平台,那么你需要编辑/国标通道配置,配置国标编码.
|
||||
点击页面的“添加代理”,添加信息后保存即可,如果你需要共享推流信息到其他国标平台,那么你需要编辑/国标通道配置,配置国标编码.
|
||||
|
||||
`PS: ffmpeg默认模板不需修改,需要修改`参数自行去ZLM配置文件中添加一个即可。
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
<!-- 推流列表 -->
|
||||
|
||||
# 推流列表
|
||||
|
||||
## 功能说明
|
||||
|
||||
WVP支持三种图像输入方式,直播,[拉流代理](_content/ability/proxy.md),[国标](_content/ability/device.md),直播设备接入流程如下
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
"直播设备" -> "ZLMediaKit": 1. 发起推流
|
||||
@@ -11,30 +14,41 @@ WVP支持三种图像输入方式,直播,[拉流代理](_content/ability/pro
|
||||
"WVP-PRO" -> "ZLMediaKit": 4. 通知推流到上级国标平台
|
||||
@enduml
|
||||
```
|
||||
|
||||
1. 默认情况下WVP收到推流信息后,列表中出现这条推流信息,如果你需要共享推流信息到其他国标平台,那么你需要编辑/国标通道配置,配置国标编码.
|
||||
2. WVP也支持推流前导入大量通道直接推送给上级,点击“下载模板”按钮,根据示例修改模板后,点击“通道导入”按钮导入通道数据.
|
||||
|
||||
## 推拉流鉴权规则
|
||||
|
||||
为了保护服务器的WVP默认开启推流鉴权(目前不支持关闭此功能)
|
||||
|
||||
### 推流规则
|
||||
|
||||
推流时需要携带推流鉴权的签名sign,sign=md5(pushKey),pushKey来自用户表,每个用户会有一个不同的pushKey.
|
||||
例如app=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
|
||||
```
|
||||
|
||||
### 播放规则
|
||||
|
||||
默认情况播放不需要鉴权,但是如果推流时携带了callId,那么播放时必须携带callId
|
||||
例如app=test,stream=live,无callId, ip=192.168.1.4, port=10554 那么播放地址为:
|
||||
|
||||
```
|
||||
rtsp://192.168.1.4:10554/test/live
|
||||
```
|
||||
|
||||
例如app=test,stream=live,callId=12345678, ip=192.168.1.4, port=10554 那么播放地址为:
|
||||
|
||||
```
|
||||
rtsp://192.168.1.4:10554/test/live?callId=12345678
|
||||
```
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
<!-- 用户管理 -->
|
||||
|
||||
# 用户管理
|
||||
|
||||
Reference in New Issue
Block a user