海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储

简介: Hik防爆摄像头录像,因为防爆摄像头会有对应的APP软件,与普通的网络摄像头和球机不一样,默认认为它不可以通过web网页配置,所以弄了个来实测确认。经测试实际上也是可以通过web网页配置(与网络摄像头基本是一致的,在码流方面可能会有些不一样),然后提取rtsp流的,界面与球机无异,只是没有球机的云台控制功能,但是界面上也是有的。

前言

  Hik防爆摄像头录像,因为防爆摄像头会有对应的APP软件,与普通的网络摄像头和球机不一样,默认认为它不可以通过web网页配置,所以弄了个来实测确认。

  经测试实际上也是可以通过web网页配置(与网络摄像头基本是一致的,在码流方面可能会有些不一样),然后提取rtsp流的,界面与球机无异,只是没有球技的云台控制功能,但是界面上也是有的。


Demo演示

  

  


防爆摄像头

  


效果图

网页预览

  

  

主码流

  

子码流

  

  防爆摄像头还解决了之前球机存在的,谷歌浏览器无法播放实时视频的插件bug(只能用ie)。


网络配置同一网段(ip网段不同适用)

  当摄像头的网段,如192.168.1.64,那么倒数第二段一半是网段,就是1网段,网段与网段之间是无法通过直接通过网线、路由器连接的,需要先把网络配置成同一网段。

步骤一:获取ip地址

  本摄像头为静态ip,ip地址为192.168.1.64,局域网网段为0(192.168.0.1),而直接插入0网段是无法通向1网段(192.168.1.1)。

步骤二:一台电脑使用网线直接与摄像头网线直通

  然后双击这个“网卡”,此处时“以太网”(PS:有可能时本地连接或其他名字,确认只有这一个网线网口是对应的就可以)

  

  点击“属性”,弹出如下:

  

  双击“Internet协议版本4”,设置本机ip,摄像头是1网段,所以只能1网段可以连接,随便设置个ip(192.168.1.210)临时用,如下图:

  

  点击“确认”,即可。

  此时,可以测试与摄像头ip是否相通,打开windows的命令行终端,使用ping查询:

  

  已通,可以开始登录设置摄像头了。


摄像头网段配置

  (PS:前提可以ping通摄像头,pc不在一个网段则先“网络配置同一网段”)

步骤一:打开浏览器,登录

  打开浏览器,输入摄像头ip,192.168.1.64:

  

  登录,一定要注意,海康摄像头对密码验证策略比较严,输入正确的账号和密码即可登录:

  

  登录进去,如下图:

  

步骤二:重配ip地址

  点击“配置”,进入配置页面:

  

  然后,按照下图,设置新的ip地址网段,由1改为0:

  

  然后,点击“保存”,重启:

  

  然后,将摄像头的网线接入到目标断网去(0网段),然后这台设置ip地址的机子可以设置会自动获取ip,网线接入0网段了)。

步骤三:摄像头ip同一网段测试

  (PS:这时,摄像头已经接入0网段,然后电脑也重新设置回自动ip,接入0网段。)

  打开电脑的cmd终端,测试ping一下摄像头:

  

  能ping通,再看能否连接登录界面:

  

  至此,摄像头网络配置完成。


摄像头配置rtsp码流并播放

  (PS:防爆这种非球机的可能一开始就是支持hk自己的软件,没有开放rtsp流,所以需要配置一下,可以检查,避免没有配置)

步骤一:打开浏览器,登录

  

  登录进入:

  

步骤二:配置rtsp码流

  点击“配置”:

  

  进入“视音频”配置码流:

  

  主码流:主码流一般不动,是默认的,如app打开可能用的。

  所以,优先设置“子码流”,切换至“子码流”,然后设置,具体的码流参数可以实际用,设置参照“主码流”,主要是分辨率和码流参数的改变:

  

  但是这里有一个问题,子码流只能2个分辨率,录制480p和720p为主,再看主码流的分辨率:

  

  最后,我们使用主码流来实时播放,主码流来录像(其他监控录制可能就480p常用,按照提供的需求来,录制1080p的)。

  如下,只录视频流:

  

  然后保存。

  

步骤三:使用第三方软件播放测试

  推荐使用vlc,自行搜索下载:

  启动应用:

  

  

  打开网络流地址:

  

  然后,输入主码流地址:

  

  主码流:

  

  

  主码流可以用两个地址打开:

rtsp://admin:admin123@192.168.1.64:554/h264/ch1/main/av_stream
rtsp://admin:admin123@192.168.0.64:554/Streaming/Channels/1

  子码流:

  

  所以,末尾就是通道号,多个通道就可以多n,从1开始。

  

  


摄像头码流调优

调优方法

  调试主码流,主码流地址:

rtsp://admin:hik12345@192.168.0.64:554/Streaming/Channels/1

  一边播放的时候,一遍web进去配置视频参数调整主码流,直接保存,再查看几分钟效果如何即可。

调优参数1(测试结果:马赛克多,错位):

  

  (PS:上面的配置缓存较大,容易马赛克,错位,ffmpeg处理存在问题)。

调优参数2:图像质量不是很好,会有点马赛克

  

调优参数3(当前采用):图像质量一致,延迟最低

  

  码率类型,图像质量,码率上线,编码复杂度,码流平滑来综合调试实际现场可接受的效果。

  

  


记录仪循环录像测试

  

  


摄像头rtsp播放延迟

  下面是基于本摄像头继续开发的播放录像程序以及几个其他播放器的播放效果和延迟时间:

  

  

  

  

  

  

相关文章
|
开发工具 Windows
Windows平台RTMP推送|轻量级RTSP服务实现本地摄像头|屏幕|叠加数据预览
大家在做Windows平台RTMP推送或轻量级RTSP服务的时候,不管是采集屏幕还是采集摄像头,亦或屏幕摄像头的叠加模式,总会有这样的诉求,采集到的数据,希望能本地看看具体采集的数据或者图像实际效果,也就是本次介绍的“预览”功能。
229 0
|
数据采集 前端开发 Android开发
Android平台RTMP推送或GB28181设备接入端如何实现采集audio音量放大?
我们在做Android平台RTMP推送和GB28181设备对接的时候,遇到这样的问题,有的设备,麦克风采集出来的audio,音量过高或过低,特别是有些设备,采集到的麦克风声音过低,导致播放端听不清前端采集的audio,这时候,就需要针对采集到的audio,做音量放大处理。
|
监控 开发工具 C++
Windows平台RTMP/RTSP播放器如何实现实时音量调节
RTMP或RTSP直播播放音量调节,主要用于多实例(多窗口)播放场景下,比如同时播放4路RTMP或RTSP流,如果音频全部打开,几路audio同时打开,可能会影响用户体验,我们通用的做法是支持播放端实时静音,更细粒度的做法是可以实时调节每一路RTMP/RTSP流的音量。
235 0
|
8天前
|
监控 Windows
Windows平台RTSP|RTMP播放器如何实时调节音量
我们在做Windows平台RTSP、RTMP播放器的时候,有这样的技术需求,特别是多路监控的时候,并不是每一路audio都需要播放出来的,所以,这时候,需要有针对音量调节的设计
|
2月前
|
开发工具 Android开发 开发者
Android平台如何不推RTMP|不发布RTSP流|不实时录像|不回传GB28181数据时实时快照?
本文介绍了一种在Android平台上实现实时截图快照的方法,尤其适用于无需依赖系统接口的情况,如在RTMP推送、RTSP服务或GB28181设备接入等场景下进行截图。通过底层模块(libSmartPublisher.so)实现了截图功能,封装了`SnapShotImpl.java`类来管理截图流程。此外,提供了关键代码片段展示初始化SDK实例、执行截图、以及在Activity销毁时释放资源的过程。此方案还考虑到了快照数据的灵活处理需求,符合GB/T28181-2022的技术规范。对于寻求更灵活快照机制的开发者来说,这是一个值得参考的设计思路。
|
Web App开发 编解码 前端开发
VUE网页实时播放海康、大华摄像头RTSP视频流完全方案,300毫秒延迟,支持H.265、可多路同时播放
在遍地都是摄像头的今天,往往需要在各种信息化、数字化、可视化B/S系统中集成实时视频流播放等功能,海康、大华、华为等厂家摄像头或录像机等设备一般也都遵循监控行业标准,支持国际标准的主流传输协议RTSP输出,而Chrome、Firefox、Edge等新一代浏览器从2015年开始取消了NPAPI插件技术支持导致RTSP流无法直接原生播放了
2951 0
|
8天前
|
Linux Android开发 iOS开发
Windows平台RTSP|RTMP播放器如何实现实时录像功能
Windows平台RTSP、RTMP播放器实时录像接口设计,实际上,除了Windows平台,我们Linux、Android、iOS平台也是一样的设计,单纯的录像模块,如果做的全面,也不是一两个接口可以搞定的
|
8天前
|
安全 API 开发工具
Android平台RTMP推送|轻量级RTSP服务如何实现麦克风|扬声器声音采集切换
Android平台扬声器播放声音的采集,在无纸化同屏等场景下,意义很大,早期低版本的Android设备,是没法直接采集扬声器audio的(从Android 10开始支持),所以,如果需要采集扬声器audio,需要先做系统版本判断,添加相应的权限。
|
8天前
|
编解码 开发工具 Android开发
Android平台实现屏幕录制(屏幕投影)|音频播放采集|麦克风采集并推送RTMP或轻量级RTSP服务
Android平台屏幕采集、音频播放声音采集、麦克风采集编码打包推送到RTMP和轻量级RTSP服务的相关技术实现,做成高稳定低延迟的同屏系统,还需要有配套好的RTMP、RTSP直播播放器
|
2月前
|
编解码 网络协议 开发工具
Android平台如何实现多路低延迟RTSP|RTMP播放?
本文档详细介绍了大牛直播SDK在Android平台上实现RTSP与RTMP流媒体播放及录像功能的技术细节。早在2015年,SDK的第一版就已经支持了多实例播放,并且通过简单的实例封装就能轻松实现。文档中提供了代码示例,展示了如何开启播放、停止播放以及开始和停止录像等功能。此外,SDK还提供了丰富的配置选项,例如设置录像目录、文件大小限制、转码选项等。总结部分列出了该SDK的关键特性,包括但不限于高稳定性和低延迟的播放能力、多实例支持、事件回调、硬解码支持、网络状态监控以及复杂的网络环境处理等。这些功能使得SDK能够应对各种应用场景,特别是在对延迟和稳定性有极高要求的情况下表现优异。