34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
<!-- 点播流程 -->
|
||
|
||
# 点播流程
|
||
> 以下为WVP-PRO点播流程。点播成功前的任何一个环节出现问题都可能出现点播超时,这也是排查点播超时的依据。
|
||
|
||
```plantuml
|
||
@startuml
|
||
"WEB用户" -> "WVP-PRO": 1. 发起点播请求
|
||
"设备" <- "WVP-PRO": 2. Invite(携带SDP消息体)
|
||
"设备" --> "WVP-PRO": 3. 200OK(携带SDP消息体)
|
||
"设备" <-- "WVP-PRO": 4. Ack
|
||
"设备" -> "ZLMediaKit": 5. 发送实时流
|
||
"WVP-PRO" <- "ZLMediaKit": 6. 流改变事件
|
||
"WEB用户" <-- "WVP-PRO": 7. 回复流播放地址(携带流地址)
|
||
"WVP-PRO" <- "ZLMediaKit": 8. 无人观看事件
|
||
"设备" <- "WVP-PRO": 9 Bye消息
|
||
"设备" --> "WVP-PRO": 10 200OK
|
||
@enduml
|
||
```
|
||
|
||
|
||
## 注册流程描述如下:
|
||
1. 用户从网页或调用接口发起点播请求;
|
||
2. WVP-PRO向摄像机发送Invite消息,消息头域中携带 Subject字段,表明点播的视频源ID、发送方媒体流序列号、ZLMediaKit接收流使用的IP、端口号、
|
||
接收端媒体流序列号等参数,SDP消息体中 s字段为“Play”代表实时点播,y字段描述SSRC值,f字段描述媒体参数。
|
||
3. 摄像机向WVP-PRO回复200OK,消息体中描述了媒体流发送者发送媒体流的IP、端口、媒体格式、SSRC字段等内容。
|
||
4. WVP-PRO向设备回复Ack, 会话建立成功。
|
||
5. 设备向ZLMediaKit发送实时流。
|
||
6. ZLMediaKit向WVP-PRO发送流改变事件。
|
||
7. WVP-PRO向WEB用户回复播放地址。
|
||
8. ZLMediaKit向WVP发送流无人观看事件。
|
||
9. WVP-PRO向设备回复Bye, 结束会话。
|
||
10. 设备回复200OK,会话结束成功。
|