EasyNVR无插件网页摄像机直播流媒体服务器对接海康8700平台视频出现RTSP视频无法接入的问题解决

近期EasyNVR网页浏览器可视化视频直播服务在接入某超一线市轨道交通地铁线路实时视频时,遇到一个极不常见的情况:

  • 整个轨道交通多条线路的平安工地项目,视频基础设备及其基础前置接入平台,均由海康威视建设,视频设备统一接入到海康8700视频平台,并统一对外进行视频输出;

  • EasyNVR通过与海康8700平台的对接,向上级可视化调度系统进行可视化无插件的视频能力输出;

  • 这时,出现了一条特殊线路的平台,这条线路的海康8700平台输出的视频流,在进行RTSP流转RTMP流输出时,出现了无法正常对接和播放的情况;

前后,我们经历了一整天的流程和数据的分析:

  1. 我们通过EasyRTSPClient将数据获取,并进行本地的存储,发现完全没有问题,通过Elecard StreamEye Tools等工具分析,视频数据完全正常。
    EasyNVR视频数据可视化
  2. 我们再将获取到的H.264数据采用EasyRTMP-File进行直接文件推流,也是完全没有问题,推流效果也非常好,一切正常。
    EasyNVR视频数据无插件可视化
  3. 但是,只要将EasyRTSPClient + EasyRTMP(也就是我们的EasyRTMPLive)两个过程连接起来,推出去的视频有数据,但是怎么播放都播放不出来,视频录像也不能正常播放。
    RTSP转RTMP不成功
  4. 我们综合了前面几步的流程,在进行逐步排查的时候,将问题锁定在了InitMetadata上,在RTMP的init metadata流程,我们会将视频的sps、pps等参数传递给RTMP流媒体服务器,RTMP流媒体服务器在收到这个参数后,后续的视频就会按照这个参数进行解析和flv/ts封装,那么,我们以文件为中介进行数据交换没有问题,而以内存实时流为交换出问题,很可能问题就出现在了EasyRTMP_InitMetadata这一步;
    EasyRTMP推流
  5. 我们进而分析了EasyRTSPClient从海康8700平台取流所获取到的sps和pps数据,果然,问题找到了,海康8700平台在RTSP DESCRIBE响应中,sdp数据的sps、pps数据是错的!而正确的数据是在后面的RTP数据关键帧中!!!
    EasyNVR接入海康8700平台视频
    EasyNVR接入海康8700平台视频
  6. 那么,既然找到了问题,我们就可以规避问题了(我们没办法直接解决海康8700平台的问题):我们在该项目的后续实施上,不再选用海康8700平台返回的sdp数据,而是选择最可靠的关键帧数据作为提取sps、pps参数的原料。

一起来体验一下EasyNVR在平安工地方面的成果:
EasyNVR平安工地

EasyNVR安防摄像机网页流媒体服务

EasyNVR是一款拥有完整、自主、可控知识产权,同时又能够具备软硬一体功能的安防互联网化流媒体服务器,能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP、Onvif协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发。
EasyNVR安防视频可视化服务

更多流媒体音视频资源

EasyDarwin开源流媒体服务器:www.EasyDarwin.org

EasyDSS高性能互联网直播服务:www.EasyDSS.com

EasyNVR安防视频可视化服务:www.EasyNVR.com

EasyNVS视频综合管理平台:www.EasyNVS.com

EasyNTS云组网:www.EasyNTS.com

EasyGBS国标GB/T28181服务器:www.EasyGBS.com

EasyRTC视频会议解决方案:www.EasyRTC.cn

Copyright © TSINGSEE.com Team 2012-2019

青犀TSINGSEE

猜你喜欢

转载自blog.csdn.net/xiejiashu/article/details/94498874