logo好方法网

音频处理方法、装置、电子设备及存储介质


技术摘要:
本公开关于一种音频处理方法、装置、电子设备及存储介质,属于音视频技术领域。所述方法包括:接收发送端发送的音频帧,将当前接收到的所述音频帧缓存至网络抖动器;获取第一时长、第二时长和第三时长,其中,所述第一时长用于指示当前的网络抖动,所述第二时长用于指  全部
背景技术:
直播过程中主播用户和嘉宾用户可以连麦。在连麦时,各方的终端会分别通过麦 克风采集音频,在将采集到的音频依次进行前处理、音频编码器的编码处理后,再通过网络 发送给对方的终端。其中,针对接收端,在从网络上接收到发送端的音频帧后,会将接收到 的音频帧暂时缓存在JB(Jitter  Buffer,网络抖动器)中进行排序解码,在经过音频解码器 的解码处理后,再由扬声器进行播放。这样,连麦双方便可以听到彼此的声音。 然而,在连麦过程中,一方面受到网络实际情况影响,网络抖动难以避免。而在网 络发生抖动时,接收端在某一时刻可能会突然接收到很多音频帧,这可能会导致由于音频 帧累积而产生的声音延迟问题。另一方面,在某些特殊的中断情况下,比如闹铃或来电响铃 等事件发生时,音频播放行为会被中断,但是此时音频帧还在源源不断到来,这些音频帧会 被陆续放入JB,进而导致JB中存储的数据量骤升。而在中断结束后,由于JB中累积了大量的 音频帧,因此可能会产生很大的声音延迟,这会对双方交流造成严重不良影响。 考虑到以上问题,目前亟需一种音频处理方案,以至少解决直播过程中,当网络发 生抖动或中断事件发生时,因存在较大声音延迟,进而给交流双方造成严重不良影响的问 题。
技术实现要素:
本公开提供一种音频处理方法、装置、电子设备及存储介质,在网络发生抖动或中 断事件发生时,能够尽可能地缩短声音延迟的持续时间,提升了交流双方的交流体验,该种 音频处理方式效果较佳。本公开的技术方案如下: 根据本公开实施例的第一方面,提供一种音频处理方法,包括: 接收发送端发送的音频帧,将当前接收到的所述音频帧缓存至网络抖动器; 获取第一时长、第二时长和第三时长,其中,所述第一时长用于指示当前的网络抖 动,所述第二时长用于指示预设处理的最大网络抖动,所述第三时长与所述网络抖动器的 最大存储容量相关; 根据所述网络抖动器的当前容量、所述第一时长、所述第二时长和所述第三时长, 加速处理所述网络抖动器中缓存的音频帧; 其中,所述当前容量用于指示所述网络抖动器当前缓存的音频帧的数据量。 在一种可能的实现方式中,所述获取第一时长,包括: 根据接收到的各个音频帧的到达时间间隔,确定所述到达时间间隔的概率分布; 根据所述到达时间间隔的概率分布确定所述第一时长。 在一种可能的实现方式中,所述根据所述网络抖动器的当前容量、所述第一时长、 4 CN 111580777 A 说 明 书 2/14 页 所述第二时长和所述第三时长,加速处理所述网络抖动器中缓存的音频帧,包括: 若所述当前容量对应的时长大于所述第一时长,且小于所述第二时长,则采用第 一处理模式,对所述网络抖动器中缓存的音频帧进行加速播放; 其中,所述第一处理模式为每间隔M1个音频帧丢弃一个音频帧,M1为正整数。 在一种可能的实现方式中,所述根据所述网络抖动器的当前容量、所述第一时长、 所述第二时长和所述第三时长,加速处理所述网络抖动器中缓存的音频帧,包括: 若所述当前容量对应的时长大于所述第二时长,且小于所述第三时长,则采用第 二处理模式,对所述网络抖动器中缓存的音频帧进行加速播放; 其中,所述第二处理模式为每间隔M2个音频帧丢弃一个音频帧,M2为正整数且M2 小于M1。 在一种可能的实现方式中,所述根据所述网络抖动器的当前容量、所述第一时长、 所述第二时长和所述第三时长,加速处理所述网络抖动器中缓存的音频帧,包括: 若所述当前容量对应的时长不小于所述第三时长,则采用第三处理模式,对所述 网络抖动器中缓存的音频帧进行加速播放; 其中,所述第三处理模式为丢弃所述网络抖动器中缓存的部分音频帧,直至所述 网络抖动器剩余的音频帧数据量缩减至所述最大存储容量。 在一种可能的实现方式中,在接收发送端发送的音频帧的同时,所述方法还包括: 接收所述音频帧的VAD(Voice  Activity  Detection,语音活性检测)值和能量值; 其中,丢弃所述网络抖动器中缓存的音频帧的规则为: 优先丢弃所述网络抖动器中VAD值为零的音频帧; 若所述网络抖动器中至少两个音频帧的VAD值相同,则优先丢弃能量值小的音频 帧。 根据本公开实施例的第二方面,提供一种音频处理装置,包括: 接收模块,被配置为接收发送端发送的音频帧,将当前接收到的所述音频帧缓存 至网络抖动器; 获取模块,被配置为获取第一时长、第二时长和第三时长,其中,所述第一时长用 于指示当前的网络抖动,所述第二时长用于指示预设处理的最大网络抖动,所述第三时长 与所述网络抖动器的最大存储容量相关; 处理模块,被配置为根据所述网络抖动器的当前容量、所述第一时长、所述第二时 长和所述第三时长,加速处理所述网络抖动器中缓存的音频帧; 其中,所述当前容量用于指示所述网络抖动器当前缓存的音频帧的数据量。 在一种可能的实现方式中,所述获取模块,还被配置为根据接收到的各个音频帧 的到达时间间隔,确定所述到达时间间隔的概率分布;根据所述到达时间间隔的概率分布 确定所述第一时长。 在一种可能的实现方式中,所述处理模块,还被配置为若所述当前容量对应的时 长大于所述第一时长,且小于所述第二时长,则采用第一处理模式,对所述网络抖动器中缓 存的音频帧进行加速播放; 其中,所述第一处理模式为每间隔M1个音频帧丢弃一个音频帧,M1为正整数。 在一种可能的实现方式中,所述处理模块,还被配置为若所述当前容量对应的时 5 CN 111580777 A 说 明 书 3/14 页 长大于所述第二时长,且小于所述第三时长,则采用第二处理模式,对所述网络抖动器中缓 存的音频帧进行加速播放; 其中,所述第二处理模式为每间隔M2个音频帧丢弃一个音频帧,M2为正整数且M2 小于M1。 在一种可能的实现方式中,所述处理模块,还被配置为若所述当前容量对应的时 长不小于所述第三时长,则采用第三处理模式,对所述网络抖动器中缓存的音频帧进行加 速播放; 其中,所述第三处理模式为丢弃所述网络抖动器中缓存的部分音频帧,直至所述 网络抖动器剩余的音频帧数据量缩减至所述最大存储容量。 在一种可能的实现方式中,所述接收模块,还被配置为在接收发送端发送的音频 帧的同时,接收所述音频帧的VAD值和能量值; 其中,丢弃所述网络抖动器中缓存的音频帧的规则为: 优先丢弃所述网络抖动器中VAD值为零的音频帧; 若所述网络抖动器中至少两个音频帧的VAD值相同,则优先丢弃能量值小的音频 帧。 根据本公开实施例的第三方面,提供一种电子设备,包括: 处理器; 用于存储所述处理器可执行指令的存储器; 其中,所述处理器被配置为执行所述指令,以实现如第一方面所述的音频处理方 法。 根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由 电子设备的处理器执行时,使得电子设备能够执行如第一方面所述的音频处理方法。 根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品 中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述第一方面所述的音频 处理方法。 本公开的实施例提供的技术方案至少带来以下有益效果: 接收端在接收到发送端发送的音频帧后,除了将当前接收到的音频帧缓存至网络 抖动器之外,还会获取第一时长、第二时长和第三时长,其中,第一时长用于指示当前的网 络抖动,第二时长用于指示预设处理的最大网络抖动,第三时长与网络抖动器的最大存储 容量相关;之后,接收端会根据网络抖动器的当前容量、第一时长、第二时长和第三时长,自 适应地加速处理网络抖动器中缓存的音频帧;其中,当前容量用于指示网络抖动器当前缓 存的音频帧的数据量。基于以上描述可知,该种音频处理方式实现了根据JB的当前容量自 适应地调整音频处理方式,这样即便网络发生抖动或中断事件发生,进而导致音频帧在接 收端大量累积时,也不会产生较大的声音延迟。即,该方案能够尽可能地缩短声音延迟的持 续时间,提升了交流双方的交流体验,该种音频处理方式效果较佳。 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不 能限制本公开。 6 CN 111580777 A 说 明 书 4/14 页 附图说明 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施 例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。 图1是根据一示例性实施例示出的一种音频处理方法涉及的实施环境的示意图。 图2是根据一示例性实施例示出的一种音频处理方法的流程图。 图3是根据一示例性实施例示出的一种音频处理方法的流程图。 图4是根据一示例性实施例示出的一种IAT概率分布的示意图。 图5是根据一示例性实施例示出的一种网络抖动器的队列长度的示意图。 图6是根据一示例性实施例示出的一种音频处理装置的框图。 图7是根据一示例性实施例示出的一种电子设备的框图。
分享到:
收藏