一种音频开头爆音的消除方法及装置的制造方法

文档序号:9397903阅读:664来源:国知局
一种音频开头爆音的消除方法及装置的制造方法
【技术领域】
[0001] 本申请涉及多媒体处理技术领域,尤其涉及一种音频开头爆音的消除方法及装 置。
【背景技术】
[0002] 随着互联网及多媒体技术的发展,在互联网中随处可见各类的音频文件,如音乐、 歌曲、戏曲等曲类音频文件,以及相声小品、演讲、培训等语言类音频文件等。此外,还有包 含音频流的各类音视频文件等。
[0003] 在这些音频文件以及音视频文件中,由于音频在生成、处理、传输、存储等步骤的 复杂性,有些音乐在音频上出现了"失真",比如开头爆音、毛刺、断点等。开头爆音是比较常 见的一种失真现象,所谓开头爆音是指在音乐波形的开头,存在着短暂的脉冲,听起来像是 "嗒"的一声,这种声音会给听者带来比较差的用户体验。在对一个歌曲库的统计案例中显 示,存在开头爆音的音频占比达到10%,因此需要寻找一种能解决音频开头爆音问题的技 术方案,以提高系统对音频数据的处理功能,并增强音频数据的播放质量。

【发明内容】

[0004] 有鉴于此,本发明实施例中一方面提供了一种音频开头爆音的消除方法,另一方 面提供了一种音频开头爆音的消除装置,用于提高音频数据的播放质量,并增强服务器系 统的处理功能。
[0005] 本发明实施例中提供的一种音频开头爆音的消除方法,包括:
[0006] 在时域内对开头设定时间段内的音频帧进行检测,得到爆音位置区;
[0007] 对所述爆音位置区的音频帧进行爆音消除;
[0008] 所述在时域内对开头设定时间段内的音频帧进行检测包括:
[0009] 在时域内对开头设定时间段内的音频帧,按照时间顺序依次计算相邻的两个音频 帧的短时能量差,根据计算的短时能量差及预先设定的第一爆音阈值,得到爆音开始位置 和爆音结束位置;或者,
[0010] 在时域内对开头设定时间段内的音频帧,按照时间顺序依次将每个音频帧的短时 能量与预先设定的第二爆音阈值进行比较,根据比较结果得到爆音开始位置和爆音结束位 置;
[0011] 所述爆音位置区为由所述爆音开始位置和所述爆音结束位置所限定的区域。
[0012] 本发明实施例中提供的一种音频开头爆音的消除装置,包括:
[0013] 爆音位置区检测模块,用于在时域内对开头设定时间段内的音频帧,按照时间顺 序依次计算相邻的两个音频帧的短时能量差,根据计算的短时能量差及预先设定的第一爆 音阈值,得到爆音开始位置和爆音结束位置,得到由所述爆音开始位置和所述爆音结束位 置所限定的爆音位置区;或者,在时域内对开头设定时间段内的音频帧,按照时间顺序依次 将每个音频帧与预先设定的第二爆音阈值进行比较,根据比较结果得到爆音开始位置和爆 音结束位置,得到由所述爆音开始位置和所述爆音结束位置所限定的爆音位置区;和
[0014] 爆音消除模块,用于对所述爆音位置区的音频帧进行爆音消除。
[0015] 可见,本发明实施例中,通过在时域内对开头设定时间段内的音频帧进行检测,得 到爆音位置区,并对所述爆音位置区的音频帧进行爆音消除,从而可以消除音频的开头爆 音,提高了音频数据的播放质量,并增强了服务器系统的处理功能。
[0016] 进一步地,通过在时域内对开头设定时间段内的音频帧,按照时间顺序依次计算 相邻的两个音频帧的短时能量差,将计算得到的差值与预先设定的第一爆音阈值进行比 较,或直接将每个音频帧的短时能量与预先设定的第二爆音阈值进行比较,可以检测出短 时能量突变的位置,从而得到爆音开始位置和爆音结束位置。
[0017] 此外,进行爆音消除时,通过直接将所述爆音位置区的音频帧的幅值置零,可降低 计算的复杂度,采用较简单的方法实现爆音消除。
[0018] 或者,进一步地,为了获得较好的消音平滑度,也可先计算爆音位置区之前的M个 音频帧的幅值平均值和爆音位置区之后的M个音频帧的幅值平均值,在在计算得到的两个 幅值平均值都小于预先设定的消音阈值时,将所述爆音位置区的音频帧的幅值置零;而在 至少一个幅值平均值都大于预先设定的消音阈值时,则只是对所述爆音位置区的音频帧的 幅值进行削弱处理,从而可防止爆音位置幅值的突变。
【附图说明】
[0019] 为了更清楚的说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其它 的附图。其中,
[0020] 图1为本发明实施例中一种音频开头爆音的消除方法的示例性流程图;
[0021] 图2为本发明实施例中一种音频开头爆音的消除装置的示例性结构图;
[0022] 图3为图2所示装置中一种爆音消除模块的结构示意图;
[0023] 图4为图3所示爆音消除模块中一种第二消音处理子模块的结构示意图;
[0024] 图5为图3所示爆音消除模块中又一种第二消音处理子模块的结构示意图;
[0025] 图6为本发明实施例中一种后台服务器设备的结构示意图。
【具体实施方式】
[0026] 为使本发明的目的、技术方案和优点更加清楚,以下举实施例对本发明进一步详 细说明。
[0027] 图1为本发明实施例中一种音频开头爆音的消除方法的示例性流程图。如图1所 示,该方法可包括如下步骤:
[0028] 步骤101,对解码得到的音频数据,在时域内对开头设定时间段内的音频帧进行检 测,得到爆音位置区。
[0029] 本实施例中,音频数据可以是来自音频文件的音频数据,也可以是来自音视频文 件的音频数据。
[0030] 具体实现时,本步骤可有多种具体实现方法,下面列举其中两种:
[0031] 第一种:在时域内对开头设定时间段内的音频帧,按照时间顺序依次计算相邻的 两个音频帧的短时能量差,根据计算的短时能量差及预先设定的第一爆音阈值,得到爆音 开始位置和爆音结束位置。爆音位置区即为由所述爆音开始位置和所述爆音结束位置所限 定的区域。
[0032] 例如,可对前T秒内的N个音频帧通过时域短时能量差分方法,检测出短时能量突 变的位置,如下式(1)所示:
[0033] p = E [n] -E [n_l],I < η < N ; (I)
[0034] 其中,η为帧的位置,E[η]为第η帧的短时能量。爆音的开始时间和结束时间的位 置检测方法为:当P的值大于第一爆音阈值th的时候,则认为此帧是爆音的开始位置tb ; 当P的值小于_th的时候,则认为此帧是爆音的结束位置te。也就是说爆音位置区内的音 频帧满足 abs(p) = |E[n]-E[n-l]| >th。
[0035] 其中,T可以为10,也可以为8、9、11、12、13等音频数据开头的任一个合理时间段。
[0036] 第二种:在时域内对开头设定时间段内的音频帧,按照时间顺序依次将每个音频 帧与预先设定的第二爆音阈值进行比较,根据比较结果得到爆音开始位置和爆音结束位 置。爆音位置区即为由所述爆音开始位置和所述爆音结束位置所限定的区域。
[0037] 上述任一种方法,都可以检测出短时能量突变的位置,从而得到爆音开始位置和 爆音结束位置。
[0038] 步骤102,对所述爆音位置区的音频帧进行爆音消除。
[0039] 具体实现时,本步骤也可有多种具体实现方法,下面列举其中两种:
[0040] 第一种:将所述爆音位置区的音频帧的幅值置零。该方法操作简便,且可以实现音 频开头的爆音消除。
[0041] 例如,该爆音消除方法可如下式(2)所示:
[0043] 其中,X[η]为爆音消除前的音频帧幅值,y [η]为爆音消除后的音频帧幅值,tb为 爆音的开始位置,te为爆音的结束位置。
[0044] 第二种:计算爆音位置区之前的M个音频帧的幅值平均值xb和爆音位置区之后的 M个音频帧的幅值平均值xe,在计算得到的两个幅值平均值xb和xe都小于预先设定的消 音阈值时,将所述爆音位置区的音频帧的幅值置零;否则,对所述爆音位置区的音频帧的幅 值进行削弱处理。其中,M为大于1的正整数。例如,M可以为10,也可以为8、9、11、12等 其它值。
[0045] 例如,该爆音消除方法可如下式(3)所示:
[0046] CN 105118520 A 说明书 4/6 页
[0047] 其中,x[η]为爆音消除前的音频帧幅值,y [η]为爆音消除后的音频帧幅值,tb为 爆音的开始位置,te为爆音的结束位置,Z为消弱系数,xb为爆音位置区之前的M个音频帧 的幅值平均值,xe为爆音位置区之后的M个音频帧的幅值平均值。
[0048] 其中,消弱系数的计算也可有多种处理方式,下面列举其中两种:
[0049] 方式一:根据所述爆音位置区的音频帧的幅值最大值,及所述爆音位置区之前的 M个音频帧和爆音位置区之后的M个音频帧的幅值平均值,根据所述爆音位置区的音频帧 的幅值最大值及所述爆音位置区的音频帧的幅值平均值,计算得到第一消弱系数。
[0050] 例如,该消弱系数计算方式可如下式(4)所示:
[0052] 方式二:根据所述爆音位置区的音频帧的幅值最大值及所述爆音位置区的音频帧 的幅值平均值,计算得到第二消弱系数。
[0053] 例如,该消弱系数计算方式可如下式(5)所示:
[0055] 上述本实施例中的音频开头爆音的消除方法可应用于后台服务器中,下面再对本 发明实施例中的音频开头爆音的消除装置进行描述,该装置同样可应用于后台服务器中, 并且可以用于执行本发明对应的方法实施例。对于本发明装置实施例中未披露的细节,请 参照本发明方法实施例中的描述。
[0056] 图2为本发明实施例中一种音频开头爆音的消除装置的示例性结构图。如图2所 示,该装置可包括:爆音位置区检测模块200和爆音消除模块300。
[0057] 其中,爆音位置区检测模块200用于在时域内对开头设定时间段内的音频帧进行 检测,得到爆音位置区。
[0058] 爆音消除模块300用于对所述爆音位置区的音频帧进行爆音消除。
[0059] 在一个实施
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1