之前在对EasyDSS做部分项目现场的定制开发时,我们提到了将现场多路视频合成m3u8播放地址的过程,在这个过程中可能出现一些不适配的问题,需要逐步去做调整。
之前的文章中我们对合成视频流的卡顿、内容丢失等问题做了处理,目前该问题已经不再出现,但是在测试视频文件的录像合成时,部分通道的录像合成显示成功并返回了播放路径,但实际后台没有生成视频文件。
EasyDSS多路视频合成m3u8是直接用ffmpeg对符合要求的ts文件直接进行编码从而得到新的ts文件以及m3u8播放文件。分析问题可能是出现在ffmpeg对视频文件进行解析的时候。
将ffmpeg合成命令手动执行的时候发现,会报的错误;
sample rate not set
Could not write header for output file #0 (incorrect codec parameters ?)
意思为解析音频是未设置采样率,后面发现是这个摄像头的录像文件没有音频流,因此ffmpeg在解析的时候会出错。
在发现这个问题后,测试直接通过ffmpeg生成MP4文件没有出现此问题,因此需要改变生成m3u8生成的规则,先由ffmpeg将复合视频转化成MP4格式,再将MP4文件转换成m3u8播放文件。
由ts文件直接生成:
由MP4文件生成:
EasyDSS目前也已经是一套稳定成熟的视频直播点播系统,在课堂教育、在线医疗方面都可进行实际的应用和落地,适合OTT TV、IPTV、互联网教育、视频聊天、现场直播和VOD等应用。并且EasyDSS支持多种特性,完全能够满足企业视频信息化建设方面的需求,如果大家有以上需求,欢迎了解和测试。