【技术实现步骤摘要】
一种基于FFmpeg的HLS视频播放进度精准切换方法
[0001]本专利技术涉及计算机技术相关领域,具体为一种基于FFmpeg的HLS视频播放进度精准切换方法。
技术介绍
[0002]在点播视频的应用领域中,MP4和HLS是两种主要应用的视频格式封装协议,MP4是一套用于音频、视频信息的压缩编码标准,由国际标准化组织(ISO)和国际电工委员会(IEC)下属的MPEG制定;HLS(HTTP Live Streaming)是一个由苹果公司提出基于HTTP的流媒体网络传输协议,其中HLS协议有着使用HTTP协议,网络兼容性好,可按切片播放,播放所需缓存小,视频时间拖动播放,可以快速定位到响应切片进行播放,响应快,整体占用小,并提供了协议内播放流切换和视频流加密功能。基于上述优点,现在市面上的点播视频已经大多采用HLS协议,并且使用率还在提升中。
[0003]作为著名的开源播放器FFmpeg,也基本支持的HLS协议视频的播放,在现有的FFmpeg播放逻辑中,对于HLS视频的播放进度切换对准方式,只支持对准关键帧和直接对准任意 ...
【技术保护点】
【技术特征摘要】
1.一种基于FFmpeg的HLS视频播放进度精准切换方法,包括HLS分片ts文件的关键帧查找过程和无效的视频帧数据筛选抛弃过程,其特征在于:所述HLS分片ts文件的关键帧查找过程具体包含以下步骤:步骤11、由于HLS协议采用ts视频文件分片方式储存整体视频,对文件进度的切换,首先需要根据用户视频切换进度操作获取目标进度时间timestamp;步骤12、通过时钟基准转化函数av_rescale_rnd对步骤11中的目标进度时间timestamp进行处理,将timestamp转换为之前的第一个关键帧的视频流基准时间seek_timestamp;步骤13、通过遍历整个HLS视频内ts文件的方式,查找与seek_timestamp相匹配的ts文件;步骤14、通过HTTP协议读取下标为cur_seq_no的ts文件,并获取其每一帧的数据的解码时间DTS;步骤15、通过对比当前视频帧的DTS和seek_timestamp,当DTS小于seek_timestamp,并且当前帧为关键帧,则获取seek_timestamp之前首个关键帧时间accurate_seek_timestamp返回给上层调用方法,作为读取数据的起点位置;所述无效的视频帧数据筛选抛弃过程具体包含以下步骤:步骤21、从步骤15获取的关键帧时间accurate_seek_timestamp,且...
【专利技术属性】
技术研发人员:郭建华,
申请(专利权)人:广州埋堆堆科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。