一种码流切换方法及装置制造方法及图纸

技术编号:15795196 阅读:152 留言:0更新日期:2017-07-10 11:33
本申请提供了一种码流切换方法及装置,码流切换方法包括:获取快速码流切换对应的关键帧间隔;获取高视频编码效率对应的关键帧间隔;根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,其中,所述预设个数为不小于2的整数;按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流;将当前播放时间点的视频切换至所述待使用码流进行播放。在本申请中,通过以上方式同时实现高的视频编码效率和快的码流切换速度。

【技术实现步骤摘要】
一种码流切换方法及装置
本申请涉及多媒体
,特别涉及一种码流切换方法及装置。
技术介绍
在流视频播放过程中经常会遇到码流切换的情况,如高分辨率和低分辨率间切换或不同的码率间切换或不同视角间切换时都可以产生码流切换的情况。其中,由于视频编码中关键帧(如I帧、IDR帧或CRA帧等)才能提供切换功能,因此流视频播放过程中需要等到一个关键帧时间点才能启动码流切换。由于关键帧间隔越小,码流切换的速度越快,因此为了提高码流切换的速度,需要缩小关键帧间隔,但是缩小关键帧间隔会导致视频编码效率降低。可见,在码流切换时,快速码流切换和高的视频编码效率不可兼得。
技术实现思路
为解决上述技术问题,本申请实施例提供一种码流切换方法及装置,以达到同时实现高的视频编码效率和快的码流切换速度的目的,技术方案如下:一种码流切换方法,包括:获取快速码流切换对应的关键帧间隔;获取高视频编码效率对应的关键帧间隔;根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,其中,所述预设个数为不小于2的整数;按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流;将当前播放时间点的视频切换至所述待使用码流进行播放。优选的,根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流的过程,包括:利用关系式t=N/M,生成t个码流,所述t为所述预设个数,所述N为所述高视频编码效率对应的关键帧间隔,所述M为所述快速码流切换对应的关键帧间隔,t个所述码流各自的第一帧均是关键帧;t个所述码流中的第一个码流的第二个关键帧在第N+1帧,第m1个关键帧在第(m1-1)*N+1帧,m1>=1;t个所述码流中的第二个码流的第二个关键帧在第M+1帧,第m2个关键帧在第(m2-2)*N+M+1帧,m2>=2;t个所述码流中的第三个码流的第二个关键帧在第2M+1帧,第m3个关键帧在第(m3-2)*N+2M+1帧,m3>=2;t个所述码流中的第u个码流的第二个关键帧在第(u-1)*M+1帧,第m4个关键帧在第(m4-2)*N+(u-1)*M+1帧,m4>=2,1<u<=t。优选的,按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流,包括:从t个所述码流中的第一个码流、第二个码流、第三个码流和第u个码流中选取出时间距离所述当前播放时间点最近的关键帧;将选取出的时间距离所述当前播放时间点最近的关键帧所属的码流,作为待使用码流。优选的,根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,包括:根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成2个码流,2个所述码流各自的第一帧均是关键帧,且2个所述码流中的第一个码流的关键帧间隔为M,2个所述码流中的第二个码流的关键帧间隔为N,所述M为所述快速码流切换对应的关键帧间隔,所述N为所述高视频编码效率对应的关键帧间隔。优选的,按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流,包括:从2个所述码流中选取出第一个码流,作为待使用码流;将当前播放时间点的视频切换至所述待使用码流进行播放之后,还包括:在当前播放时间点的视频播放至2个所述码流中的第二个码流的关键帧位置时,将当前播放时间点的视频切换至2个所述码流中的第二个码流进行播放。一种码流切换装置,包括:第一获取模块,用于获取快速码流切换对应的关键帧间隔;第二获取模块,用于获取高视频编码效率对应的关键帧间隔;生成模块,用于根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,其中,所述预设个数为不小于2的整数;选取模块,用于按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流;第一切换模块,用于将当前播放时间点的视频切换至所述待使用码流进行播放。优选的,所述生成模块包括:第一生成单元,用于利用关系式t=N/M,生成t个码流,所述t为所述预设个数,所述N为所述高视频编码效率对应的关键帧间隔,所述M为所述快速码流切换对应的关键帧间隔,t个所述码流各自的第一帧均是关键帧;t个所述码流中的第一个码流的第二个关键帧在第N+1帧,第m1个关键帧在第(m1-1)*N+1帧,m1>=1;t个所述码流中的第二个码流的第二个关键帧在第M+1帧,第m2个关键帧在第(m2-2)*N+M+1帧,m2>=2;t个所述码流中的第三个码流的第二个关键帧在第2M+1帧,第m3个关键帧在第(m3-2)*N+2M+1帧,m3>=2;t个所述码流中的第u个码流的第二个关键帧在第(u-1)*M+1帧,第m4个关键帧在第(m4-2)*N+(u-1)*M+1帧,m4>=2,1<u<=t。优选的,所述选取模块包括:第一选取单元,用于从t个所述码流中的第一个码流、第二个码流、第三个码流和第u个码流中选取出时间距离所述当前播放时间点最近的关键帧;确定单元,用于将选取出的时间距离所述当前播放时间点最近的关键帧所属的码流,作为待使用码流。优选的,所述生成模块包括:第二生成单元,用于根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成2个码流,2个所述码流各自的第一帧均是关键帧,且2个所述码流中的第一个码流的关键帧间隔为M,2个所述码流中的第二个码流的关键帧间隔为N,所述M为所述快速码流切换对应的关键帧间隔,所述N为所述高视频编码效率对应的关键帧间隔。优选的,所述选取模块包括:第二选取单元,用于从2个所述码流中选取出第一个码流,作为待使用码流;所述装置还包括:第二切换模块,用于在当前播放时间点的视频播放至2个所述码流中的第二个码流的关键帧位置时,将当前播放时间点的视频切换至2个所述码流中的第二个码流进行播放。与现有技术相比,本申请的有益效果为:在本申请中,基于以空间换取编码效率和切换速度的原理,根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流;将当前播放时间点的视频切换至所述待使用码流进行播放,通过多个码流同时实现高的视频编码效率和快的码流切换速度。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本申请提供的码流切换方法的一种流程图;图2是本申请提供的码流切换装置的一种逻辑结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。实施例一请参见图1,其示出了本申请提供的码流切换方法的一种流程图,可以包括以下步骤:步骤S11:获取快速码流切换对应的关键帧间隔。在本实施例中,由于不同速度的码流切换对应本文档来自技高网...
一种码流切换方法及装置

【技术保护点】
一种码流切换方法,其特征在于,包括:获取快速码流切换对应的关键帧间隔;获取高视频编码效率对应的关键帧间隔;根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,其中,所述预设个数为不小于2的整数;按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流;将当前播放时间点的视频切换至所述待使用码流进行播放。

【技术特征摘要】
1.一种码流切换方法,其特征在于,包括:获取快速码流切换对应的关键帧间隔;获取高视频编码效率对应的关键帧间隔;根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,其中,所述预设个数为不小于2的整数;按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流;将当前播放时间点的视频切换至所述待使用码流进行播放。2.根据权利要求1所述的方法,其特征在于,根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流的过程,包括:利用关系式t=N/M,生成t个码流,所述t为所述预设个数,所述N为所述高视频编码效率对应的关键帧间隔,所述M为所述快速码流切换对应的关键帧间隔,t个所述码流各自的第一帧均是关键帧;t个所述码流中的第一个码流的第二个关键帧在第N+1帧,第m1个关键帧在第(m1-1)*N+1帧,m1>=1;t个所述码流中的第二个码流的第二个关键帧在第M+1帧,第m2个关键帧在第(m2-2)*N+M+1帧,m2>=2;t个所述码流中的第三个码流的第二个关键帧在第2M+1帧,第m3个关键帧在第(m3-2)*N+2M+1帧,m3>=2;t个所述码流中的第u个码流的第二个关键帧在第(u-1)*M+1帧,第m4个关键帧在第(m4-2)*N+(u-1)*M+1帧,m4>=2,1<u<=t。3.根据权利要求2所述的方法,其特征在于,按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流,包括:从t个所述码流中的第一个码流、第二个码流、第三个码流和第u个码流中选取出时间距离所述当前播放时间点最近的关键帧;将选取出的时间距离所述当前播放时间点最近的关键帧所属的码流,作为待使用码流。4.根据权利要求1所述的方法,其特征在于,根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成预设个数的码流,包括:根据所述快速码流切换对应的关键帧间隔和所述高视频编码效率对应的关键帧间隔,生成2个码流,2个所述码流各自的第一帧均是关键帧,且2个所述码流中的第一个码流的关键帧间隔为M,2个所述码流中的第二个码流的关键帧间隔为N,所述M为所述快速码流切换对应的关键帧间隔,所述N为所述高视频编码效率对应的关键帧间隔。5.根据权利要求4所述的方法,其特征在于,按照预设方式,从各个所述码流中选取出一个码流,作为待使用码流,包括:从2个所述码流中选取出第一个码流,作为待使用码流;将当前播放时间点的视频切换至所述待使用码流进行播放之后,还包括:在当前播放时间点的视频播放至2个所述码流中的第二个码流的关键帧位置时...

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

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

1