开源项目分享-一款java开发的强大到没朋友的gb28181项目:wvp-GB28181

javacv音视频系列文章推荐:

javacv开发详解之1:调用本机摄像头视频
javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG、javaCV-openCV)
javaCV开发详解之3:收流器实现,录制流媒体服务器的rtsp/rtmp视频文件(基于javaCV-FFMPEG)
javaCV开发详解之4:转流器实现(也可作为本地收流器、推流器,新增添加图片及文字水印,视频图像帧保存),实现rtsp/rtmp/本地文件转发到rtmp流媒体服务器(基于javaCV-FFMPEG)
javaCV开发详解之5:录制音频(录制麦克风)到本地文件/流媒体服务器(基于javax.sound、javaCV-FFMPEG)
javaCV开发详解之6:本地音频(话筒设备)和视频(摄像头)抓取、混合并推送(录制)到服务器(本地)
javaCV开发详解之7:让音频转换更加简单,实现通用音频编码格式转换、重采样等音频参数的转换功能(以pcm16le编码的wav转mp3为例)
javaCV开发详解之8:转封装在rtsp转rtmp流中的应用(无须转码,更低的资源消耗,更好的性能,更低延迟)
javaCV开发详解之9:基于gdigrab的windows屏幕画面抓取/采集(基于javacv的屏幕截屏、录屏功能)
javaCV开发详解补充篇:基于avfoundation的苹果Mac和ios获取屏幕画面及录屏/截屏以及摄像头画面和音频采样获取实现
java原生实现屏幕设备遍历和屏幕采集(捕获)功能
javaCV开发详解之10:基于dshow调用windows摄像头视频和音频,想要获取屏幕画面首选gdigrab
javaCV开发详解之11:视频文件转gif动态图片实现,也支持摄像机、桌面屏幕、流媒体等视频源转gif
javaCV开发详解之GIF动态图片录制补充篇:windows桌面屏幕画面录制成gif动态图片,支持桌面任意取域生成gif,可扩展支持MacOS/安卓/linux等平台,可扩展支持apng动态图片
javaCV开发详解之12:视频转apng动态图片实现,支持透明通道,支持摄像机、桌面屏幕、流媒体等视频源转apng动态图
javaCV开发详解之13:使用FFmpeg Filter过滤器处理音视频
javaCV开发详解之14:音频重采样
javaCV开发详解之15:视频帧像素格式转换
javaCV开发详解之16:使用一张图片推流和一张图片录制成视频文件
javaCV开发详解之17:GIF和APNG动态图片推流和录制成视频文件(以gif转mp4为例)
javaCV开发详解之18:音视频转码(音频编解码和视频编解码)
JavaCV开发详解之19:如何开启GPU硬件加速,使用JavaCV进行音视频的硬解码和硬编码
JavaCV开发详解之20:如何使用JavaCV制作ico图标,图片和视频生成ico图标,视频流录制ico图标
JavaCV开发详解之21:如何使用JavaCV接入gb28181的ps流并推流到流媒体服务和接入海康大华sdk回调h264/hevc裸流
JavaCV开发详解之22:flv,live_flv格式说明,http-flv拉流和http-flv推流及rtmp拉流和rtmp推流全面分析和开发实战
JavaCV开发详解之23:hls视频录制,m3u8切片录制和fmp4切片录制详解
JavaCV开发详解之24:使用javacv录制dash视频分片,mpeg-dash视频录制和制作
JavaCV开发详解之25:使用javacv保存raw视频像素格式(yuv或者rgb),并使用ffplay播放raw
JavaCV开发详解之26:使用javacv对视频进行连续截图和覆盖截图,支持png,jpg,bmp等格式快速连续截图,适用于视频快照
JavaCV开发详解之27:使用javacv把视频切割成多个视频分片文件,以mp4为例,把视频切割成MP4分片文件
JavaCV开发详解之28:如何使用javacv进行多图推流和多图合成视频文件,以批量jpg图片推流rtmp和jpg合成flv视频文件为例
JavaCV开发详解之29:使用javacv将多个视频拼接合成单个视频,多个音频拼接合成单个音频
JavaCV开发详解之30:如何使用javacv拉取rtsp视频流,rtsp解复用器详解。如何把rtsp调教的服服帖帖,让rtsp拉流不再丢包

项目简介

WEB VIDEO PLATFORM是一个基于GB28181-2016标准实现的网络视频平台,负责实现核心信令与设备管理后台部分,支持NAT穿透,支持海康、大华、宇视等品牌的IPC、NVR、DVR接入。

项目官方维护地址

https://github.com/swwheihei/wvp-GB28181

  • 流媒体服务基于ZLMediaKit-https://github.com/xiongziliang/ZLMediaKit
  • 前端展示基于MediaServerUI-https://gitee.com/kkkkk5G/MediaServerUI/tree/gb28181/

应用场景:

主要应用在IPC等设备没有固定IP地址,但需要在互联网中观看的场景。
要求IPC设备可以访问互联网,有云服务器用于部署本服务。 预计7月可以达到商用级别的文档性

支持特性:

1、视频预览
2、云台控制(方向、缩放控制)
3、视频设备信息同步
4、离在线监控
5、录像查询与回放(基于NVR\DVR,暂不支持快进、seek操作)
6、无人观看自动断流

目前版本暂只支持:

1、视频预览 2、云台控制(方向控制、缩放控制) 3、视频设备信息同步 4、离在线监控

后续逐步支持:

1、录像查询与回放(基于NVR\DVR) 2、语音对讲 3、上级级联 4、集群部署

2020路线图:

5月中旬-录像回放(基于NVR\DVR)、设备认证(基于密码)
5月下旬-设备报警
6月上旬-流媒体认证(ZLM推流、取流)
6月下旬-语音对讲、Android Deme\iOS Demo
7月下旬-设备认证(基于数字证书)、集群部署
8月下旬-云端录像与回放
9月下旬-Onvif协议支持
10月下旬-GB28181-2011版设备适配
12月底-上级级联、时间同步、其他国标能力

如何安装部署?

  1. 获取代码
    使用git克隆的代码
    git clone --depth 1 https://github.com/swwheihei/wvp.git

  2. 导入IDE
    将项目导入到自己的开发环境中。
    项目依赖JDK1.8

  3. 部署redis
    安装部署redis,并启动。
    要求redis版本≥4.0

  4. 部署ZLMediaServer
    参照ZLMediaServer部署

  5. 部署前端MediaServerUI
    参照MediaServerUI部署

  6. 修改配置文件
    修改项目配置文件application.yml,注意修改以下配置:
    redis配置,修改redis的IP、端口等信息。
    datasource配置,因暂未实现JDBC的存储,此项配置无效。
    sip配置,修改为本地IP地址,例如阿里云的公网IP,便于IPC等设备可以找到服务。
    media配置,修改为ZLMediaServer的部署地址

  7. 修改IPC等设备配置
    打开摄像头或NVR的配置页面,找到平台接入的GB28181平台配置,将第6步中服务端的基础配置设置到设备的配置页面。 海康的摄像头需要把音频输出改为ACC,默认一般是G711。

  8. 启动各项服务
    依次启动Redis、WVP系统、ZLM流媒体、UI各项服务

  9. 验证
    1、调用API 接口 查询设备列表此时可以看到设备信息 2、调用API 接口 视频预览 3、在UI的视频预览模块中查看视频

如果觉得博主写得还不错,欢迎“关注、点赞,收藏”一键三连!

部署wvp-gb28181-pro需要以下步骤: 1. 安装CentOS:首先需要安装CentOS操作系统,可以选择最新版本的CentOS 7或8。 2. 安装依赖库:在CentOS上安装wvp-gb28181-pro所需的依赖库,包括FFmpeg、OpenSSL、libxml2、libcurl、libevent、zlib、pcre等。可以使用以下命令安装: ```shell yum install -y epel-release yum install -y openssl-devel libxml2-devel libcurl-devel libevent-devel zlib-devel pcre-devel ``` 3. 下载wvp-gb28181-pro:从wvp-gb28181-pro的官方网站下载wvp-gb28181-pro的源码,解压缩到指定目录。 4. 编译wvp-gb28181-pro:在wvp-gb28181-pro的源码目录下执行以下命令编译: ```shell ./configure make make install ``` 这将会编译并安装wvp-gb28181-pro到系统中。 5. 配置wvp-gb28181-pro:wvp-gb28181-pro的配置文件位于/etc/wvp-gb28181-pro下,可以根据需要编辑配置文件。 6. 启动wvp-gb28181-pro:可以使用以下命令启动wvp-gb28181-pro: ```shell systemctl start wvp-gb28181-pro ``` 启动后可以使用以下命令查看wvp-gb28181-pro的状态: ```shell systemctl status wvp-gb28181-pro ``` 7. 配置防火墙:如果系统开启了防火墙,需要打开wvp-gb28181-pro所需的端口。可以使用以下命令开启端口: ```shell firewall-cmd --zone=public --add-port=5060/udp --permanent firewall-cmd --reload ``` 这将会开启5060端口,如果需要开启其他端口,请根据需要修改以上命令。 以上就是在CentOS上部署wvp-gb28181-pro的完整步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

eguid_1

感谢支持eguid原创技术文章

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值