wvp-GB28181-pro 实战指南:GB28181 摄像头接入与取流一步到位
发布时间:2026/9/22 11:31:24 锦皓数字建站

wvp-GB28181-pro 实战指南GB28181 摄像头接入与取流一步到位【免费下载链接】wvp-GB28181-pro基于GB28181-2016、部标808、部标1078标准实现的开箱即用的网络视频平台。自带管理页面支持NAT穿透支持海康、大华、宇视等品牌的IPC、NVR接入。支持国标级联支持将普通摄像机/直播流/直播推流转国标共享到国标平台。项目地址: https://gitcode.com/GitHub_Trending/wv/wvp-GB28181-pro本文写给负责对接监控摄像头的后端与集成工程师。读完你能独立完成 wvp-GB28181-pro 的部署、GB28181 设备接入并保活、实时取流、录像回放倍速以及把流 RTMP 推给第三方平台。全文按部署 → 接设备 → 取流 → 回放 → 推流 → 保活 → 速查表七步展开每步给可执行的接口与验证方法。把 wvp-GB28181-pro 平台跑起来本节完成后你能得到一套可登录、可调接口的运行实例并核对好四个关键端口。目标得到运行中的 wvp 服务 可访问的管理页前置已安装 Docker 与 docker compose关键接口登录GET /api/user/login后续请求带请求头access-token步骤cd docker docker compose up -d验证浏览器访问http://host:8080能看到管理页接口层直接监听18978可用登录接口取 token。注意docker/.env里要配SIP_Domain、SIP_Id、SIP_Password、Stream_IP、SDP_IP这些值会联动到 SIP 与媒体服务器。端口速记管理页与代理8080nginx、wvp API18978、SIP 信令8116、媒体收流 RTMP10935。GB28181 设备接入与 SIP 注册保活本节完成后你能把一台摄像头加进平台、触发通道同步并确认它在线。目标设备注册上线、通道同步完成前置设备侧已按本平台填好 SIP 域SIP_Domain、SIP 端口8116与认证口令关键接口添加POST /api/device/query/device/add、同步GET /api/device/query/devices/{deviceId}/sync步骤先登录拿 token再预录设备curl -X POST http://127.0.0.1:18978/api/user/login \ -d usernameadminpasswordadmin curl -X POST http://127.0.0.1:18978/api/device/query/device/add \ -H access-token: $TOKEN -H Content-Type: application/json \ -d {deviceId:33010400001320000001,name:东门卡口,manufacturer:宇视,ip:172.16.5.21,port:5060}验证GET /api/device/query/devices/33010400001320000001返回的status为在线GET /api/device/query/sync_status?deviceId33010400001320000001返回code0。若 sync 提示设备尚未注册过说明设备还没 REGISTER 上来属正常等注册后再触发同步。实时播放接口从点播开始到拿到流地址本节完成后你能对任意在线通道发起点播拿到 flv / rtmp / hls 多种格式地址。目标拿到一路可播放的实时流地址前置设备在线通道已同步设备详情status为在线关键接口开始GET /api/play/start/{deviceId}/{channelId}、停止GET /api/play/stop/{deviceId}/{channelId}步骤curl -H access-token: $TOKEN \ http://127.0.0.1:18978/api/play/start/33010400001320000001/3301040000132000000101验证返回code0data内含flv、rtmp、hls等字段flv地址可被播放器直接打开。点播默认等待30秒user-settings.play-timeout超时返回点播超时。看完务必调 stop 接口释放 RTP 会话否则通道会一直被占用。录像回放倍速开始、拖动、调速与停止本节完成后你能调取指定时段录像并在播放中做倍速与拖动。目标对某通道指定时段发起回放并支持倍速 / 暂停 / 拖动前置该时段设备确有录像关键接口开始GET /api/playback/start/{deviceId}/{channelId}参数startTime、endTime格式yyyy-MM-dd HH:mm:ss倍速GET /api/playback/speed/{streamId}/{speed}speed取 0.25 / 0.5 / 1 / 2 / 4 / 8拖动GET /api/playback/seek/{streamId}/{seekTime}偏移秒暂停 / 恢复GET /api/playback/pause/{streamId}、GET /api/playback/resume/{streamId}停止GET /api/playback/stop/{deviceId}/{channelId}/{stream}步骤先 start 拿到回放流再用返回的stream作为streamId调 speed / seek。验证start 返回code0且带流地址调 4 倍速后画面按 4 倍推进停止后通道不再有回放会话。可用GET /api/gb_record/query/{deviceId}/{channelId}先确认该时段有录像文件再回放。RTMP 推流把国标流分发到第三方平台本节完成后你能把已取到的流推到第三方 RTMP 平台或用国标级联把流共享给上级平台。目标把一路国标流持续推送到外部 RTMP 地址前置目标 RTMP 地址网络可达、app 与 stream 名确定关键接口添加任务POST /api/push/addurl、app、stream、mediaServerId、enabled启动GET /api/push/start?id{推流ID}列表GET /api/push/list、强制停止GET /api/push/forceClose?appstream步骤curl -X POST http://127.0.0.1:18978/api/push/add \ -H access-token: $TOKEN -H Content-Type: application/json \ -d {name:东门卡口直播,url:rtmp://live.example.com/live/gate-east,mediaServerId:polaris,enabled:true,app:live,stream:gate-east}验证GET /api/push/list能看到该任务且状态为已启动目标平台收到gate-east一路流。若对接的是上级国标平台而非普通 RTMP改走国标级联在 doc/ 的级联文档里配置对端平台与共享通道。设备在线监控心跳统计与目录订阅本节完成后你能判断设备何时在线 / 掉线并在通道增删时自动同步不用人工盯。目标拿到设备在线时间点并让通道变更自动重新同步前置设备已接入关键接口目录订阅GET /api/device/query/subscribe/catalog?id{设备数据库ID}cycle{秒}心跳统计GET /api/device/query/statistics/keepalive?deviceIdcount注册统计GET /api/device/query/statistics/register?deviceIdcount主动状态GET /api/device/query/devices/{deviceId}/status步骤对关注保活的设备开启目录订阅cycle即订阅周期通道变化时平台自动重新同步目录。验证keepalive 按时间正序返回最近 N 条在线记录掉线时最新记录的时间戳会停更重新注册后 status 接口恢复在线。两张速查表API 速查表功能方法与路径关键参数一句话用途登录取 tokenGET/POST /api/user/loginusername、password后续请求带 access-token分页查设备GET /api/device/query/devicespage、count、status列设备并过滤在线查设备详情GET /api/device/query/devices/{deviceId}deviceId看单台设备状态添加设备POST /api/device/query/device/adddeviceId、ip、port预录入国标设备同步通道GET /api/device/query/devices/{deviceId}/syncdeviceId触发目录同步查同步进度GET /api/device/query/sync_statusdeviceId看通道同步是否完成查通道GET /api/device/query/devices/{deviceId}/channelspage、count、online列出设备下通道开始点播GET /api/play/start/{deviceId}/{channelId}deviceId、channelId拿实时流地址停止点播GET /api/play/stop/{deviceId}/{channelId}deviceId、channelId结束实时流开始回放GET /api/playback/start/{deviceId}/{channelId}startTime、endTime拿录像流地址回放倍速GET /api/playback/speed/{streamId}/{speed}speed0.25~8 倍速录像查询GET /api/gb_record/query/{deviceId}/{channelId}时间范围查有哪些录像文件添加推流POST /api/push/addurl、app、stream把流推到第三方开始推流GET /api/push/startid启动推流任务目录订阅GET /api/device/query/subscribe/catalogid、cycle通道变更自动同步心跳统计GET /api/device/query/statistics/keepalivedeviceId、count看设备在线时间点故障速查表现象最可能原因验证方式处理动作设备一直 OFFLINESIP 域 / 端口 / 口令不匹配设备侧抓 REGISTER查/api/device/query/devices/{deviceId}的 status核对SIP_Domain、端口8116与SIP_Password一致添加后通道为空设备尚未注册或同步未触发sync 返回设备尚未注册过等设备 REGISTER 后再调 sync看 sync_status点播返回点播超时RTP 端口不可达 / 传输模式不对查媒体10000端口与 device 的 streamMode调/api/device/query/transport/{deviceId}/{UDP\|TCP-ACTIVE}检查防火墙回放无流该时段无录像/api/gb_record/query/{deviceId}/{channelId}返回空改startTime/endTime到有录像的时段推流第三方收不到目标 RTMP 不可达 / app-stream 错目标服务器收流日志/api/push/list任务状态核对url/app/stream换内网可达地址下一步清单想弄懂 SIP 注册、级联广播的协议细节读 doc/doc/_content/theory/register.md、broadcast_cascade.md。要改端口、SIP 域或媒体地址看 docker/ 里的docker-compose.yml与docker/wvp/wvp/application-docker.yml。自建库而非用容器执行 数据库/ 下的数据库/2.7.4/初始化-mysql-2.7.4.sql完成建表。【免费下载链接】wvp-GB28181-pro基于GB28181-2016、部标808、部标1078标准实现的开箱即用的网络视频平台。自带管理页面支持NAT穿透支持海康、大华、宇视等品牌的IPC、NVR接入。支持国标级联支持将普通摄像机/直播流/直播推流转国标共享到国标平台。项目地址: https://gitcode.com/GitHub_Trending/wv/wvp-GB28181-pro创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。