视频处理方法、装置、服务器、存储介质及程序产品制造方法及图纸

技术编号:36951809 阅读:9 留言:0更新日期:2023-03-22 19:12
本申请涉及视频处理方法、装置、服务器、存储介质及程序产品,属于视频播放技术领域。本申请当检测到一路图像组数据流断流恢复时,对该一路图像组数据流中各图像组依次进行缓存;利用该一路图像组数据流中各图像组携带的由编码服务器配置的时间戳修正信息,修正缓存的各图像组的音视频时间戳,将各图像组修正后的音视频时间戳与本路垫片数据的音视频时间戳进行比较,确定一路图像组数据流断流恢复后的切片开始图像组,从切片开始图像组开始,进行切片处理。通过本申请,可实现在保障多路切片切换时时间戳对齐的情况下,使断流恢复后的切片时间戳相对于本路垫片时间戳的单调递增。片时间戳相对于本路垫片时间戳的单调递增。片时间戳相对于本路垫片时间戳的单调递增。

【技术实现步骤摘要】
视频处理方法、装置、服务器、存储介质及程序产品


[0001]本申请属于视频播放
,具体涉及视频处理方法、装置、服务器、存储介质及程序产品。

技术介绍

[0002]HLS(HTTP Live Streaming,超文本直播流)协议是苹果公司实现的基于HTTP(HyperText Transfer Protocol,超文本传输协议)的流媒体传输协议。近年来,HLS协议在流媒体领域得到了广泛应用,该协议采用HTTP传输,可以根据网络速度自适应调整视频图像质量,播放端可根据实际网络下载速度自适应调整视频的图像质量,以在网络波动明显的场景下,可让播放端实现不间断播放。
[0003]直播云转码切片系统环节甚多,应用中,为了实现根据网络速度自适应调整视频图像质量,在编码服务器侧,编码服务器获取视频源流信号后,编码生成多路不同视频画面质量的图像组(GOP,Group Of Pictures)数据流。切片服务器可以从编码服务器直接拉流,来获取多路图像组数据流,或者,编码服务器可以将生成的多路图像组数据流发送到中转服务器,切片服务器从中转服务器上拉流,来获取多路图像组数据流,然后,针对每路图像组数据流,切片服务器以图像组为最小单位进行切片处理,得到多路不同视频画面质量的切片流。在网络波动明显的场景下,播放端可根据实际网络下载速度从切片服务器选择一路适配的切片流,来调整视频的图像质量,让播放端实现不间断播放。
[0004]编码服务器接收目标视频的视频源流信号或者编码服务器的编码处理都可能出现“状况”,由此导致切片服务器发生断流。相关技术中,当目标视频的图像组数据流发生断流时,切片服务器自身会生产垫片数据,从断流处填补上垫片数据,该垫片数据发送给播放端播放,以防止播放端黑屏。在断流恢复后,编码服务器编码重新生成图像组数据流,切片服务器当接到编码服务器重新生成的图像组数据流时,停止生产垫片数据,切换为根据编码服务器重新生成的图像组数据流来生产目标视频的切片。编码服务器在生成图像组时会为图像组配置时间戳,而由于图像组从生成到传输至切片服务器存在一定的时间延时,因而,对于断流恢复后初始生成的目标视频的若干图像组来说,其被生产出来的时间会早于垫片数据中最后一个垫片切片被生产出来的时间。对于图像组数据流断流恢复后得到的目标视频的切片文件,虽然其在顺序上是排在垫片数据之后,但是,在播放时间上,断流恢复后得到的目标视频的初始若干切片文件的播放开始时间可能会早于垫片数据的播放结束时间,从而出现断流恢复后目标视频的切片时间戳回退问题。对于播放端来说,对切片是按时间戳递增顺序播放,因而,在出现切片时间戳回退问题时,会导致播放端播放异常,如视频画面卡住。

技术实现思路

[0005]为此,本申请提供视频处理方法、装置、服务器、存储介质及程序产品,有助于解决断流恢复后目标视频的切片时间戳回退问题。
[0006]为实现以上目的,本申请采用如下技术方案:
[0007]第一方面,本申请提供一种视频处理方法,所述方法应用于切片服务器,所述方法包括:
[0008]当检测到一路图像组数据流断流恢复时,对所述一路图像组数据流中各图像组依次进行缓存;
[0009]利用所述一路图像组数据流中各图像组携带的时间戳修正信息,修正缓存的各图像组的音视频时间戳,所述一路图像组数据流中各图像组携带的时间戳修正信息由编码服务器编码生产图像组时配置;
[0010]将各图像组修正后的音视频时间戳与本路垫片数据的音视频时间戳进行比较,确定所述一路图像组数据流断流恢复后的切片开始图像组,其中,所述本路垫片数据为所述一路图像组数据流断流时,所述切片服务器发送给播放端播放的各切片文件;所述切片开始图像组的播放开始时间等于或者迟于所述本路垫片数据的播放结束时间;
[0011]从所述一路图像组数据流的所述切片开始图像组开始,进行切片处理。
[0012]第二方面,本申请提供一种视频处理装置,所述装置包括:
[0013]图像组缓存模块,用于当检测到一路图像组数据流断流恢复时,对所述一路图像组数据流中各图像组依次进行缓存;
[0014]图像组时间修正模块,用于利用所述一路图像组数据流中各图像组携带的时间戳修正信息,修正缓存的各图像组的音视频时间戳,所述一路图像组数据流中各图像组携带的时间戳修正信息由编码服务器编码生产图像组时配置;
[0015]确定切片开始图像组模块,用于将各图像组修正后的音视频时间戳与本路垫片数据的音视频时间戳进行比较,确定所述一路图像组数据流断流恢复后的切片开始图像组,其中,所述本路垫片数据为所述一路图像组数据流断流时,所述切片服务器发送给播放端播放的各切片文件;所述切片开始图像组的播放开始时间等于或者迟于所述本路垫片数据的播放结束时间;
[0016]切片处理模块,用于从所述一路图像组数据流的所述切片开始图像组开始,进行切片处理。
[0017]第三方面,本申请提供一种切片服务器,包括:
[0018]至少一个处理器;以及
[0019]与所述至少一个处理器通信连接的存储器;其中,
[0020]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第一方面所述的方法。
[0021]第四方面,本申请提供一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行上述第一方面所述的方法。
[0022]第五方面,本申请提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述第一方面所述的方法。
[0023]本申请采用以上技术方案,至少具备以下有益效果:
[0024]本申请提供的技术方案中,一路图像组数据流为编码服务器生产的不同图像质量的多路图像组数据流中的一者,在切片服务器侧,当检测到一路图像组数据流断流恢复时,不是让该一路图像组数据流中的图像组立刻投入切片生产,而是将各图像组缓存起来,针
对缓存的各图像组,利用编码服务器编码生产图像组时配置的时间戳修正信息,修正各图像组的音视频时间戳,对于多路图像组数据流情况下,在切片服务器侧,均以编码服务器编码生产图像组时配置的时间戳修正信息来修正音视频时间,因而可让针对多路图像组数据流对应生产出的不同视频画面质量的多路切片有着统一的时间戳参考基准,通过把音视频时间戳转换到统一的编码生产时间轴,保证了多路切片音视频时间戳的对齐,进而播放端在不同图像质量的切片选择切换时,可实现切片音视频时间戳的跨任务对齐,在此基础上,将各图像组修正后的音视频时间戳与本路垫片数据的音视频时间戳进行比较,确定所述一路图像组数据流断流恢复后的切片开始图像组,由于该切片开始图像组的播放开始时间等于或者迟于本路垫片数据的播放结束时间,因而,针对断流恢复的该一路图像组数据流,从该切片开始图像组开始,进行切片处理,由此可实现在保障目标视频多路切片音视频时间戳跨任务对齐的场景下,能让断流恢复后所填补切片的播放时间相对于本路垫本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种视频处理方法,其特征在于,所述方法应用于切片服务器,所述方法包括:当检测到一路图像组数据流断流恢复时,对所述一路图像组数据流中各图像组依次进行缓存;利用所述一路图像组数据流中各图像组携带的时间戳修正信息,修正缓存的各图像组的音视频时间戳,所述一路图像组数据流中各图像组携带的时间戳修正信息由编码服务器编码生产图像组时配置;将各图像组修正后的音视频时间戳与本路垫片数据的音视频时间戳进行比较,确定所述一路图像组数据流断流恢复后的切片开始图像组,其中,所述本路垫片数据为所述一路图像组数据流断流时,所述切片服务器发送给播放端播放的各切片文件;所述切片开始图像组的播放开始时间等于或者迟于所述本路垫片数据的播放结束时间;从所述一路图像组数据流的所述切片开始图像组开始,进行切片处理。2.根据权利要求1所述的方法,其特征在于,所述将各图像组修正后的音视频时间戳与本路垫片数据的音视频时间戳进行比较,确定所述一路图像组数据流断流恢复后的切片开始图像组,包括:按图像组由先到后的缓存顺序,从第一个缓存的图像组开始,判断图像组修正后的首个视频帧的播放时间是否等于或者迟于所述本路垫片数据最后一个帧的播放时间,其中,所述本路垫片数据最后一个帧为视频帧或者音频帧;当判断结果为是时,将对应的图像组确定为断流恢复后的所述切片开始图像组,并停止执行判断下一图像组修正后的首个视频帧的播放时间是否等于或者迟于所述本路垫片数据最后一个帧的播放时间的步骤;当判断结果为否时,执行判断下一图像组修正后的首个视频帧的播放时间是否等于或者迟于所述本路垫片数据最后一个帧的播放时间的步骤。3.根据权利要求1或2所述的方法,其特征在于,所述从所述一路图像组数据流的所述切片开始图像组开始,进行切片处理,包括:基于所述一路图像组数据流中图像组的实际时长,得到所述一路图像组数据流中图像组的校正时长;通过图像组的所述校正时长和预设定的切片时长,生成切片规则;利用所述切片开始图像组的索引号和所述切片规则,确定所述切片开始图像组在图像组数据流中的切分位置,所述切分位置包括:所述切片开始图像组所属切片的序号和在所述所属切片中的位置;基于所述切片开始图像组在图像组数据流中的所述切分位置,从所述切片开始图像组起,利用所述切片规则得到切片。4.根据权利要求3所述的方法,其特征在于,所述基于所述一路图像组数据流中图像组的实际时长,得到所述一路图像组数据流中图像组的校正时长,包括:按图像组由先到后的缓存顺序,从第一个缓存的图像组开始,对图像组的实际时长进行四舍五入,得到对应的比较时长;计算图像组的实际时长与对应的所述比较时长之间的差值,并判断所述差值的绝对值是否小于预设阈值;若小于,则将图像组所对应的所述比较时长作为所述一路图像组数...

【专利技术属性】
技术研发人员:王健
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1