数字音频信号的连续可变时间标度改变技术的制作方法

文档序号:2823207阅读:276来源:国知局
专利名称:数字音频信号的连续可变时间标度改变技术的制作方法
技术领域
本发明是关于数字音频信号处理。更特别地,它关于使用经改进同步化重叠及增加(SOLA)算法(synchronized overlap-and-add algorithm)来不改变音调地改进音频信号的输出率的方法。
背景技术
多种应用需要改进音频信号的播放率。落于时间标度改变(TSM)的范围内的技术包括压缩(即,加速)和解压(即,减缓)两者。音频压缩应用包括加速无线电脱口秀来允许较多广告,允许使用者或碟片操作员来针对舞曲而选择节拍,加速口述材料的播放率,加速音频信息的播放率,且把音频和视频播放率同步化。不管输入信号(语言、音乐、或经组合语言和音乐)的类型,TSM的目标是保留输入信号的音调,同时改变其节拍。明显地,增加或减少播放率需要改变音调。
同步化重叠及增加技术于1985年由S.Roucos和A.M.Wilgus在IEEE国际论集ASSP的“针对语言的高品质时间标度改变”第493-496页中被介绍,且仍是许多新近发展技术的基础。该方法被示出在图1A中。通过数字采样模拟音频信号来获得一系列时域样本x(t)而获得数字输入信号10。输入信号10被分成重叠的窗口、块、或帧12,各包括N个样本且彼此以Sa个样本(“a”是用于分析)来偏离。经缩放输出14包括相同重叠窗口的样本y(t),且彼此以不同数目的样本Ss(“s”是用于合成化)来偏移。通过以与在输入10中不同的时间滞后(lag)来对输入窗口12进行连续地重叠来产生输出14。时间标度比率α被界定为Sa/Ss;针对压缩α>1,且针对解压α<1。说明于图1B中如线性交叉隐现的加权函数被用来组合经重叠窗口。为了把输入块16与输出块18重叠,在输入块16的经重叠区中的样本由线性增加的函数来缩放,而输出块18中的样本由线性减少的函数来缩放,以产生新的输出信号20。请注意到SOLA方法以不改变个别窗口的速率地来改变信号的整体速率,由此保留音调。
为了把所产生的信号14的品质最大化,帧不以预定分开距离重叠。实际偏移量典型地在给定范围内被选择,来把两经重叠帧间的相似度最大化,以确定最优声音品质。对于在预定搜寻范围内的各潜在重叠偏移量,相似度被计算,且所选择偏移量是有相似度的最高数值。例如,可通过相乘在各偏移量的x(t)和y(t)来计算两帧间的相关函数。此技术产生高品质的信号(即,对听者听起来自然)、及高可理解性(即,可由听者容易地了解)。现有技术中已知多种品质和可理解性测量,如总谐音扭曲(THD)。
基本SOLA架构允许在窗口大小选择、相似度、计算方法、和针对重叠偏移量的搜寻范围上的多种改进。授予Vogten等人的美国专利第5,479,564号公开根据局部音调周期来选择输入信号的窗口的方法。已知为WSOLA-SD的依赖讲话者方法在授予Satyamurti等人的美国专利第5,828,995号中被公开。WSLOA-SD根据音调周期来选择输入信号的帧大小。这些和其他依赖音调方法的缺点是它们只能使用于语言信号,而不能用于音乐。再者,它们需要判定信号是语音或非语音的额外步骤,其可随信号的不同部分而改变,且决定语音信号的音调。语言信号的音调经常不恒定,以多个基础音调周期来改变。对于所产生音调的估计需要人工的平滑来在该多个周期间连续地移动,使人工信号加入最后的输出信号。
典型上,根据所计算相似度来选择在现有输出帧内的、对于新的输入帧进行重叠的位置。然而,一些SOLA方法使用相似度来选择输入块的重叠位置。授予Hejna,Jr.等人的美国专利第5,175,769号公开用来选择在预定范围内的输入块的位置的方法。Hejna,Jr.的方法需要几个与原来SOLA方法不同的计算步骤。然而,它引入完全跳过输入信号的部分的可能性,特别是在高压缩比率(即,α≥2)。描述在都授予Suzuki等人的美国专利第5,341,432号和第5,630,013号中的语言速率改变方法判定两连续输入帧的最优重叠,然后被重叠来产生输出信号。在输入帧被连续重叠到输出帧上的传统SOLA方法中,各输出帧可为所有前面经重叠帧的总和。然而,用Suzuki等人的方法,输入帧只彼此重叠,防碍多个帧的重叠。在有些情形中,此受限的重叠可能减少所产生信号的品质。因此选择在输出信号内的偏移量是最可靠方法,特别是高压缩比率。
方法的计算成本随着输入采样速率和压缩比率而改变。高采样速率因其产生高品质的输出信号而被期望。另外,高压缩比率需要输入样本的高处理率。例如,CD品质音频对应于44.1kHz采样速率;在α=4的压缩比率,每秒必须处理大约176,000个输入样本来产生CD品质输出。为了以该输入采样速率和高压缩比率来处理信号,方法的计算效率很重要。计算在重叠输入和输出样本块间的相似度是算法则的最需要的计算部分。通过针对两块的每一可能偏移量来相乘输入和输出块的对应样本,来计算为潜在相似度的相关函数。对于含有N个样本的输入帧,需要N2个乘法运算。对于在1000等级上的N的高输入采样速率,针对各输入帧来实施N2个运算是行不通的。
结果,SOLA上的趋势是简化计算来缩减所实施运算的次数。一个解决方法是使用绝对误差计量,其只需要减法运算,而非需要乘法运算的相关函数。授予Bialick的美国专利第4,864,620号公开使用平均幅度差值函数(AMDF)来选择最优重叠的方法。AMDF把针对各可能偏移量的输入和输出样本间的差值的绝对值平均,且选择有最低数据值的偏移量。授予Lin等人的美国专利第5,832,442号公开使用在重叠中的相等平均绝对误差的方法。当绝对误差方法明显需要较少计算时,它们不如在定位最优偏移量中所接受的相关函数那样可靠和易于接受。正确度的程度因计算效率而牺牲。
现有SOLA方法的绝大多数通过选择用来判定最优重叠偏移量的受限的搜寻范围来缩减复杂度。例如,授予Satyamurti的美国专利第5,806,023号的公开方法,其中最优重叠被选择于预定搜寻范围内。上述的Bialick专利使用输入信号音调周期来判定搜寻范围。在可从WWW.cs.ust.hk/~rren/sound-tech/RSM_Paper_Long.htm获得的“用于音波信号的时间标度改变的边缘检测方法”中,介绍一种经改进SOLA技术。仍然,Ren的方法使用小型搜寻窗口(在此情形中小于输入帧的幅度的等级),来找出最优偏移量。它也使用边缘检测且因此特定于信号的类型,针对不同类型信号来产生不同重叠。
限定最优重叠偏移量的搜寻范围的现有技术方法在图2的例子中被说明。在输出块24y(t)内与输入块22x(t)重叠的最优位置被找出。输出块y(t)具有S0+H+L个样本的长度,且输入块x(t)具有S0个样本的长度。在此情形中,计算相似度的搜寻范围是H+L个样本;即,潜在滞后值的范围是等于被比较的两样本块间的长度上的差值。重叠滞后的三个可能值被说明-L、O、和+H。在此方法中,相似度26在其计算的滞后值的范围内具有矩形包络形状。此意味在平均跨越所有可能信号时,相似度的最大值的位置在被估计的滞后值的范围内具有相等或平坦的机率分布。此特性不依赖所使用相似度的类型,而是针对所有潜在滞后值而比较来自两段落的相等数目样本的结果。
通过限制搜寻范围,所有现有技术在快速改变或复杂混合信号期间容易不正确地预测重叠偏移量。另外,通过预定相对窄的搜寻范围,这些方法本质上把压缩比率固定于很接近已知值。因此,它们无法处理以高改变率来采样的输入信号。一般上,它们最优用于相当长帧的小重叠,其不能产生高(即,α≥2)压缩比率。
因此,所需要的是计算上行得通、高正确度、且适用于广范围音频信号的一种经改进时间标度改变方法。

发明内容
据此,本发明的主要目的是提供用来不改变其音调地改变音频信号的播放率的时间标度改变方法。
本发明的进一步目的是提供可处理语言、音乐、或经组合语言和音乐信号的时间标度改变方法。
本发明的另外目的是提供从以可变化、非实时速率的输入样本来产生恒定、实时速率输出的时间标度改变方法。
本发明的另一目的是提供可提供由所需输出率和可变化输入率来决定的可改变压缩比率的时间标度改变方法。
本发明的再一目的是提供一种时间标度改变方法,其在维持计算效率时,不只在特定窄小搜寻范围内,而可在输出帧的整个范围来重叠输入和输出帧。连续帧甚至可插于前面帧后,允许于高压缩比率的高品质输出。
本发明的又一目的是提供使用相关函数来判定经重叠的输入和输出帧的最优偏移量的时间标度改变方法。相关函数是熟知的最大相似度估算器,不像绝对误差计量方法。
最后,本发明的另一目的是提供无需判定音调或其他信号特征的时间标度改变方法。
这些目的和优点可由一种方法来达到,其是针对包括输入样本的数字音频输入信号的时间标度改变,来形成包括输出样本的数字音频输出信号。该方法包括下列步骤选择N/2个输入样本的输入块;选择N/2个输出样本的输出块;判定用来把输入块的起头与输出块的起头重叠的最优偏移量T;及重叠该块,使输入块起头与输出块起头偏移T个样本。T具有-N/2至N/2的可能范围,且是通过采用N/2个输入样本和N/2个输出样本的离散频率变换计算,然后计算其相关函数。相关函数的离散频率反变换的最大值发生于偏移量t=T的数值。频率变换优选是离散傅立叶变换,但它可为诸如离散余弦变换、离散正弦变换、离散哈特雷(Hartley)变换、或根据维夫雷特式(Wavelet)函数的离散变换的任何其他频率变换。优选地,在实施频率变换前N/2个零被附于输入样本和附于输出样本来防止人工卷绕(wrap-around artifacts)。优选地,相关函数是Z(k)=X*(k)·Y(k),其中k=0,…,N/2-1,其中X*(k)是经频率变换输入样本的共轭复数,Y(k)是经频率变换输出样本,且Z(k)是其复数乘积。优选地,在实施反转频率变换前把Z(k)标称化(normalize)。
输出信号优选为恒定、实时速率的输出,其决定输出块的起头的选择。输入信号可以可改变速率来获得。优选地,独立于输入信号的音调周期来选择输入块大小和位置。通过施用优选为线性函数的加权函数来重叠输入块和输出块。
本发明也提供一种方法,是针对如立体信号的多声道数字音频输入信号的时间标度改变,来形成多声道数字音频输出信号。该方法包括下列步骤获得个别输入声道;独立地改进各输入声道;且组合该输出声道来形成该多声道数字音频输出信号。可由把多声道输入信号分离成个别输入声道、或由从单声道输入信号来产生多个输入声道,而获得个别声道。根据针对数字输入信号的时间标度改变的上述方法来独立地改进各输入声道。在不同音频声道的经重叠块间没有相关;输入声道的对应样本不再对应于输出信号。然而,听者可将感知到不同声道整合来适应对应性的丧失。
也提供的是一种数字信号处理器,其包括配置来实施用来实施上述的时间标度改变方法的方法步骤的处理单元。


图1A说明现有技术的同步化重叠及增加(SOLA)方法;图1B说明用来把两样本块重叠的现有技术的线性交叉隐现;图2说明通过现有技术相关性来找出用来把输出块与输入块合并的最优重叠滞后;
图3是用来实施本发明的方法的系统的构造图;图4说明本发明的输入缓冲器、缩放缓冲器、和输出缓冲器;图5是本发明的时间标度改变方法的方框图;图6A-6D说明图5的时间标度改变方法的迭代;图7A-7C说明图5的时间标度改变方法的后续迭代;图8是用来计算最优重叠滞后T的本发明的方法的方框图;图9是用于多声道音频信号的时间标度改变的本发明的方法的方框图;图10是通过产生多个声道而对于单声道音频信号的时间标度改变的本发明的方法的方框图;及图11说明用来从单声道产生多个声道的方法。
具体实施例方式
虽然下面详细描述包括用来说明的许多特点,任何本领域的技术人员将明确针对下面描述的许多变化和改变是在发明的范围内。据此,发明的下列优选实施例被设定不损失权利要求的一般性、也不对权利要求加以限制。
本发明使用经改进的同步化重叠及增加(SOLA)技术来提供针对数字音频信号的时间标度改变的方法。此方法在计算上是有效的;可适用于包括语言、音乐、和经组合语言与音乐的所有类型的音频信号;且能够在高压缩比率(现有技术方法有问题的情况下)来处理复杂或快速改变信号。此方法特别适于处理具有可变输入率的输入信号来产生有恒定速率的输出信号,因此提供连续改变的压缩比率α。
图3中说明用来实施本发明的系统30。由数字信号处理器34来实施本发明的方法。数字信号处理器34是技术中已知的传统数字信号处理器,被编程来实施本发明的方法。它包括处理单元、随即存储器(RAM)、和传输数据的总线接口。数字信号处理器34接收来自模数变换器(ADC)32的数字音频信号,其在离散的时刻采样模拟音频信号,以产生数字音频信号。本发明能够用宽广范围的采样速率来处理信号。例如,本发明处理的典型信号包括有8kHz采样速率的电话信号、及有44.1kHz采样速率的光碟(CD)品质信号。请注意到较高采样速率产生较高品质音频信号。样本被ADC 32以特定且不改变的采样速率来采用。该速率可由输入到ADC 32且效果上恒定的壁钟(wall clock)来设定。ADC 32典型上需要低抖动(即,恒定速率)时钟输入。在以变化的或未知率或不实时的速率(即,从原来记录速度而改变的)输入数字信号处理器34前,数字音频信号可储存在记忆体中,被记录、传输、或在数据处理器33中被操作。输入率参照到达数字信号处理器34每秒采样的次数,而与固定的采样速率无关。数字信号处理器34实施输入信号的时间标度压缩,来产生预定、优选恒定且实时速率的数字输出信号。在时间标度压缩中,给定量的输入数据以较小时间周期来输出。例如,在α=2的压缩比率,花4分钟来播放的输入信号被复制于2分钟中。请注意到在α=4,产生CD品质的经压缩音频信号(即,44.1kHz采样速率)需要每秒来处理176,400个输入样本。此高处理率在现有技术方法中不可行时可用使用本发明的100MIPS(每秒百万指令)信号处理器来轻易达成。所产生数字输出信号然后送到数模变换器(DAC)36,来以和原来信号相同的音调产生模拟信号,但以较短时间期间来再现。DAC36优选也需要低抖动时钟输入且因此输出恒定速率的信号。
图4说明数字信号处理器34的三个环形缓冲器,其储存输入、输出、和经缩放的音频信号。缓冲器被说明为矩形,但意图代表环形缓冲器。即,矩形的两端卷绕来彼此连结。沿着缓冲器的水平距离代表时间。在所有缓冲器中的距离都用取用有样本的离散时刻来测量,等于采样的次数。所有三个缓冲器在长度上可改变。因为缓冲器是环形,故指针被用来指示输入、输出、和处理点。在所有三个缓冲器中,指针在样本进入、输出、和被处理时移到右侧。缓冲器指针的移动到右侧(即,在顺时方向上)参照为推前指针(advancethe pointers)。
在考虑方法的整个细节前,检查缓冲器本身的内容是有用的。输入缓冲器40具有两指针,输入指针42和程序指针44。例如,新的输入音频样本从ADC 32被接收,且储存在输入缓冲器40中。样本被插于输入指针42后;即,输入指针42在加上新样本时被推前。新输入样本通过中断服务程序来加到输入缓冲器40。程序指针44和输入指针42彼此独立地移动,在两指针间的距离46上引起改变。当新样本加到输入缓冲器40时,距离46增加。当样本被处理时,距离46减少。
缩放缓冲器50储存经组合来形成经缩放输出信号的样本。缩放缓冲器头指针52找出与输入样本重叠的输出样本。如下进一步解说,针对重叠滞后的搜寻范围被设置在以缩放缓冲器头指针52为中心处。尾指针54指出要从缩放缓冲器50去除的样本。当尾指针54推前超越信号时,它们自缩放缓冲器50退出。尾指针54和头指针52以固定距离56分开;当缩放缓冲器尾指针54推前时,缩放缓冲器头指针52以等量来推前。
自缩放缓冲器50去除的样本被拷贝到输出缓冲器60的输出缓冲器头指针62处,其前进来保持位于所有新拷贝样本的右侧。在输出缓冲器尾指针64左侧的样本由中断服务程序来输出例如到DAC36。输出缓冲器尾指针64的移动由所选择输出率来决定。当输出缓冲器尾指针64沿信号连续前进时,它们自输出缓冲器60输出。相对地,头指针62以等于从头指针62上次推前而由尾指针64推前的样本数目的量来周期地前进。结果,紧接于头指针62前进后,尾指针64和头指针62以预定距离66来分开。然而,在头指针62前进中,距离66减少。输出缓冲器尾指针64的移动因此控制输出缓冲器头指针62、缩放尾指针54、和缩放缓冲器头指针52的周期性推进。
在替换实施例中,从缩放缓冲器50直接去除输出样本。在此情形中,距离56不固定,且尾指针54继续地前进。头指针52只周期地、以等于自从头指针52上次推前而由尾指针54推进的样本数目的距离推进。此替换实施例在信号无需进一步处理时优选。在上述情形中,其中所有三个缓冲器都被使用,可在实施时间标度改变后在缩放缓冲器样本上实施进一步处理。已进一步处理的样本在输出前被拷贝到输出缓冲器60中。
本发明的方法的目的是压缩在输入缓冲器40中的样本来产生输出缓冲器60的经压缩信号。通过于导致最高可能信号品质、同时限制所期望输出率的位置来把输入样本与输出样本重叠而实施压缩。
图5是针对数字音频信号的时间压缩的本发明的整体方法70的方框图。方法70将以可变化的和非实时的速率输入的数字音频信号72变换成为恒定、实时速率的数字输出信号94。图6A-6D说明相关缓冲器位置和对应于方法70的改变。图6A-6D的缓冲器显示有长度N/2个样本的帧或块。当然,该区分是任意的,且不对应于信号的音调周期或任何特性。
通过同时考虑图5和6A-6D可最优了解此方法。在第一步骤74中,输入样本被保存到输入缓冲器100中的其输入指针102处,其然后被推前。例如,包括N/2个样本的块104已最近保存到输入缓冲器100中。其次,在步骤75,程序指针103前面的N个样本从输入缓冲器100拷贝到缩放缓冲器108的缩放缓冲器头指针112处,而不推进程序指针103。需要这些步骤来把缓冲器和方法初始化;图6A说明在业已发生处理迭代后的缓冲器。在步骤76,方法等待输入指针102指向程序指针103前面的至少3N/2个样本处。在图6A中,输入指针102是5N/2个样本超前程序指针103。当此情况被满足时,在步骤78,超前程序指针103、被标示106的N/2个样本被拷贝到x(t)缓冲器中。同样地,在步骤80,超前缩放缓冲器108的头指针112的N/2个样本(标示110)被拷贝到y(t)缓冲器中。在图6B中说明x(t)和y(t)。使用如详述于下的如基于相关函数的离散傅立叶变换一样的基于相关函数的离散频率变换,在步骤82来找出在x(t)样本106的起头和y(t)样本110的起头间的最优重叠滞后T。T具有-N/2到+N/2-1的可能范围;图6B中说明三个可能滞后。在T=-N/2的滞后,样本106被重叠在样本110之后。在T=0的滞后,样本106直接重叠在样本110上面。在+N/2-1的滞后,样本106被重叠超前样本110。请注意到滞后T的所有中间整数值都可能。
如图6C中显示的,针对此例的最优重叠是T=0,由标示113的大箭头指出的,用从缩放缓冲器头指针112的位置测量的T。即,从缩放缓冲器头指针112的位置开始,样本106直接重叠在样本110上面。在步骤84中使用线性交叉隐现(linear cross fade)把两样本块106和110合并来获得被求和的经加权样本114和116。紧随经合并样本之后,在步骤86,N个额外输入缓冲器样本118被拷贝到经改进的缩放缓冲器109。当这些额外样本118被拷贝时,原来在缩放缓冲器中的样本被覆盖。结果的缩放缓冲器124被显示在图6D中。
缩放缓冲器尾指针120、缩放缓冲器头指针112、和输出缓冲器头指针129(图6D)被推进,且在缩放缓冲器尾指针120之后的样本在步骤88被拷贝到输出缓冲器。输入缓冲器程序指针103在步骤90被推进N/2个样本,且方法回到步骤76。在连续发生而不只是在处理迭代的末端的步骤92,在输出缓冲器尾指针127处的样本被输出,并推进输出缓冲器尾指针127,来以恒定实时速率产生数字音频信号94。此推进决定输出缓冲器头指针129、缩放缓冲器尾指针120、和缩放缓冲器头指针112在步骤88的推进量。三个指针都以输出缓冲器尾指针127从处理迭代开始已推进的量来推进。由此,用于控制输出缓冲器尾指针127的推进的所选择的输出率通过缩放缓冲器头指针112的推进,针对后续迭代有效地决定样本y(t)的起头和缩放缓冲器中的搜寻范围的位置。结果的输入缓冲器122、缩放缓冲器124、和输出缓冲器126被说明在图6D中。请注意到针对此特定处理迭代,输出信号尚未压缩。
请再参考图6B,注意到所使用相关函数的特定特性导致针对在N个不同偏移量或滞后值T的范围中,对于在x(t)和y(t)间的相似度的评估。从这些N个潜在值来选出最优偏移量。即,可能滞后的范围是等于两输入块106和110的长度的总和。请注意到这与具有等于两输入块的长度间的差值的偏移搜寻范围的现有技术方法不同。
从本方法中使用的相关函数所得的额外特性是在潜在滞后值的范围中的相似度的三角形包络130。仍然,这与对于相似度有矩形形状的现有技术方法有直接对照。在本发明中,当在所有可能信号范围来平均时,相似度的最大值的位置具有中央最大值及在滞后值范围的任一端下降到零的尾缘的概率分布。此三角形状有重要优点,特别是在较高时间压缩比率。作为此形状的结果,输入帧的连续迭代可具有彼此重叠的大偏移量,且仍具有不同的中央最大值。在有矩形重叠的现有技术方法中,连续迭代在维持不同中心时无法具有这样的大且高重叠的偏移量。结果,现有技术方法无法如在较低比率一样在高压缩比率来良好实施。
本发明的重叠连续迭代的此能力被说明在图7A-7C中,其显示在图6D的重叠后实施的后续迭代。跟随程序指针103的N/2个样本(标示134)被拷贝到x(t)缓冲器。跟随缩放缓冲器头指针112的N/2个样本(标示136)被拷贝到y(t)缓冲器。从由三角形132说明的滞后值的潜在范围,最优值被找到,由图7A中的箭头138的位置说明的。箭头138显示缩放缓冲器头指针112加上偏移量T的位置。跟随箭头138的N/2个缩放缓冲器样本被加权来形成如图7A中显示地与经加权的N/2个输入样本140合并的样本139。直接跟随经合并样本,额外N个样本142被拷贝到缩放缓冲器。
在缩放缓冲器尾120和头112指针和程序指针103推进后,结果的输入缓冲器150和缩放缓冲器152被说明在图7B中。其次决定样本154和156的最优重叠滞后。在此情形中,如图7C中说明的,T具有负值使得输入样本154被合并于缩放缓冲器头指针112后面。在箭头158,头指针加上偏移量T,使用线性交叉隐现来把经加权N/2个输入样本160与经加权缩放缓冲器样本162重叠。然后将额外N个样本164拷贝到缩放缓冲器中。把图7C与图6A比较显现缓冲器100中的原来输入信号的高度压缩,来形成结果将最终被输出该信号的最后缩放缓冲器。图7C中说明的方法的迭代也显示后续迭代如何与前面偏移滞后来重叠。图7C也说明在缩放缓冲器头指针和缩放缓冲器尾指针间的距离必须至少为N/2,使得从缩放缓冲器去除的样本可完全被处理。
本发明因用来计算输入样本x(t)和输出样本y(t)间的最优重叠滞后或偏移量T的特定方法而享用许多优点。图8是方法170的方框图。在本发明中,通过计算在两样本块间在N个可能偏移值的相关函数、且然后判定产生最高相关函数的T值来完成T的计算。不像具有较小可能范围的现有技术方法,可能滞后值的范围是等于两样本块的长度的总和。
方法170以步骤190和192开始。在步骤190,N/2个样本自直接跟随程序指针的输入缓冲器被拷贝到x(t),其中t=0,…,N/2-1。在步骤192,N/2个样本自直接跟随缩放缓冲器头指针的缩放缓冲器被拷贝到y(t),其中t=0,…,N/2-1。在步骤194和196,N/2个零样本被附于x(t)和y(t)两样本块来产生包括N个样本的样本块。在步骤198和200,在N个样本块的x(t)和y(t)上实施如傅立叶变换的离散频率变换,来获得N/2个频域复数对组X(k)和Y(k),其中t=0,…,N/2-1。在步骤202获得X(k)的共轭复数X*(k),且在步骤204,实施X*(k)和Y(k)间的复数乘法来获得N/2个复数对组的相关函数Z(k)。在步骤206通过找出Z(k)的实部和虚部分量的最大绝对幅值、且然后通过用等于由实际最大值除标称最大值的因数来缩放Z(k),而把Z(k)选择地重新标称化以获得Z′(k)。标称(nominial)最大值是预定数目,例如针对变量类型的允许范围的分数。在步骤208,在Z′(k)上实施实数离散频率反变换来获得相关函数z(t)的N个实数值,其中t=0,…,N-1。在步骤210,最优偏移量T被选择以使针对所有的t=0,…,N-1,使z(T)≥z(t)。若T≥N/2,则在步骤212从T值减掉N使得T的最终值的范围从-N/2到+N/2。最后在步骤214,T值被返回。
本发明的方法可使用任何N值,其典型上随着采样速率而改变。在高采样速率,在给定时间期间内必须处理更多样本,需要N的较高值。例如,为了产生有44.1kHz取要率的CD品质音频,N的适当值为1024。优选地,N值为2的幂级,其针对频率变换算法择则最有效率。然而,其他N值可被处理。
优选地,本发明使用离散傅立叶变换和离散傅立叶反变换来计算和估算相关函数。然而,现有技术中已知的任何其他离散频率变换和对应的离散频率反变换是在本发明的范围内。例如,适当的变换包括离散余弦变换(DCT)、离散正弦变换(DST)、离散哈特雷变换(DHT)、和根据维夫雷特函数的变换。所有这些变换都有反离散变换,其也为本发明所需要。
方法170等效于计算在各包括N个样本的两组样本间的相关函数,如在1992年牛津大学学报的Press等人的C中的数量配方(Numerical Recipes)第545-546页中描述的。为了不使用傅立叶变换来计算该函数,将需要在各可能时间滞后处来计算总和Σi=0N-1[x(ti)y(ti)]]]>一个O(N2运算。以目前可用的信号处理器,针对各经处理帧来实施N2个运算在成本上不可行,特别是在高采样速率。优选地,使用快速傅立叶变换(FFT)算法来计算步骤198和200的傅立叶变换,其细节可在1992年牛津大学学报的Press等人的C中的数量配方中找到。在N个样本上实施FFT需要Nlog2N次计算,以目前数字信号处理器即使在高采样速率仍为可行。例如,对于N=1024,N2=1,048,576,但Nlog2N=10,240。FFT算法则因此允许在整个滞后范围被有效率地搜寻。
与由本发明使用的需要乘法运算的相关函数相对,大多现有技术使用绝对误差计量。绝对误差计计量测量样本间差值的绝对值,并且最优滞后发生于误差计量的最小值处。对照地,相关函数是最小平方误差计量所算出的答案与最佳结果效果上相差最小平方误差的误差。熟知最小平方误差计量是最大相似估计器,因为它提供最适合的正态(即,高斯的)分布数据,而绝对误差计量较不适于作为数学最优化方法。
把零样本附于N/2个样本的方法170的步骤194和196,对本发明在等于要合并的两样本块的总和的滞后范围内的搜索能力也很重要。相关函数内在地假设两样本基本上为周期性。即,在x(t)缓冲器的最后样本后,下一个样本是与x(t)缓冲器的第一样本相同。一般上,这不真实,且此假设在相关函数计算上和在决定滞后T的最优值上引起巨大误差。零被附于N/2个样本来防止所谓的卷绕(wrap-around)问题的发生。相关函数把负滞后值储存在所有正滞后值之后,且通过从大于或等于N/2的T值减掉N来获得负滞后值。
请注意到在步骤102,只有输入样本X(k)的共轭复数被采用。这导致所计算的滞后是等于来自缩放缓冲器样本y(t)的输入样本x(t)的滞后。
选择步骤206主要是用于定点系统(即,整数),而不用于储存浮点数的系统。因为相关函数的绝对值不重要,而是相对值,故有利地来缩放Z(k)值以把正确度最大化且防止溢出。例如,在16位整数系统中,相关函数的数据类型的可能值范围从-32,768到+32,767。极低的相关函数值减少精确度,而极高值有溢出的危险。适合的标称最大值可被选择如在此情形中的8,191,最大值范围的四分之一,且所有数值都缩放至此标称最大值。
图9说明用于多声道数字音频信号的时间标度改变的方法220。任何数目的音频声道可被处理,包括两声道的立体信号、四声道的四重音频信号、和五声道的环效信号。声道也可能与视频信号相关。方法220合并用来处理单声道音频的方法,独立地处理各声道。在步骤222,多声道音频信号可能以可改变、非实时速率被输入。在步骤224,音频声道被分离使得可个别地处理它们。在步骤226、228和230,根据图5的方法70来独立处理各声道。因为声道被独立处理,不同声道的对应输入块不与其个别输出块在相同重叠滞后T来重叠。而是,只考虑该特定声道的相关函数来选择各声道的重叠滞后。
在步骤232、234和236中,以恒定、实时速率来输出所产生时间缩放的数字音频声道。请注意到不同声道的对应样本不再对应,且可以不同时间来播放。当此可能出现来缩减多声道输出信号的品质时,明显的事实却显示相反。在步骤238,根据方法220处理的多声道音频呈现给听者是比独立处理的多声道音频信号高的品质。据相信,听者能够合成不同声道来在效果上“建立”从声道遗失、但出现在另一声道的样本。这是与听者感知来自移动来源的声音的方式一致。若声音的空间解析度可由听者检知,则听者能够正确合成声音、解释任何时间延迟,好像它来自移动源。事实上,人类(和其他动物)习惯于来倾听声源的移动。
这后面的原理在本发明的另一个实施例中被利用,其中信号在被处理前被分成多个声道。方法240被说明在图10的方框图中。在步骤242,以可变和非实时的速率来输入单声道数字音频信号。在步骤244中使用任何适当方法来把音频信号分成多个声道;优选方法被讨论于下。多个声道可彼此偏移小量的时间滞后。信号被分成至少两个、且可能更多声道。在步骤246和248至250,本发明的连续可变时间缩放方法被独立施于各声道。如图9的方法220的,针对方法240中的各个声道计算的重叠偏移量T之间并无关连。以优选以恒定、实时速率,在步骤252和254至256中个别声道被输出。最后,在步骤258,听者合成独立的声道,感知它们如来自移动源。
在方法240中,时间压缩的输出声道被听者使用移动源原理来整合。因为声道被独立处理,故其帧以不同时间滞后来合并;听者感知它是在声道间空间地移动的声源。针对各声道的不同时间延迟偏移量可对应于针对各声道的不同输入帧序列,并且使各声道来处理输入信号的不同相位。不同时间延迟偏移量应优选在一范围中,其中不同声道被感知是空间上不同(即,在听者的左或右侧上),而不如回音效果主宰般地大。例如,长N=1024的帧引起N/2=512个样本的帧推进,此帧推进的一半声道偏移量是等于256个样本。在44,100的样本率,此偏移量对应于输入声道间的5.8毫秒时间延迟偏移量。此时间延迟偏移量已发现是用于在高达4.0(在双声道配置中)的时间压缩比率的增加可感知度的有效声道分离。特别是在快速语言的情形中,其可能在时间被压缩时难以了解,两独立处理的声道比单一声道更可被听者感知。声道间的移动的感知有助于了解输出。
自单一声道产生多声道的方法被说明在图11中。单输入缓冲器260包括多个程序指针。超前各程序指针的样本被拷贝到不同缓冲器,由此产生不同输出声道。在图11的情形中,产生两分离输出声道的两程序指针被显示。任何期望数目的程序指针可被使用。用代表两输出声道(即,两麦克风)的空间分开的预定时间滞后来分开程序指针。因为在各迭代中该方法处理N/2个样本(在此特定例子中),在两声道间的时间滞后为N/4。同样地,三个程序指针将由N/2个样本的1/3(即,N/6个样本)来分开。第一缩放缓冲器262被使用来处理与第一输入缓冲器程序指针264对应的第一声道。第二缩放缓冲器266被使用来处理与第二输入缓冲器程序指针268对应的第二声道。所产生输出样本用固定时间滞后N/2来输出,使得使用者感知样本如来自空间分开的点源。
对本领域的技术人员将是清楚的,上述实施例可以许多方式来改变而不偏离本发明的范围。据此,本发明的范围应由下面权利要求及其法定等效文献来决定。
权利要求
1.一种是针对包括输入样本的数字音频输入信号的时间标度改变方法,以可形成包括输出样本的数字音频输出信号,该方法包括下列步骤a)选择N/2个输入样本的输入块;b)选择N/2个输出样本的输出块;c)决定用来把该输入块的起头与该输出块的起头重叠的最优偏移量T;其中-N/2≤T≤N/2,其中该偏移量决定包括计算在该N/2个输入样本的离散频率变换和该N/2个输出样本的离散频率变换间的相关函数,其中该相关函数的离散频率反变换的最大值发生于该最优偏移量T;和d)把该输入块与该输出块重叠来形成该输出信号,其中该输入块起头与该输出块起头偏移T个样本。
2.依据权利要求1所述的方法,其中该偏移量决定步骤更包括在实施该输入频率变换前把N/2个零样本附于该N/2个输入样本,且在实施该输出频率变换前把N/2个零样本附于该N/2个输出样本。
3.依据权利要求1所述的方法,其中该离散频率变换是离散傅立叶变换,且其中该离散频率反变换是离散傅立叶反变换。
4.依据权利要求3所述的方法,其中该偏移量决定步骤包括i)对该输入样本进行离散傅立叶变换,以获得X(k),其中k=0,…,N/2-1;ii)对该输出样本进行离散傅立叶变换,以获得Y(k),其中k=0,…,N/2-1;iii)对X(k)取共轭复数,以获得X*(k),其中k=0,…,N/2-1;iv)对复数乘法乘积Z(k)=X*(k)·Y(k),其中k=0,…,N/2-1;v)对Z(k)进行离散傅立叶反变换,以获得z(t);和vi)决定z(T)为最大值时的T。
5.依据权利要求1所述的方法,其中该离散频率变换是从由离散余弦变换、离散正弦变换、离散哈特雷变换、和根据维夫雷特式函数的离散变换组成的组中选出。
6.依据权利要求1所述的方法,其中该相关函数是经标称化的相关函数。
7.依据权利要求1所述的方法,其更包括以恒定速率输出该输出信号。
8.依据权利要求7所述的方法,其中该恒定速率是实时速率。
9.依据权利要求7所述的方法,其中该输出块的该起头的位置是依赖该恒定速率来选择。
10.依据权利要求1所述的方法,其更包括以可变速率获得该输入信号。
11.依据权利要求1所述的方法,其中步骤(a)是独立于该输入信号的音调周期。
12.依据权利要求1所述的方法,其中该重叠步骤包括把加权函数应用于该输出块和该输入块。
13.依据权利要求12所述的方法,其中该加权函数是线性函数。
14.一种用于多声道数字音频输入信号的时间标度改变方法,各输入声道包括输入样本,来形成一个多声道数字音频输出信号,各输出声道包括输出样本,该方法包括下列步骤a)获得该输入声道;b)独立地针对各个该输入声道i)选择N/2个输入样本的输入块;ii)从该输出声道的对应声道选择N/2个输出样本的输出块;iii)确定用来把该输入块的起头与该输出块的起头重叠的最优偏移量T,其中-N/2≤T≤N/2,该偏移量的确定包括计算在该N/2个输入样本的离散频率变换和该N/2个输出样本的离散频率变换间的相关函数,其中该相关函数的离散频率反变换的最大值发生在该最优偏移量T;iv)把该输入块与该输出块重叠来形成该对应的输出声道,其中该输入块起头与该输出块起头偏移T个样本;和c)把该输出声道组合来形成该多声道数字音频输出信号。
15.依据权利要求14所述的方法,其中步骤(a)包括把该多声道数字音频信号分离成该输入样本。
16.依据权利要求14所述的方法,其中步骤(a)包括从单声道数字音频输入信号来产生该输入声道。
17.依据权利要求16所述的方法,其中该输入声道以预定时间滞后量来彼此分开。
18.依据权利要求14所述的方法,其中该离散频率变换是离散傅立叶变换,且其中该离散频率反变换是离散傅立叶反变换。
19.依据权利要求14所述的方法,其更包括以恒定速率输出该多声道数字音频输出信号。
20.依据权利要求19所述的方法,其中该恒定速率是实时速率。
21.依据权利要求19所述的方法,其中针对各声道,依赖该恒定速率来选择该输出块的该起头的位置。
22.依据权利要求14所述的方法,其更包括以可变速率获得该多声道数字输入信号。
23.依据权利要求14所述的方法,其中步骤(b)(i)是独立于该输入声道的音调周期。
24.依据权利要求14所述的方法,其中该多声道数字音频输入信号和该多声道数字音频输出信号是立体信号。
25.一种数字信号处理器,包括经配置的处理单元来实施针对包括输入样本的数字音频输入信号的时间标度改变的方法步骤,以形成包括输出样本的数字音频输出信号,该方法步骤包括a)选择N/2个输入样本的输入块;b)选择N/2个输出样本的输出块;c)确定用来把该输入块的起头与该输出块的起头重叠的最优偏移量T;其中-N/2≤T≤N/2,其中该偏移量确定步骤包括计算在该N/2个输入样本的离散频率变换和该N/2个输出样本的离散频率变换间的相关函数,其中该相关函数的离散频率反变换的最大值发生在该最优偏移量T;和d)把该输入块与该输出块重叠来形成该输出信号,其中该输入块起头与输出块起头偏移T个样本。
26.依据权利要求25所述的数字信号处理器,其中该偏移量确定步骤更包括在进行该输入频率变换前把N/2个零样本附于该N/2个输入样本,且在进行该输出频率变换前把N/2个零样本附于该N/2个输出样本。
27.依据权利要求25所述的数字信号处理器,其中该离散频率变换是离散傅立叶变换,且其中该离散频率反变换是离散傅立叶反变换。
28.依据权利要求27所述的数字信号处理器,其中该偏移量确定步骤包括i)对该输入样本进行离散傅立叶变换,以获得X(k),其中k=0,…,N/2-1;ii)对该输出样本进行离散傅立叶变换,以获得Y(k),其中k=0,…,N/2-1;iii)对X(k)取共轭复数,以获得X*(k),其中k=0,…,N/2-1;iv)计算复数乘法乘积Z(k)=X*(k)·Y(k),其中k=0,…,N/2-1;v)对Z(k)的离散傅立叶反变换,以获得z(t);和vi)确定z(T)为最大值时的T。
29.依据权利要求25所述的数字信号处理器,其中该离散频率变换是从由离散余弦变换、离散正弦变换、离散哈特雷变换、和根据维夫雷特式函数的离散变换组成的组中选出。
30.依据权利要求25所述的数字信号处理器,其中该相关函数是经标称化的相关函数。
31.依据权利要求25所述的数字信号处理器,其中该方法步骤更包括以恒定速率输出该输出信号。
32.依据权利要求31所述的数字信号处理器,其中该恒定速率是实时速率。
33.依据权利要求31所述的数字信号处理器,其中按照该恒定速率选择该输出块的该起头的位置。
34.依据权利要求25所述的数字信号处理器,其中该方法步骤更包括以可变的速率获得该输入信号。
35.依据权利要求25所述的数字信号处理器,其中步骤(a)独立于该输入信号的音调周期。
36.依据权利要求25所述的数字信号处理器,其中该重叠步骤包括将加权函数应用到该输出块和该输入块。
37.依据权利要求36所述的数字信号处理器,其中该加权函数是线性方程。
全文摘要
一种用于数字音频信号的时间标度改变的方法产生不同播放率的、而相同音调的输出信号作为输入数字音频信号。该方法使输入信号中的样本块与输出信号中的样本块重叠以压缩信号。针对各可能重叠来计算相关函数,且选择产生最大相关度的重叠。对于计算相关函数有效的计算方法计算输入和输出样本块的离散频率变换、计算相关、然后对于在最优重叠处具有最大值的相关函数进行频率变换反变换。一种针对多声道数字音频信号的时间缩放改变的方法独立地处理每个声道,听者合成不同的声道并感知高质量的多声道信号。
文档编号G10L21/04GK1440549SQ01812205
公开日2003年9月3日 申请日期2001年7月17日 优先权日2000年7月26日
发明者罗杰·塞利 申请人:Ssi株式会社, 罗杰·塞利
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1