EasyRTSPServer流媒体服务协议网络视频直播平台对接海康NVR音频不能正常播问题解决方案

背景分析

众所周知,RTSP协议是一个流媒体协议,可以实现直播和点播形式的音频与视频流的播放。RTSP协议定义了多种服务器-客户端之间交互的接口,主要有OPTIONS,DESCRIBE,SETUP,PLAY,TEARDOWN,RECORD,ANNOUNCE。RTSP并不包括具体数据的传输,该功能一般由RTP与RTCP协议来实现,并可以通过TCP或UDP两种底层传输方式进行。

下图是典型的RTSP直播过程中服务端-客户端主要交互过程:

EasyRTSPServer流媒体服务协议网络视频直播平台对接海康NVR音频不能正常播问题解决方案_第1张图片

EasyRTSPServer就是一套稳定、高效、可靠、多平台支持的RTSP-Server组件,今天为大家分享用户在使用EasyRTSPServer对接海康NVR时G726时,音频不能正常播放的问题。

提出问题

近期我们遇到了EasyRTSPServer对接海康NVR,视频正常,但音频不能正常播放这样的问题。

分析问题

EasyRTSPServer输出视频为H264,音频格式为G726,源都来自海康的摄像机,而该摄像机直接接入NVR是可以正常播放的。

EasyRTSPServer流媒体服务协议网络视频直播平台对接海康NVR音频不能正常播问题解决方案_第2张图片

解决问题

我们可以排除摄像机源,问题就在EasyRTSPServer,通过抓包对比,发现海康每次发包大小是固定的,而EasyRTSPServer的音频发包则是很大的一帧,说明是将多个音频帧组成一个大的帧发出了。在创建SimpleRTPSink中,指定allowMultipleFramesPerPacket参数为false即可。

EasyRTSPServer流媒体服务协议网络视频直播平台对接海康NVR音频不能正常播问题解决方案_第3张图片

关于EasyRTSPServer

EasyRTSPServer是一套稳定、高效、可靠、多平台支持的RTSP-Server组件,接口调用非常简单成熟,无需关注RTSPServer中关于客户端监听接入、音视频多路复用、RTSP具体流程、RTP打包与发送等相关问题,支持多种音视频格式,再也不用去处理整个RTSP OPTIONS/DESCRIBE/SETUP/PLAY/RTP/RTCP的复杂流程和担心内存释放的问题了,非常适合于安防领域、教育领域、互联网直播领域等。

EasyRTSPServer流媒体服务协议网络视频直播平台对接海康NVR音频不能正常播问题解决方案_第4张图片

 

你可能感兴趣的:(EasyRTSPServer)