音频数据处理方法、装置、设备及存储介质与流程

文档序号:36087721发布日期:2023-11-18 04:56阅读:47来源:国知局
音频数据处理方法与流程

本公开涉及计算机,尤其涉及一种音频数据处理方法、装置、设备及存储介质。


背景技术:

1、随着计算机技术的发展,终端设备可以为人们提供质量越来越高的音频服务。例如在即时通讯应用场景下,发送终端可以将相应的音频数据包发送至接收终端。接收终端可以依照音频数据包的次序播放该音频数据包中的帧数据。由于音频数据包在网络传输的过程中,可能会出现网络抖动的现象,该网络抖动的现象会影响音频数据包到达的时间,从而会导致音频数据播放卡顿与延时现象。因此,需要对音频数据进行处理,以提高音频数据的处理质量。


技术实现思路

1、本公开实施例提供了一种音频数据处理方法、装置、设备及存储介质,可用于提高音频数据的处理质量。

2、本公开实施例提供了一种音频数据处理方法,该方法包括:接收音频数据的当前音频帧,所述当前音频帧中包括所述当前音频帧的发送时间;根据所述当前音频帧的发送时间和接收时间,获得当前网络延迟指标;根据所述当前网络延迟指标确定缓存区的当前实际存储容量;根据所述当前音频帧的发送时间和接收时间,以及所述音频数据的上一音频帧的发送时间和接收时间,获得当前网络抖动瞬时指标;根据所述当前网络抖动瞬时指标获得当前网络抖动指标;根据所述当前网络抖动指标确定所述缓存区的当前目标存储容量;将所述当前音频帧缓存至所述缓存区中;根据所述缓存区的所述当前实际存储容量和所述当前目标存储容量,处理所述缓存区中的音频帧,所述音频帧包括所述当前音频帧。

3、本公开实施例提供了一种音频数据处理装置,该装置包括:接收模块,用于接收音频数据的当前音频帧,所述当前音频帧中包括所述当前音频帧的发送时间;获取模块,用于根据所述当前音频帧的发送时间和接收时间,获得当前网络延迟指标;确定模块,用于根据所述当前网络延迟指标确定缓存区的当前实际存储容量;所述获取模块,还用于根据所述当前音频帧的发送时间和接收时间,以及所述音频数据的上一音频帧的发送时间和接收时间,获得当前网络抖动瞬时指标;所述获取模块,还用于根据所述当前网络抖动瞬时指标获得当前网络抖动指标;所述获取模块,还用于根据所述当前网络抖动指标确定所述缓存区的当前目标存储容量;缓存模块,用于将所述当前音频帧缓存至所述缓存区中;处理模块,用于根据所述缓存区的所述当前实际存储容量和所述当前目标存储容量,处理所述缓存区中的音频帧,所述音频帧包括所述当前音频帧。

4、在示例性实施例中,确定模块,用于根据所述当前网络延迟指标和所述当前音频帧的发送时间,获得所述当前音频帧的平滑接收时间;根据所述当前音频帧的平滑接收时间和所述当前音频帧的实际播放时间,获得所述缓存区的所述当前实际存储容量。

5、在示例性实施例中,确定模块,用于根据所述当前音频帧的发送时间和接收时间、所述上一音频帧的发送时间和接收时间、以及所述当前音频帧的平滑接收时间,获得当前残余抖动指标;根据所述当前音频帧的实际播放时间、所述当前音频帧的平滑接收时间、以及所述当前残余抖动指标,获得所述缓存区的所述当前实际存储容量。

6、在示例性实施例中,获取模块,用于利用目标滤波器处理所述当前音频帧的发送时间和接收时间,获得所述当前网络延迟指标;

7、其中,所述装置还包括:重置模块,用于获得所述当前音频帧的接收时间和发送时间的第一差异指标;获得所述当前网络延迟指标与所述第一差异指标之间的第二差异指标;若确定所述第二差异指标大于第一阈值,则根据所述第二差异指标获得累积差异指标;若确定所述累积差异指标大于第二阈值,则重置所述目标滤波器。

8、在示例性实施例中,获取模块,用于确定所述当前网络抖动瞬时指标所处的区间;确定每个区间内的网络抖动瞬时指标的计数,所述网络抖动瞬时指标包括所述当前网络抖动瞬时指标;对每个区间内的网络抖动瞬时指标的计数进行归一化,获得当前网络抖动概率密度;将所述当前网络抖动概率密度的α上侧分位数作为所述当前网络抖动指标。

9、在示例性实施例中,获取模块,还用于若确定所述音频数据在第一预定滑动窗口时长内的丢包补偿次数大于第一丢包次数阈值,则按照第一步长增大α,α为大于0且小于1的实数;若确定所述音频数据在第二预定滑动窗口时长内的丢包补偿次数小于或等于第二丢包次数阈值,则按照第二步长减小α;其中,所述第一步长大于所述第二步长。

10、在示例性实施例中,所述区间包括目标区间;获取模块,用于若确定所述音频数据在第三预定滑动窗口时长内的网络抖动指标,小于所述音频数据在第四预定滑动窗口时长内的网络抖动指标最小值,则将所述目标区间内的网络抖动瞬时指标的计数置零;重新归一化每个区间内的网络抖动瞬时指标的计数,获得更新后的当前网络抖动概率密度;将所述更新后的当前网络抖动概率密度的α上侧分位数作为所述当前网络抖动指标。

11、在示例性实施例中,获取模块,用于对所述当前音频帧进行第一异常检测,所述第一异常检测包括异常包检测、重复包检测、迟到包检测中的至少一种;利用通过所述第一异常检测的所述当前音频帧的发送时间和接收时间,以及所述音频数据的上一音频帧的发送时间和接收时间,获得所述当前网络抖动瞬时指标。

12、在示例性实施例中,处理模块,用于根据所述当前目标存储容量确定当前目标存储容量上限指标和当前目标存储容量下限指标;处理模块,还用于若所述当前音频帧连续,所述当前实际存储容量大于所述当前目标存储容量上限指标,且所述音频数据在第五预定时长内未发生丢包补偿,则加速播放所述缓存区中的所述当前音频帧;若所述当前音频帧连续,所述当前实际存储容量小于所述当前目标存储容量下限指标,则减速播放所述缓存区内的所述当前音频帧;若所述当前音频帧不连续,当前时间大于所述当前音频帧的预计播放时间,则播放所述缓存区内的所述当前音频帧;若所述当前音频帧不连续,所述当前时间小于所述当前音频帧的预计播放时间,则根据所述当前音频帧对所述音频数据作丢包补偿。

13、在示例性实施例中,获取模块,还用于根据所述当前音频帧的实际播放时间和接收时间,获得当前接收端延迟指标;获得所述当前目标存储容量与当前残余抖动指标之间的差值;根据所述当前音频帧的发送时间、所述当前网络延迟指标、所述当前接收端延迟指标、以及所述当前目标存储容量与当前残余抖动指标之间的差值,获得所述当前音频帧的预计播放时间。

14、在示例性实施例中,所述当前目标存储容量上限指标与所述当前目标存储容量之间的差值大于所述当前目标存储容量与所述当前目标存储容量下限指标之间的差值。

15、本公开实施例提供了一种计算机设备,包括处理器、存储器、输入输出接口;处理器分别与存储器和输入输出接口相连,其中,输入输出接口用于接收数据及输出数据,存储器用于存储计算机程序,处理器用于调用该计算机程序,以使包含该处理器的计算机设备执行本公开任一实施例中的音频数据处理方法。

16、本公开实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有该处理器的计算机设备执行本公开任一实施例中的音频数据处理方法。

17、本公开实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本公开任一实施例中的各种可选方式中提供的音频数据处理方法。

18、本公开实施例提供的技术方案,通过对当前音频帧进行处理,可以获得当前网络延迟指标与当前网络抖动指标,再分别基于当前网络延迟指标和当前网络抖动指标获得缓存区的当前实际存储容量与当前目标存储容量,这样当将该当前音频帧缓存至该缓存区时,可以基于上述获得的当前实际存储容量和当前目标存储容量来处理该缓存区中的音频帧,由于在上述获得该当前实际存储容量和当前目标存储容量的过程中,考虑了用于传输该当前音频帧的当前网络延迟指标和当前网络抖动指标,因此,能够实现基于当前的传输网络的状况,自适应的调节该缓存区的当前实际存储容量,提高音频数据的处理质量,以此实现在音频卡顿和延迟之间取得较好的平衡。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1