本申请实施例涉及计算机领域,具体而言,涉及一种调整串流延迟方法及装置。
背景技术:
1、随着网络视频串流的发展,串流协议在串流应用中相当重要,srt(securereliable transport,安全可靠传输协议)在众多串流协议中尤为突出。
2、目前市面上众多软件开发都利用了srt技术,且srt可以提供丢包恢复以及加密安全等功能,但是这些功能的解析会增加串流数据的延迟,造成网络堵塞及串流中断等状况,进而使串流数据的传输效率变低。
3、针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本申请实施例提供了一种调整串流延迟方法及装置,以至少解决相关技术中串流数据传输效率低的问题。
2、根据本申请的一个实施例,提供了一种调整串流延迟方法,包括:响应于拉流端和云端网络之间传输串流数据,获取串流数据的传输参数,其中,传输参数至少包括:拉流端发送串流输出的发送时间、拉流端接收串流数据的接收时间和比特率;基于发出时间和接收时间,确定串流数据的往返延迟,其中,往返延迟用于表征从拉流端发出串流数据到拉流端接收串流数据之间的时间延迟;基于往返延迟和比特率,调整缓冲模块的缓冲参数,其中,缓冲模块位于拉流端和云端网络之间,缓冲模块用于基于缓冲参数对串流数据进行缓冲。
3、在一个示例性实施例中,基于往返延迟和比特率,调整缓冲模块的缓冲参数,该方法包括:基于往返延迟和比特率,获取所需的缓冲大小;基于缓冲大小,调整资料缓冲模块的缓冲参数。
4、在一个示例性实施例中,在将串流数据从拉流端推流至缓冲模块过程中,串流数据会依次经过串行接口、编码器、传输处理模块、缓冲模块,在串流数据从拉流端推流至缓冲模块过程中,还包括:利用串行接口将串流数据从拉流端推流至编码器;利用编码器对串流数据进行编码,得到串流数据对应的第一编码,其中,第一编码用于表征串流数据向云端网络推流过程中编码器对串流数据进行编码得到对应的编码;利用传输处理模块对第一编码进行切片封装,得到串流数据对应的串流封包,其中,串流封包用于表征在推流过程中对串流数据进行切片封装,得到串流数据对应的切片数据包;将串流封包推流至缓冲模块。
5、在一个示例性实施例中,在串流数据从缓冲模块推流至云端网络的过程中,串流数据依次经过安全传输模块、云端网络,缓冲模块调整资料缓冲模块的缓冲参数后,方法还包括:基于缓冲参数,对串流封包进行调整并输出串流数据,获取调整后的串流数据;利用安全传输模块将串流数据推流至云端网络。
6、在一个示例性实施例中,在将串流数据从云端网络拉流至缓冲模块过程中,还包括:利用安全传输模块将云端网络返回的串流数据拉流至缓冲模块。
7、在一个示例性实施例中,在将串流数据从缓冲模块拉流至拉流端过程中,串流数据会依次经过缓冲模块、传输处理模块、解码器、串行接口,在调整缓冲模块的缓冲参数后,还包括:利用传输处理模块对串流数据进行拆解,得到串流数据对应的第二编码,其中,第二编码用于表征拉流过程中未解码的串流数据;利用解码器对第二编码进行解码,得到第二编码对应的串流数据;利用串行接口将串流数据拉流至拉流端。
8、在一个示例性实施例中,串流数据从拉流端推流至云端网络,立即从云端网络拉流至拉流端。
9、根据本申请的另一个实施例,提供了一种调整串流延迟装置,包括:获取模块,用于响应于拉流端和云端网络之间传输串流数据,获取串流数据的传输参数,其中,传输参数至少包括:拉流端发送串流数据的发出时间、拉流端接收串流数据的接收时间和比特率;确定模块,用于基于发出时间和接收时间,确定串流数据的往返延迟,其中,往返延迟用于表征从拉流端发出串流数据到拉流端接收串流数据之间的时间延迟;调整模块,用于基于往返延迟和比特率,调整缓冲模块的缓冲参数,其中,缓冲模块位于拉流端和云端网络之间,所缓冲模块用于基于缓冲参数对串流数据进行缓冲。
10、根据本申请的又一个实施例,还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行上述任一项调整串流延迟方法实施例中的步骤。
11、根据本申请的又一个实施例,还提供了一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任一项调整串流延迟方法实施例中的步骤。
12、通过本申请,需要说明的是,由于对软件功能的解析都会增加串流的延迟,导致网络堵塞,网络传输速度效率变慢,通过实时获取串流数据的发出时间和接收时间,基于串流数据的发出时间和接收时间,实时获取到串流数据的往返延迟,进一步根据往返延迟和比特率调整缓冲模块的缓冲参数,从而可以动态改变缓冲模块的缓冲大小,因此,可以解决串流数据传输效率低问题,达到动态更新缓冲数据,使数据持续串流的效果。
1.一种调整串流延迟方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,基于所述往返延迟和所述比特率,调整所述缓冲模块的缓冲参数,所述方法包括:
3.根据权利要求1所述的方法,其特征在于,在将所述串流数据从所述拉流端推流至所述缓冲模块过程中,所述串流数据会依次经过串行接口、编码器、传输处理模块、缓冲模块,在所述串流数据从拉流端推流至所述缓冲模块过程中,还包括:
4.根据权利要求2所述的方法,其特征在于,在所述串流数据从所述缓冲模块推流至所述云端网络的过程中,所述串流数据依次经过安全传输模块、所述云端网络,所述缓冲模块调整所述资料缓冲模块的缓冲参数后,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,在将所述串流数据从云端网络拉流至所述缓冲模块过程中,还包括:
6.根据权利要求5所述的方法,其特征在于,在将所述串流数据从所述缓冲模块拉流至所述拉流端过程中,所述串流数据会依次经过所述缓冲模块、所述传输处理模块、解码器、串行接口,在调整所述缓冲模块的所述缓冲参数后,还包括:
7.根据权利要求1至6任意一项所述的方法,其特征在于,所述串流数据从所述拉流端推流至所述云端网络,立即从所述云端网络拉流至所述拉流端。
8.一种调整串流延迟装置,其特征在于,包括:
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的调整串流延迟方法的步骤。
10.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的调整串流延迟方法的步骤。