648540858 / wvp-GB28181-pro

WEB VIDEO PLATFORM是一个基于GB28181-2016标准实现的网络视频平台,支持NAT穿透,支持海康、大华、宇视等品牌的IPC、NVR、DVR接入。支持国标级联,支持rtsp/rtmp等视频流转发到国标平台,支持rtsp/rtmp等推流转发到国标平台。
https://doc.wvp-pro.cn
MIT License
4.61k stars 1.39k forks source link

通道列表点击点播按钮后一直loading #1452

Closed qq1729849384 closed 1 month ago

qq1729849384 commented 1 month ago

环境信息:

内容描述: 在通道列表里面点击播放一直loading network信息为调用/api/play/start/41010500002000000003/34020000001320000001接口超时 返回结果为 {"code":-2,"msg":"收流超时","data":null}

但实际观看zlm日志发现取流成功,直接使用ffplay播放rtsp://127.0.0.1:554/rtp/41010500002000000003_34020000001320000001也可以直接播放。 截图
image

抓包文件

日志 zlm日志

2024-05-15 11:42:51.143 I"D:\ZLMediaKit\ext-codec\SPSParser.c" line 2285 [wrn]:  frame rate:0[
MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注册:fmp4://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:42:51.143 I [MediaServer.exe] [41808-event poller 14] MultiMediaSourceMuxer.cpp:561 onAllTrackReady | stream: rtp://__defaultVhost__/rtp/41010500002000000003_34020000001320000001 , codec info: H265[1920/1080/0]
2024-05-15 11:42:51.145 W [MediaServer.exe] [41808-event poller 14] EventPoller.cpp:252 async_l | take time: 16ms, thread may be overloaded
2024-05-15 11:42:51.145 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注册:rtsp://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:42:51.194 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注册:rtmp://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:42:51.196 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注册:ts://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:42:52.743 W [MediaServer.exe] [41808-event poller 10] EventPoller.cpp:252 async_l | take time: 16ms, thread may be overloaded
2024-05-15 11:42:54.790 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 16ms, thread may be overloaded
2024-05-15 11:42:54.807 W [MediaServer.exe] [41808-event poller 11] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:42:56.789 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:42:58.699 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注册:hls://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:42:58.818 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:02.842 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:04.846 W [MediaServer.exe] [41808-event poller 11] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:06.865 W [MediaServer.exe] [41808-event poller 11] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:06.865 W [MediaServer.exe] [41808-event poller 11] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:06.865 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 30ms, thread may be overloaded
2024-05-15 11:43:06.896 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 16ms, thread may be overloaded
2024-05-15 11:43:08.877 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:10.906 W [MediaServer.exe] [41808-event poller 11] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:12.934 W [MediaServer.exe] [41808-event poller 11] EventPoller.cpp:252 async_l | take time: 15ms, thread may be overloaded
2024-05-15 11:43:14.950 W [MediaServer.exe] [41808-event poller 8] EventPoller.cpp:252 async_l | take time: 16ms, thread may be overloaded
2024-05-15 11:43:18.738 W [MediaServer.exe] [41808-event poller 14] RtpProcess.cpp:63 ~RtpProcess | 41010500002000000003_34020000001320000001(10.80.156.98:15060) RTP推流器(__defaultVhost__/rtp/41010500002000000003_34020000001320000001)断开,耗时(s):27
2024-05-15 11:43:18.738 D [MediaServer.exe] [41808-event poller 15] WebApi.cpp:265 http api debug |
# request:
POST /index/api/closeRtpServer
# header:
Accept-Encoding : gzip
Connection : Keep-Alive
Content-Length : 91
Content-Type : application/x-www-form-urlencoded
Host : 10.80.156.46
User-Agent : okhttp/4.10.0
# content:
secret=yFgFJLnj1CBBPlxfX2Ou1O9mBnwwjwEk&stream_id=41010500002000000003_34020000001320000001
# response:
{
        "code" : 0,
        "hit" : 1
}

2024-05-15 11:43:18.741 D [MediaServer.exe] [41808-event poller 15] WebApi.cpp:265 http api debug |
# request:
POST /index/api/close_streams
# header:
Accept-Encoding : gzip
Connection : Keep-Alive
Content-Length : 127
Content-Type : application/x-www-form-urlencoded
Host : 10.80.156.46
User-Agent : okhttp/4.10.0
# content:
secret=yFgFJLnj1CBBPlxfX2Ou1O9mBnwwjwEk&app=rtp&vhost=__defaultVhost__&stream=41010500002000000003_34020000001320000001&force=1
# response:
{
        "code" : 0,
        "count_closed" : 0,
        "count_hit" : 4
}

2024-05-15 11:43:18.742 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注销:hls://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:43:18.743 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注销:ts://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:43:18.744 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注销:rtsp://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:43:18.744 W [MediaServer.exe] [41808-event poller 14] EventPoller.cpp:252 async_l | take time: 30ms, thread may be overloaded
2024-05-15 11:43:18.765 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注销:rtmp://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:43:18.766 I [MediaServer.exe] [41808-event poller 14] MediaSource.cpp:517 emitEvent | 媒体注销:fmp4://__defaultVhost__/rtp/41010500002000000003_34020000001320000001
2024-05-15 11:43:18.768 I [MediaServer.exe] [41808-event poller 14] Rtsp.cpp:430 operator () | return port to pool:50096-50097

wvp日志

2024-05-15 11:42:50.824 [http-nio-8080-exec-3]  INFO --- com.genersoft.iot.vmp.service.impl.PlayServiceImpl: 467 [点播开始] deviceId: 41010500002000000003, channelId: 34020000001320000001,码流类型:stream:0, 收流端口: 50096, 码流:41010500002000000003_34020000001320000001, 收流模式:UDP, SSRC: 0105007611, SSRC校验:false
2024-05-15 11:42:50.828 [http-nio-8080-exec-3]  INFO --- c.g.iot.vmp.gb28181.transmit.cmd.impl.SIPCommander: 276 41010500002000000003_34020000001320000001 分配的ZLM为: zlmediakit-local [10.80.156.46:50096]
2024-05-15 11:42:50.847 [wvp-7]  INFO --- c.g.i.v.g.t.e.r.impl.InviteResponseProcessor: 91 [回复ack] 41010500002000000003-> 10.80.156.98:5060 
2024-05-15 11:42:50.903 [http-nio-8080-exec-6]  INFO --- c.genersoft.iot.vmp.media.zlm.ZLMHttpHookListener: 172 [ZLM HOOK]推流鉴权:KRl2d36GH33fbn8c->OnPublishHookParam{id='41010500002000000003_34020000001320000001', app='rtp', stream='41010500002000000003_34020000001320000001', ip='10.80.156.98', params='', port=15060, schema='rtp', vhost='__defaultVhost__'}
2024-05-15 11:42:51.067 [ThreadPoolTaskScheduler-118]  INFO --- c.g.iot.vmp.service.impl.PlatformServiceImpl: 363 [国标级联] 平台:34020000002000803130注册即将到期,开始重新注册
2024-05-15 11:42:55.215 [wvp-6]  INFO --- c.g.i.v.g.t.e.r.i.m.n.c.KeepaliveNotifyMessageHandler: 64 [收到心跳] device: 41010500002000000002, callId: 1962239474
2024-05-15 11:43:00.169 [scheduled-task-pool-5]  INFO --- c.g.i.v.g.t.e.r.i.NotifyRequestForMobilePositionProcessor: 220 [待处理Notify-移动位置订阅消息数量]: 0
2024-05-15 11:43:00.169 [scheduled-task-pool-15]  INFO --- c.g.i.v.g.t.e.r.i.NotifyRequestForCatalogProcessor: 320 [待处理Notify-目录订阅消息数量]: 0
2024-05-15 11:43:00.201 [wvp-14]  INFO --- c.g.i.v.g.t.e.r.i.m.n.c.KeepaliveNotifyMessageHandler: 64 [收到心跳] device: 41010500002000000002, callId: 1794695168
2024-05-15 11:43:05.198 [wvp-3]  INFO --- c.g.i.v.g.t.e.r.i.m.n.c.KeepaliveNotifyMessageHandler: 64 [收到心跳] device: 41010500002000000002, callId: 1901983955
2024-05-15 11:43:10.160 [scheduled-task-pool-15]  INFO --- c.g.i.v.g.t.e.r.i.NotifyRequestForCatalogProcessor: 320 [待处理Notify-目录订阅消息数量]: 0
2024-05-15 11:43:10.160 [scheduled-task-pool-8]  INFO --- c.g.i.v.g.t.e.r.i.NotifyRequestForMobilePositionProcessor: 220 [待处理Notify-移动位置订阅消息数量]: 0
2024-05-15 11:43:10.194 [wvp-9]  INFO --- c.g.i.v.g.t.e.r.i.m.n.c.KeepaliveNotifyMessageHandler: 64 [收到心跳] device: 41010500002000000002, callId: 646636090
2024-05-15 11:43:15.194 [wvp-2]  INFO --- c.g.i.v.g.t.e.r.i.m.n.c.KeepaliveNotifyMessageHandler: 64 [收到心跳] device: 41010500002000000002, callId: 1356736061
2024-05-15 11:43:15.226 [wvp-15]  INFO --- c.g.i.v.g.t.e.r.i.m.n.c.KeepaliveNotifyMessageHandler: 64 [收到心跳] device: 41010500002000000003, callId: 1796583994
2024-05-15 11:43:18.706 [http-nio-8080-exec-4]  INFO --- c.genersoft.iot.vmp.media.zlm.ZLMHttpHookListener: 227 [ZLM HOOK]流无人观看:KRl2d36GH33fbn8c->hls->rtp/41010500002000000003_34020000001320000001
2024-05-15 11:43:18.727 [http-nio-8080-exec-4]  INFO --- c.g.iot.vmp.gb28181.transmit.cmd.impl.SIPCommander: 674 [发送BYE] 设备: device: 41010500002000000003, channel: 34020000001320000001, callId: a48334d2b1f99ce235845b758042ab82@10.80.156.46
2024-05-15 11:43:18.739 [http-nio-8080-exec-4]  INFO --- ZLMServerFactory: 114 关闭RTP Server {"code":0,"hit":1}
mengxing2017 commented 1 month ago

这是端口没放通,拉不到流,或者stream-ip配置错误

qq1729849384 commented 1 month ago

这是端口没放通,拉不到流,或者stream-ip配置错误

端口是通的,使用ffplay直接播放zlm的地址是可以播放的

mengxing2017 commented 1 month ago

stream-ip检查了吗

qq1729849384 commented 1 month ago

stream-ip检查了吗

检查了,配置的是zlm服务器的内网IP,且在节点管理上能够看见zlm显示在线 image

mengxing2017 commented 1 month ago

你是公网播放还是内网播放?公网用公网ip,内网用内网ip

qq1729849384 commented 1 month ago

你是公网播放还是内网播放?公网用公网ip,内网用内网ip

这个跟公网内网没关系,zlm和wvp都是我本地的,且本地是可以访问到摄像头的,摄像头可以通过wvp国标协议注册上,并且点击播放zlm是有日志输出的,并且在我本地上能够直接使用ffplay去取流rtsp://127.0.0.1:554/rtp/41010500002000000003_34020000001320000001(也就是wvp正常情况下点播放返回的地址格式)也是能直接播放的,所以这个跟网络是没有关系的

mengxing2017 commented 1 month ago

stream-ip的作用是拼接播放地址给前端使用,你用的是10的ip,就要确保的端口放通的,127是不过防火墙的,但是10的ip是过防火墙的

qq1729849384 commented 1 month ago

stream-ip的作用是拼接播放地址给前端使用,你用的是10的ip,就要确保的端口放通的,127是不过防火墙的,但是10的ip是过防火墙的

端口都是通的,取流rtsp://10.80.156.46/rtp/41010500002000000003_34020000001320000001也能成功。更改配置文件为127.0.0.1、10.80.156.46都试了一遍,结果都一样

mengxing2017 commented 1 month ago

我远程看看你到底碰到奇葩的坑了