本公开涉及码流整形,尤其涉及一种保证时延的多媒体码流整形方法、装置及存储介质。
背景技术:
1、码流整形算法是多媒体传输中比较常见的算法,主要用于避免码流激烈波动时引起的网络丢包问题。简单的码流整形算法是通过缓存报文,并按照计算得到的平均码率进行发送来实现的。码流整形算法会引入时延,对于间歇性出现数据峰值的情况(比如视频编码中的i帧),时延更为明显,影响用户体验。
2、因此,有必要提供一种新的技术方案改善上述方案中存在的一个或者多个问题。
3、需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此,可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
1、本公开的目的在于提供一种保证时延的多媒体码流整形方法、装置及存储介质,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
2、根据本公开实施例的第一方面,提供一种保证时延的多媒体码流整形方法,该方法包括:
3、根据当前预设时间段内的帧长度、当前最新帧序号、一个周期包含的帧数及帧间隔时长计算平均码率;其中,该当前预设时间段至少包含整个周期;
4、根据当前待发送数据帧长度及要保证的延时计算延时保证码率;
5、根据当前缓存中数据总长度及要保证的延时计算缓存码率;
6、在每个发送周期内,根据所述平均码率、延时保证码率及缓存码率计算实际发送码率。
7、本公开的实施例中,所述平均码率的计算公式为:
8、
9、其中,ra表示平均码率,n表示当前最新帧序号,p为一个周期包含的帧数,l为当前预设时间段内的帧长度,δt表示帧间隔时长。
10、本公开的实施例中,所述延时保证码率的计算公式为:
11、rd=ln/d (2)
12、其中,rd表示延时保证码率,ln表示当前待发送数据帧长度,d表示要保证的延时。
13、本公开的实施例中,所述缓存码率的计算公式为:
14、rb=b/d (3)
15、其中,rb表示缓存码率,b表示当前缓存中数据总长度,d表示要保证的延时。
16、本公开的实施例中,所述实际发送速率的计算公式为:
17、s=max(ra,rd,rb) (4)
18、其中,s表示每个发送周期的实际发送速率。
19、本公开的实施例中,所述周期为gop周期。
20、本公开的实施例中,所述平均码率在每收到一帧数据后重新计算。
21、本公开的实施例中,所述延时保证码率在每发送完一帧数据后重新计算。
22、本公开的实施例中,所述缓存码率在每个发送周期重新计算。
23、根据本公开实施例的第二方面,提供一种保证时延的多媒体码流整形装置,该装置包括:
24、第一计算模块,用于根据当前预设时间段内的帧长度、当前最新帧序号、一个周期包含的帧数及帧间隔时长计算平均码率;其中,该当前预设时间段至少包含整个周期;
25、第二计算模块,用于据当前待发送数据帧长度及要保证的延时计算延时保证码率;
26、第三计算模块,用于根据当前缓存中数据总长度及要保证的延时计算缓存码率;
27、第四计算模块,用于在每个发送周期内,根据所述平均码率、延时保证码率及缓存码率计算实际发送码率。
28、根据本公开实施例的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任意一个实施例中任一项所述保证时延的多媒体码流整形方法的步骤。
29、本公开的实施例提供的技术方案可以包括以下有益效果:
30、本公开的一种实施例中,根据上述方法,通过计算平均码率、延时保证码率和缓存码率,然后在每个发送周期内,根据计算的平均码率、延时保证码率和缓存码率计算实际发送码率,计算出的实际发送码率作为后续数据帧的发送码率,通过将计算的实际发送码率作为后续数据帧的发送码率,不仅可以避免对网络冲击而引起的网络丢包问题,还可以保证发送数据时的延时不会超过既定延时大小,保证业务的时效性,此外,还可以保证缓存大小不会超过既定缓存大小,从而提升用户的体验。
31、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
1.一种保证时延的多媒体码流整形方法,其特征在于,该方法包括:
2.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,所述平均码率的计算公式为:
3.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,所述延时保证码率的计算公式为:
4.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,所述缓存码率的计算公式为:
5.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,所述实际发送速率的计算公式为:
6.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,所述周期为gop周期。
7.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,
8.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,
9.根据权利要求1所述保证时延的多媒体码流整形方法,其特征在于,
10.一种保证时延的多媒体码流整形装置,其特征在于,该装置包括:
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~9任一项所述保证时延的多媒体码流整形方法的步骤。