当前位置: 首页 > 专利查询>南京大学专利>正文

一种多普勒音效的实时实现方法技术

技术编号:18054305 阅读:265 留言:0更新日期:2018-05-26 10:59
本发明专利技术公开了一种多普勒音效的实时实现方法,该方法从声音的传播机理出发,计算虚拟声源到听音者虚拟位置的传播时延,并根据该时延将信号实时通过队列缓存和时变的采样滤波器,从而实现实时的多普勒音效,其中,时变滤波器来自于预设的时延滤波器组。本发明专利技术所公开的一种多普勒音效的实时实现方法能够实时的模拟或重现任意时刻任意位移变化的多普勒音效,不会发生数据的缺失,因为整个过程是线性处理,所以也不会引入信号的畸变和失真,具有较大的灵活性,运算复杂度低,非常适用于3D音效仿真和声场还原的应用场合,具有较大的应用前景。

【技术实现步骤摘要】
一种多普勒音效的实时实现方法
本专利技术涉及电声
,具体涉及一种多普勒音效的实时实现方法。
技术介绍
多普勒效应是一种常见的声学现象,对听音者而言,声信号的频率会随着虚拟声源相对运动速度发生改变。具体来说,虚拟声源以一定速度靠近听音者,被听音者感知到的声信号的频率会比原声信号的频率有所提高,而虚拟声源以一定速度远离听音者,被听音者感知到的声信号的频率会比原声信号的频率有所降低。在3D音效中,为了更加真实的重现或者重构自然界中的声音,多普勒音效的实时实现成为3D音效技术的关键技术。传统的多普勒音效的实时实现往往通过变调或频移处理,其中,直接改变采样率的变调处理会带来音频数据的缺失,破坏原始数据的连续性,而数字频移处理灵活性较差,会带来较大的额外运算量,并且会引入信号畸变和失真。
技术实现思路
为了解决音效中的多普勒音效重现和重构的问题,本专利技术提出一种多普勒音效的实时实现方法。本专利技术的技术方案如下:初始化3D音效中声速、听音者头部的虚拟位置、虚拟声源的虚拟位置和虚拟声源的声信号;设定听音者的虚拟位置随时间变化的轨迹信息,设定虚拟声源的位置随时间变化的轨迹信息;在某时间点,计算虚拟声源到听音者头部的虚拟位置的距离,该距离除以声速得到直达声传输时延,该直达声传输时延除以采样周期得到直达声传输时延采样周期数;该直达声传输时延采样周期数由整数和非负纯小数(即大于等于0的纯小数)组成,其中:1)整数部分,对应信号以采样周期为最小单位的时延,通过数据缓存队列实现;2)非负纯小数部分,对应信号在采样周期内的时延,通过时延滤波器实现;根据上述直达声传输时延采样周期数的组合,选择相应的数据缓存队列和时延滤波器实现时变滤波器;时延滤波器来自于预设的时延滤波器组,时延滤波器组中的每一个滤波器对应一个非负纯小数时延采样周期数的处理需求。以数据帧或者以单个采样点为最小处理单元,将当前声信号通过已选择的时变滤波器得到该时间点的输出信号;将处理得到的各个时间点的信号按时间顺序连接起来,然后加上因声传播所带来的增益,获得具有多普勒音效的声信号。一种多普勒音效的实时实现方法,包括:根据虚拟声源位置到听音者头部中心的虚拟位置的物理距离d,计算直达声的传输时延τ,即其中,c是声速。则,从虚拟声源x(n)到达人头部的声信号y(n)为y(n)=A·x(n)*sinc(n·Ts-τ),(2)其中,A是因声学传播所产生的声压级衰减,*是时域卷积,Ts是信号的采样周期,sinc(n·Ts-τ)是采样函数sinc(t)经过时延τ后得到的采样时延表示,采样函数sinc(t)的表达式是进一步的,传输时延τ可分解为τ=(p+q)·Ts,(4)式中,p是整数,而q是非负纯小数,即满足0≤q<1.(5)进一步的,将式(4)带入到式(2),可得y(n)=A·x(n-p)*sinc((n-q)·Ts).(6)因此,对任意的时延τ,都可以通过式(6)求得输出信号y(n)。由于q是连续取值,所以实时计算式(6),运算量较大,将q的取值进行等间距离散化为即式中,K是正整数,表示q离散化的精度,k是整数且满足0≤k<K。K取值的大小决定了虚拟声源位移的分辨率,也决定了音频转换的连续性,即K越大,时延分辨率越高,音频转换的连续性越好,输出的音质和多普勒音效的感知效果越好。进一步的,令则hk(n)是对应不同的离散化的q的滤波器系数,将式(8)带入式(6),则有y(n)≈A·x(n-p)*hk(n).(9)式中,任一k的取值都对应一个滤波器hk(n),时延滤波器组中的每一个滤波器对应一个非负纯小数时延采样周期数的处理需求,因此,总共有K个滤波器hk(n)。这K个滤波器hk(n)作为滤波器组进行保存,称为时延滤波器组。在实时计算过程中,系统根据不同的离散化后的q在时延滤波器组中选择相应的滤波器,而避免了计算式(6)中滤波器系数所带来的额外运算量,满足实时处理的需求。进一步的,根据式(9),当虚拟声源靠近,τ逐渐变小,即p逐渐变小,且q采样周期变化,与x(n)相比较,y(n)的计算过程会跳过部分x(n)的采样点,从而使得声信号的频率升高;根据式(9),当虚拟声源远离,τ逐渐变大,即p逐渐变大,且q采样周期变化,与x(n)相比较,y(n)的计算过程会重复部分x(n)的采样点,从而使得声信号的频率降低。优选的,根据虚拟声源到听音者双耳虚拟位置的物理距离di,计算双耳对应直达声的传递时延τi,其中,i=0,1,分别表示左右耳,即基于式(10),对虚拟声源到达左右耳的虚拟位置分别进行类似式(4)和式(9)处理,优化处理效果。本专利技术的有益效果本专利技术公开了一种多普勒音效的实时实现方法,该方法从声音的传播机理出发,计算虚拟声源到听音者虚拟位置的传播时延,并根据该时延将信号实时通过队列缓存和时变的采样滤波器,从而实现实时的多普勒音效,其中,时变滤波器来自于预设的时延滤波器组。本专利技术所公开的一种多普勒音效的实时实现方法能够实时的模拟或重现任意时刻任意位移变化的多普勒音效,不会发生数据的缺失,因为整个过程是线性处理,所以也不会引入信号的畸变和失真,具有较大的灵活性,运算复杂度低,非常适用于3D音效仿真和声场还原的应用场合,具有较大的应用前景。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一种多普勒音效的实时实现方法的流程图;图2是本专利技术一种多普勒音效的实时实现方法的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,其为本专利技术一种多普勒音效的实时实现方法的流程图。在步骤[101]中,初始化时延滤波器组(8),信号的采样率设定为48kHz,K的长度设置为100,每个滤波器的长度设置为100,则时延滤波器组(8)的总数据量为10000个数据存储单位。在步骤[102]中,初始化声速c、听音者运动轨迹(1)、虚拟声源运动轨迹(2)和原始音源(9)。在步骤[103]中,计算当前时间点数据(采样数据点或者采样数据帧)对应的虚拟声源位置与听音者虚拟位置的距离(4),进而根据声速和信号采样周期,计算因该距离产生的直达声传播时延以及该时延所对应的采样周期数(5)。在步骤[104]中,将时延对应的采样周期数分成整数部分p(6)和纯小数部分q(7)两个部分。在步骤[105]中,整数部分时延通过数据队列缓存实现,即y1(n)=x(n-p)。在步骤[106]中,根据纯小数部分q的取值,在时延滤波器组(8)中选择得到合适的滤波器系数hk(n)(12),将其与缓存的输出信号卷积,即y2(n)=hk(n)·y1(n)。在步骤[107]中,根据听音者的位置和虚拟声源位置的距离,计算增益A,并通过增益计算(13)作用于信号,即y(n)=A·y2(n)。在步骤[108]中,将当前数据处理结果y(n本文档来自技高网...
一种多普勒音效的实时实现方法

【技术保护点】
一种多普勒音效的实时实现方法,其特征在于:在某时间点,计算虚拟声源到听音者头部的虚拟位置的距离(4),该距离除以声速该距离得到直达声传输时延,该直达声传输时延再除以采样周期获得直达声传输时延采样周期数(5);该直达声传输时延采样周期数由整数(6)和非负纯小数(7)组成;根据直达声传输时延采样周期数的组合,将声源信号通过数据缓存队列(11)和选择相应的时延滤波器(12)实现时变滤波器,然后通过因声传播所带来的增益处理,从而实现多普勒音效的实时实现的目的。

【技术特征摘要】
1.一种多普勒音效的实时实现方法,其特征在于:在某时间点,计算虚拟声源到听音者头部的虚拟位置的距离(4),该距离除以声速该距离得到直达声传输时延,该直达声传输时延再除以采样周期获得直达声传输时延采样周期数(5);该直达声传输时延采样周期数由整数(6)和非负纯小数(7)组成;根据直达声传输时延采样周期数的组合,将声源信号通过数据缓存队列(11)和选择相应的时延滤波器(12)实现时变滤波器,然后通过因声传播所带来的增益处理,从而实现多普勒音效的实时实现的目的。2.如权利要求1所述...

【专利技术属性】
技术研发人员:陈锴卢晶邱小军
申请(专利权)人:南京大学
类型:发明
国别省市:江苏,32

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

1