实时音频处理方法、系统、设备和介质技术方案

技术编号:28474106 阅读:60 留言:0更新日期:2021-05-15 21:42
本发明专利技术涉及音频处理技术领域,特别涉及实时音频处理方法、系统、设备和介质。方法包括:接收实时的音频数据,将音频数据存入缓存区,音频数据在缓存区中分为多个块存储,每个块包括一定数量的多个采样点;获取用户操作的位移数据;基于根据该位移数据计算的速度和加速度,读取并播放缓存区中对应位置的一个块。实现用户与实时音频的交互,包括支持游戏玩家与游戏内实时音频进行交互完成搓碟音效,还原机械式搓碟的效果,音效过渡细腻平滑,硬件性能占用小。占用小。占用小。

【技术实现步骤摘要】
实时音频处理方法、系统、设备和介质


[0001]本专利技术涉及音频处理
,特别涉及实时音频处理方法、系统、设备和介质。

技术介绍

[0002]大部分游戏的音频,都通过播放采样(即预先录制或制作好的音频文件)来实现。也有一部分会配合各种效果器,来对音频作实时的进一步处理。比如房间的混响、远处声音的低通滤波。然而它们更多的是声音跟随画面或场景被触发或发生变化,而都不涉及具体的玩家和声音的交互,包括搓碟效果。
[0003]对音频进行实时处理的现有技术大部分都是应用在音乐制作软件的领域上,而在游戏中实现对声音的实时处理,特别是搓碟效果,还没有好的方案。

技术实现思路

[0004]本专利技术的目的在于提供一种实时音频处理方法、系统、设备和介质,实现用户与实时音频的交互,包括支持游戏玩家与游戏内实时音频进行交互完成搓碟音效,还原机械式搓碟的效果,音效过渡细腻平滑。
[0005]本专利技术的实施方式公开了一种实时音频处理方法,应用于终端,方法包括:
[0006]步骤1,接收实时的音频数据,将音频数据存入缓存区,音频数据在缓存区中分为多个块存储,每个块包括一定数量的多个采样点;
[0007]步骤2,获取用户操作的位移数据;
[0008]步骤3,基于根据该位移数据计算的速度和加速度,读取并播放缓存区中对应位置的一个块,其中,按以下公式计算速度和加速度其中,x表示经过预处理的该位移数据,x
p
表示经过预处理的播放前一个块之前接收到的位移数据,s表示可调节系数,可调节系数用于调节对用户操作动作响应的敏感度,v
p
表示播放前一个块之前计算的速度,b表示块中采样点组的数量,其中,采样点组表示时间相同而声道不同的一组采样点;
[0009]可选地,步骤2还包括:
[0010]判断用户是否未进行操作或停止了操作;
[0011]如果是,按照正常速度播放实时的音频数据;
[0012]如果否,则进行步骤3。
[0013]可选地,基于根据位移数据计算的速度和加速度,读取并播放缓存区中对应位置的一个块还包括:
[0014]根据该速度和该加速度,确定要读取的块;
[0015]根据该速度和该加速度,对块中的采样点进行处理。
[0016]可选地,上述对块中的采样点进行的处理包括线性插值。
[0017]可选地,前述对位移数据的预处理包括:
[0018]将接收到的位移数据的数值进行缩放,使得所能接收到的位移数据的数值的范围为区间[0,缓存区中采样点组的数量]。
[0019]可选地,前述基于根据位移数据计算的速度和加速度,读取并播放缓存区中对应位置的一个块,还包括在播放该块之前在该块中加入噪声,该噪声的大小与上述速度成正比。
[0020]本专利技术的实施方式公开了一种实时音频处理系统,包括音频数据接收模块、位移数据获取模块和播放模块;
[0021]音频数据接收模块接收实时的音频数据,将音频数据存入缓存区,音频数据在缓存区中分为多个块存储,每个块包括一定数量的多个采样点;
[0022]位移数据获取模块获取用户操作的位移数据;
[0023]播放模块基于根据该位移数据计算的速度和加速度,读取并播放缓存区中对应位置的一个块,其中,按以下公式计算速度和加速度其中,x表示经过预处理的该位移数据,x
p
表示经过预处理的播放前一个块之前接收到的位移数据,s表示可调节系数,可调节系数用于调节对用户操作动作响应的敏感度,v
p
表示播放前一个块之前计算的速度,b表示块中采样点组的数量,其中,采样点组表示时间相同而声道不同的一组采样点;
[0024]本专利技术的实施方式公开了一种实时音频处理设备,设备包括存储有计算机可执行指令的存储器和处理器,处理器被配置为执行指令以实施实时音频处理方法。
[0025]本专利技术的实施方式公开了一种使用计算机程序编码的计算机存储介质,计算机程序包括指令,指令被一个以上的计算机执行以实施实时音频处理方法。
[0026]本专利技术实施方式与现有技术相比,主要区别及其效果在于:
[0027]在本专利技术中,接收实时的音频数据,将音频数据存入缓存区;由于不存在真实的唱片,播放过的音频数据也不会常驻内存。因此,设置缓存区,对过去的一小段声音(例如,大概1~4秒)进行缓存以备使用。
[0028]在本专利技术中,音频数据在缓存区中分为多个块存储,每个块包括一定数量的多个采样点;在处理音频数据时,可以每次先读取一个块的数据,整体上对这些数据进行预处理,然后再对其中的每个采样点进行处理,可以减小硬件性能要求、减少数据读取时间、提高运算性能。
[0029]在本专利技术中,步骤2,获取用户操作的位移数据;步骤3,基于根据该位移数据计算的速度和加速度,读取并播放缓存区中对应位置的一个块,其中,按以下公式计算速度的速度和加速度,读取并播放缓存区中对应位置的一个块,其中,按以下公式计算速度和加速度其中,x表示经过预处理的该位移数据,x
p
表示经过预处理的播放前一个块之前接收到的位移数据,s表示可调节系数,可调节系数用于调节对用户操作动作响应的敏感度,v
p
表示播放前一个块之前计算的速度,b表示块中采样点组的数量,其中,采样点组表示时间相同而声道不同的一组采样点;获取用户的操作信息,根据其操作速度、加速度等信息来播放存于缓存中的过去一段时间的音频数据,可以在实时音频上模拟搓碟,如果在处理每个采样点时,都实时获取到手指的位移信息虽然精确,但是这样做开销太大,而且一般的硬件也没有这么高的刷新率,以块为单位读取数据,每次读取前获取用户操作的位移数据,根据该位移数据计算速度,根据该速度播放该块数据,可以减少计算量、减小硬件性能要求、加快音频数据处理速率,而根据该位移数据计算加速度叠加与速度之上,根据计算的速度和加速度播放该块数据,可以进一步提高音频播放的平滑度。
[0030]本专利技术中,步骤2还包括:判断用户是否未进行操作或停止了操作;如果是,按照正常速度播放实时的音频数据;如果否,则进行步骤3;在用户未进行操作时可以正常播放实时音频,并且,如果用户操作之后,例如,搓碟时往回搓之后直接放手,如果让声音在放手的位置回复到正常的播放速度,那么接下来播放的音频和实时音频之间就会存在一定的时间差,也就是延迟了,所以在本专利技术中,假定用户放手时,就将其等价于瞬间把唱片快进拉到如果一直按正常速度播放的情况下当前应当播放的位置,然后再恢复正常播放,可以解决延迟的问题。
[0031]在本专利技术中,基于根据位移数据计算的速度和加速度,读取并播放缓存区中对应位置的一个块还包括:根据该速度和该加速度,确定要读取的块;根据该速度和该加速度,对块中的采样点进行处理。可以根据用户的操作对缓存区进行寻址,对相应位置的块中的采样点进行处理,以便输出到声卡等硬件之后可以根据用户操作的速度和加速度来播放音频,由于搓碟的本质是声音“高倍率快放和慢放交替进行”的结果本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实时音频处理方法,应用于终端,其特征在于,所述方法包括:步骤1,接收实时的音频数据,将所述音频数据存入缓存区,所述音频数据在所述缓存区中分为多个块存储,每个所述块包括一定数量的多个采样点;步骤2,获取用户操作的位移数据;步骤3,基于根据所述位移数据计算的速度和加速度,读取并播放所述缓存区中对应位置的一个所述块,其中,按以下公式计算所述速度和所述加速度其中,x表示经过预处理的所述位移数据,x
p
表示经过预处理的播放前一个所述块之前接收到的所述位移数据,s表示可调节系数,所述可调节系数用于调节对用户操作动作响应的敏感度,v
p
表示播放前一个所述块之前计算的所述速度,b表示所述块中采样点组的数量,其中,所述采样点组表示时间相同而声道不同的一组采样点。2.根据权利要求1所述的方法,其特征在于,步骤2还包括:判断用户是否未进行操作或停止了操作;如果是,按照正常速度播放实时的所述音频数据;如果否,则进行步骤3。3.根据权利要求2所述的方法,其特征在于,所述基于根据所述位移数据计算的速度和加速度,读取并播放所述缓存区中对应位置的一个所述块还包括:根据所述速度和加速度,确定要读取的所述块;根据所述速度和加速度,对所述块中的所述采样点进行处理。4.根据权利要求3所述的方法,其特征在于,对所述块中的所述采样点进行的所述处理包括线性插值。5.根据权利要求1所述的方法,其特征在于,对所述位移数据的所述预处理包括:将接收到的所述位移数据的数值进行缩放,使得所能接收到的所述位移数据的数值的范围为区间[0,所述缓存区中采样点组的数量]。6.根据权利要求1

【专利技术属性】
技术研发人员:李冠宇薛乔高心悦
申请(专利权)人:上海莉莉丝科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1