TSINGSEE青犀视频开发ffmpegAPI实现RTP推流客户端无法解析播放如何解决?

TSINGSEE青犀视频团队经常会通过很多不同的编译方式来实现视频推流,对比各方法下推流的差异。在使用RTP实现推流时,出现SPS于PPS在一个RTP包中,客户端无法解析导致播放失败的问题。

使用ffmpeg api进行RTP推流时,在获取对应SPS与PPS的获取需要在AVCodecContext的extradata中进行。

获取到extradata数据后,从extradata分别解析出sps与pps后,需要单独发送,使用av_interleaved_write_frame 分别发送获取到sps与pps,不能同时发送。

发送完成后,抓包可以看到,SPS与PPS是分包发送了。

这个使用客户端即可进行播放,同时使用VLC测试也可播放成功,测试如下:

TSINGSEE青犀视频云边端架构产品繁多,能够满足大部分行业以及应用场景中的安防监控平台搭建,包括视频智能分析平台以及视频流媒体播放器,其中TSINGSEE青犀视频自主研发的H265播放器已经在EasyGBS、EasyCVR等诸多视频平台中得到了运用。当然也提供视频推流组件、同屏功能组件等辅助工具。如果大家有兴趣,欢迎联系我们了解。

原文地址:https://www.cnblogs.com/TSINGSEE/p/14344049.html