
本发明的各个方面一般涉及音频信号处理,并且更具体地,涉及对音频信号进行重新采样,以便在处理音频播放超限运行及低限运行问题时保持音频播放质量。
背景技术:
:在无线扬声器及无线头戴式耳机系统中,将音频信号从主机(例如,个人计算机、游戏控制台)无线地传输至接收器装置(例如,扬声器、头戴式耳机)。然而,主机及接收器装置可使用独立的计时系统来进行其数字电路操作,因此在主机系统处的音频获取速率可稍微不同于在接收器装置处的音频播放速率。当时钟偏移的累积大于音频样本周期时,将发生音频播放超限运行或低限运行。在传统的系统设计中,当接收器装置中发生音频播放超限运行时,将过量的音频数据丢弃,而当发生音频播放低限运行时,重复最后的音频数据。无论如何,当发生音频播放超限运行或低限运行时,音频播放质量都会受损。技术实现要素:下文呈现一或多个方面的简要概述,以便提供对这样的方面的基本理解。此概述并非所有预期方面的广泛综述,且既不旨在标识所有方面的关键或重要元素,也不旨在描绘任何方面或所有方面的范围。其唯一目的是为了以简要形式呈现一或多个方面的一些概念,作为稍后呈现的更详细的描述的序言。在本公开的一方面,提供了用于对音频信号进行重新采样的方法、计算机可读介质和设备。所述设备对所述音频信号进行重新采样,以便在处理音频播放超限运行及低限运行问题时保持音频播放质量。所述设备可接收所述音频信号的包含第一数目的样本的数据块。对于所述第一数目的样本中的每一样本,所述设备可将所述音频信号的对应于所述样本的部分切分成特定数目的子样本。所述设备可基于所述第一数目的样本以及与所述第一数目的样本中的每一样本相关联的所述特定数目的子样本,将所述音频信号的所述数据块重新采样为第二数目的样本。所述设备可经由电声装置播放所述音频信号的经重新采样的数据块。为了完成前述目的及相关目的,此一或多个方面包括下文全面描述且权利要求书中特别指出的特征。以下描述及附图详细地阐述了此一或多个方面的某些说明性特征。然而,这些特征仅指示可用于具体化各个方面的原理的各种方式中的几种方式,并且此描述旨在包括所有这些方面及其等效物。附图说明图1为说明根据本公开的一些实施例的系统的示例的示图。图2为说明未遭受音频播放低限运行或超限运行问题的音频播放信号的波形的示例的示图。图3为说明图2中的音频播放信号的频率响应的示图。图4为说明遭受音频播放超限运行问题的失真音频播放信号的波形的示例的示图。图5为说明图4中的失真音频播放信号的频率响应的示图。图6说明一种高效且有效的对音频信号进行重新采样的方法的示例。图7为说明对音频信号的块进行重新采样的示例的图标。图8说明根据本公开的一些实施例的对音频信号进行重新采样的方法。图9为说明经重新采样的音频播放信号的频率响应的示图。图10为说明原始信号、经重新采样的信号及失真信号之间的音频波形比较的示图。图11为对音频信号进行重新采样的方法的流程图。图12为说明在示例性设备中的不同的构件/组件之间的数据流动的概念性数据流程图。图13为说明采用处理系统的设备的硬件实现的示例的示图。具体实施方式下文结合附图阐述的详细描述旨在作为各种配置的描述,而非旨在表示可用于实践本文所描述的概念的唯一配置。出于提供对各种概念的透彻理解的目的,该详细描述包括特定细节。然而,对于本领域的技术人员将显而易见的是,这些概念可在没有这些特定细节的情况下实践。在一些情况下,公知的结构和组件以框图的形式示出,以便避免混淆这些概念。现将参考各种设备及方法来呈现音频信号处理的若干方面。这些设备及方法将在以下详细描述中被描述,并在附图中通过各种块、组件、电路、进程、算法等(统称为“元素”)来说明。这些元素可使用电子硬件、计算机软件或其任何组合来实施。这些元素被实施为硬件还是软件取决于对整个系统施加的特定应用和设计约束。作为示例,元素、或元素的任何部分、或任何元素组合可实施为包括一或多个处理器的“处理系统”。处理器的示例包括微处理器、微控制器、图形处理单元(gpu)、中央处理单元(cpu)、应用处理器、数字信号处理器(dsp)、精简指令集计算(risc)处理器、片上系统(soc)、基带处理器、现场可编程门阵列(fpga)、可编程逻辑设备(pld)、状态机、门控逻辑、离散硬件电路以及被配置成执行遍及本发明描述的各种功能的其他合适的硬件。处理系统中的一个或多个处理器可执行软件。软件应被广泛地解释为意指指令、指令集、代码、代码段、程序代码、程序、子程序、软件组件、应用、软件应用、软件包、例程、子例程、对象、可执行代码、执行线程、过程、函数等,而无论是被称为软件、固件、中间件、微代码、硬件描述语言还是其他者。因此,在一或多个示例实施例中,所描述的功能可以用硬件、软件或其任何组合来实施。若以软件来实施,则功能可存储于计算机可读介质上或作为一或多个指令或代码编码于计算机可读介质上。计算机可读介质包括计算机存储介质。存储介质可以是计算机可以访问的任何可用介质。作为示例而非限制,这样的计算机可读介质可包括随机存取存储器(ram)、只读存储器(rom)、电可擦可编程rom(eeprom)、光盘存储装置、磁盘存储装置、其他磁性存储装置、前述类型之计算机可读介质的组合,或可用于存储计算机可以访问的指令或数据结构的形式的计算机可执行码的任何其他介质。图1为说明根据本公开的一些实施例的系统100的示例的示图。在该示例中,系统100可包括主机装置102及接收器装置110。主机装置102可无线地(例如,通过短程无线通信通道)将音频信号传输至接收器装置110。短程无线通信通道可使用蓝芽、wi-fi或其他短程无线通信协议来传输音频信号。主机装置102可以是桌面计算机、膝上型计算机、游戏控制台、智能电话、平板计算机,或类似的计算装置。接收器装置110可包括扬声器、头戴式耳机、耳机,或任何其他电声装置。主机装置102可使用第一计时系统来进行其数字电路操作;且接收器装置110可使用第二计时系统来进行其数字电路操作。第一计时系统及第二计时系统可以彼此独立。因此,主机装置102处的音频获取速率可稍微不同于接收器装置110处的音频播放速率,从而导致音频播放超限运行或低限运行。在一个实施例中,当接收器装置110中发生音频播放超限运行或低限运行时,接收器装置110可(在106处)对从主机装置102接收到的音频信号进行重新采样。音频播放低限运行及超限运行问题可由主机装置102与接收器装置110之间的时钟同步引起。当发生音频播放低限运行及超限运行问题时,在接收器装置110的播放信号处可发生音频失真。图2为说明并没有遭受音频播放低限运行或超限运行问题的音频播放信号的波形202的示例的图标200。波形202可以是以48khz进行采样的1khz正弦波。如所说明的,波形202的任何连续样本对(例如,样本210和样本212,或者样本212和样本214)都从该对中的一样本平滑地过渡至该对中的另一样本。图3为说明图2中的音频播放信号的频率响应的示图300。如所示出的,该频率响应集中在1khz的频率上并且在其他频率上几乎没有噪声。图4为说明遭受音频播放超限运行问题的失真音频播放信号的波形402的示例的示图400。波形402可以是以48khz进行采样的1khz正弦波。如所说明的,音频播放信号的连续音频样本410及样本412是脱节的。这是因为,当由于接收器装置的频率比主机装置慢而发生音频播放超限运行时,原始音频信号中的音频样本(最初处于样本410与样本412之间的样本)被丢弃了。图5为说明图4中的失真音频播放信号的频率响应的示图500。如所示出的,失真音频播放信号的频率响应具有显著的噪声502。图6说明一种高效且有效的对音频信号602进行重新采样的方法的示例。如示图600中所示出的,块大小n可被选择为对音频信号602进行重新采样的工作大小。因此,音频信号602可被划分为若干块,其中的每一个块最初具有n个样本。该方法在发生音频播放超限运行时,可将块(例如,块605)中的n个样本重新采样为n-1个样本,而该方法在发生音频播放低限运行时,可将块中的n个样本重新采样为n+1个样本。示图650示出了块605的部分的放大视图。块605的该部分可包括样本s(n-1)、s(n)、s(n+1)及s(n+2)。如所说明的,样本s(n-1)、s(n)、s(n+1)及s(n+2)可被重新采样为样本s’(n-1)、s’(n)、s’(n+1)及s’(n+2)。图7为说明对音频信号的块702进行重新采样的示例的示图700。在该示例中,块大小为10,这意味着块702最初具有10个样本。s(n)表示原始音频信号的第n个样本,而s’(n)表示以均匀的间隔重新采样的新音频信号的第n个样本。在样本中,块702的10个原始样本归因于音频播放超限运行而被重新采样为9个样本。在一个实施例中,块702中的每一原始样本可被切分成1024个子样本。结果,在时域中两个连续子样本之间的时间比在时域中两个连续样本之间的时间短得多。在一个实施例中,每一原始样本的切分可包括获得对该样本以及紧接在该样本之后的下一样本的线性插值,且1024个子样本可由于线性插值而均匀地分布。块702的重新采样可通过以下来计算:s’(1)=s(1)s’(2)=s(2)+((s(3)–s(2))/1024)*113s’(3)=s(3)+((s(4)–s(3))/1024)*227s’(4)=s(4)+((s(5)–s(4))/1024)*341s’(5)=s(5)+((s(6)–s(5))/1024)*455s’(6)=s(6)+((s(7)–s(6))/1024)*568s’(7)=s(7)+((s(8)–s(7))/1024)*682s’(8)=s(8)+((s(9)–s(8))/1024)*796s’(9)=s(9)+((s(10)–s(9))/1024)*910在一个实施例中,与原始样本相关联的子样本的数目可以为2的幂(例如,1024)。在此实施例中,在以上计算中除以1024可以由对指数数目的位(例如,10个位)的算术右移来取代。图8说明根据本公开的一些实施例的对音频信号进行重新采样的方法。在800处,大小为n的数据块被选择来执行重新采样。在850处,sample(n)与sample(n+1)之间的音频信号被切分成m个子样本,因此为该数据块形成n×m个子样本。在一个实施例中,m可选择为是2的幂的数目,使得算术移位运算而非除法可被用来获得重新采样的最终结果。此实施例可减小用于对音频信号进行重新采样的计算循环的数目。若发生音频播放超限运行,则新的样本值可通过从n×m个子样本中挑选n-1个样本来计算。若发生音频播放低限运行,则新的样本值可通过从n×m个子样本中挑选n+1个样本来计算。在一个实施例中,可构建查找表来缩短用于对音频信号进行重新采样的处理时间。在此实施例中,可使用以下软件程序来建构查找表。查找表可提供对于音频信号的重新采样可能需要选择的子样本索引。这些子样本索引可在上文参考图7所描述的重新采样计算中使用。对于n=10、m=1024的情况,所建构的查找表的示例在下文说明:样本索引子样本索引0011132227334144555568668277968910下文为可用以基于查找表对音频信号进行重新采样的软件程序的示例。图9为说明经重新采样的音频播放信号的频率响应的示图900。如所示出,经重新采样的音频播放信号的信噪比接近于原始信号的信噪比,如上文在图3中所说明的。经重新采样的音频播放信号的噪声水平与失真音频信号相比要低的多,如上文在图5中所说明的。通过使用上文所述的重新采样方法,音频播放低限运行以及超限运行的影响可通过消除由音频信号的不连续性造成的突然的爆裂声或开裂声来降低。图10为说明原始信号、经重新采样的信号及失真信号之间的音频波形比较的示图1000。如所示出的,原始信号的波形1002的任何连续样本对从该对中的一个样本平滑地过渡至该对中的另一样本。类似地,经重新采样的信号的波形1004的任何连续样本对从该对中的一个样本平滑地过渡至该对中的另一样本。然而,失真信号的波形1006上存在脱节区段1010,在不使用本公开中描述的重新采样技术的情况下,可获得这种脱节区段。结果,与失真信号相比,使用本公开中描述的方法来重新采样的信号提供更高的音频播放质量。图11为对音频信号进行重新采样的方法的流程图1100。在一个实施例中,该方法可由设备(例如,设备1202/1202’)执行。该设备可包括接收器装置(例如,接收器装置110)。在一个实施例中,该方法可执行上文参考图1中的106所描述的操作。在一个实施例中,该方法可执行上文参考图6至图8所描述的操作。在1102处,该设备可接收音频信号的包含第一数目的样本的数据块。音频信号可从主机装置(例如,主机装置102)被无线地接收到。在1104处,对于第一数目的样本中的每一样本,该设备可将音频信号的对应于该样本的部分切分成特定数目的子样本。在一个实施例中,音频信号的对应于该样本的部分可以是音频信号的在该样本与紧接在该样本之后的下一样本之间的部分。在此实施例中,为了将音频信号的对应于该样本的部分切分成特定数目的子样本,该设备可获得对该样本及下一样本的线性插值。特定数目的子样本可由于线性插值而均匀地分布。在1106处,该设备可基于第一数目的样本以及与第一数目的样本中的每一样本相关联的特定数目的子样本,将音频信号的数据块重新采样为第二数目的样本。在一个实施例中,该特定数目可以为2的幂。在一个实施例中,算术移位运算可替代除法运算在数据块的重新采样时被使用。在一个实施例中,为了将音频信号的数据块重新采样为第二数目的样本,该设备可基于该数据块内总数目的子样本来选择第二数目的样本。总数目可等于第一数目与特定数目的乘积。在一个实施例中,第二数目的样本可在总数目的子样本内均匀地分布。在一个实施例中,第二数目可等于第一数目加1。在另一实施例中,第二数目可等于第一数目减1。在1108处,该设备可任选地经由电声装置播放音频信号的经重新采样的数据块。在一个实施例中,电声装置可以是扬声器、耳机、听筒等。图12为说明在示例性设备1202中的不同构件/组件之间的数据流动的概念性数据流程图1200。在一个实施例中,设备1202可包括上文在图1中所描述的接收器装置110。设备1202可包括从主机装置1250接收音频信号的接收组件1204。在一个实施例中,主机装置1250可以是上文在图1中所描述的主机装置102。在一个实施例中,接收组件1204可执行上文参考图11中的1102所描述的操作。设备1202可包括重新采样组件1206,重新采样组件1206对接收到的音频信号进行重新采样,以在处理音频播放超限运行及低限运行问题时,保持音频播放质量。在一实施例中,重新采样组件1206可执行上文参考图11中的1104或1106所描述的操作。设备1202可包括播放组件1208,播放组件1208播放经重新采样的音频信号。在一个实施例中,播放组件1208可执行上文参考图11中的1108所描述的操作。设备1202可包括执行在图11的上述流程图中的算法的块中的每一个块的额外组件。因而,图11的上述流程图中的每一个块可由组件执行,并且该设备可包括这些组件中的一个或多个组件。这些组件可以是被专门配置成实施所陈述的进程/算法的一个或多个硬件组件,可由被配置成执行所陈述的进程/算法的处理器来实施,可被存储在计算机可读介质内以供处理器实施,或其某种组合。图13为说明采用处理系统1314的设备1202'的硬件实现的示例的示图1300。在一个实施例中,设备1202’可以是上文参考图12所描述的设备1202。处理系统1314可以被实现为具有总线架构,该总线架构通常由总线1324表示。总线1324可包括任何数目的互连总线及网桥,这取决于处理系统1314的特定应用以及总体设计约束。总线1324将各种电路链接在一起,这些电路包括:通过处理器1304来表示的一个或多个处理器及/或硬件组件,组件1204、1206、1208、以及计算机可读介质/存储器1306。总线1324还可链接各种其他电路,诸如定时源、外围设备、电压调节器及功率管理电路,这些电路在本领域是公知的,因此将不再对其进行描述。处理系统1314可耦接至收发器1310。收发器1310耦接至一个或多个天线1320。收发器1310提供用于通过传输介质与各种其他设备进行通信的构件。收发器1310通过一个或多个天线1320接收信号,从接收到的信号中提取信息,并将所提取的信息提供至处理系统1314,尤其是接收组件1204。处理系统1314包括处理器1304,处理器1304耦接至计算机可读介质/存储器1306。处理器1304负责一般处理,包括执行存储在计算机可读介质/存储器1306上的软件。该软件在由处理器1304执行时,使得处理系统1314执行上文针对任何特定设备所描述的各种功能。计算机可读介质/存储器1306还可用于存储由处理器1304在执行软件时所操纵的数据。处理系统1314进一步包括组件1204、1206、1208中的至少一个组件。这些组件可以是在处理器1304中运行、驻留/存储在计算机可读介质/存储器1306中的软件组件,耦接至处理器1304的一个或多个硬件组件,或其某种组合。在下文中,将说明本发明的各种方面:示例1为一种用于音频信号处理的方法或设备。所述设备可接收音频信号的包含第一数目的样本的数据块。对于所述第一数目的样本中的每一样本,所述设备可将所述音频信号的对应于所述样本的部分切分成特定数目的子样本。所述设备可基于所述第一数目的样本以及与所述第一数目的样本中的每一样本相关联的所述特定数目的子样本,将所述音频信号的所述数据块重新采样为第二数目的样本。在示例2中,如示例1所述的主题可任选地包括,所述设备可经由电声装置来播放所述音频信号的经重新采样的数据块。在示例3中,示例1至2中任一者所述的主题可任选地包括,所述特定数目为2的幂。在示例4中,如示例3所述的主题可任选地包括,算术移位运算可替代除法运算在所述数据块的所述重新采样时被使用。在示例5中,如示例1至4中任一者所述的主题可任选地包括,为了将所述音频信号的所述数据块重新采样为所述第二数目的样本,所述设备可基于所述数据块内总数目的子样本来选择所述第二数目的样本,其中所述总数目为所述第一数目与所述特定数目的乘积。在示例6中,如示例5所述的主题可任选地包括,所述第二数目的样本可在所述总数目的子样本内均匀地分布。在示例7中,如示例1至6中任一者所述的主题可任选地包括,所述第二数目等于所述第一数目加1。在示例8中,如示例1至6中任一者所述的主题可任选地包括,所述第二数目等于所述第一数目减1。在示例9中,如示例1至8中任一者所述的主题可任选地包括,所述音频信号的对应于所述样本的所述部分可以是所述音频信号在所述样本与紧接在所述样本之后的下一样本之间的部分。在示例10中,如示例9所述的主题可任选地包括,为了将所述音频信号的对应于所述样本的所述部分切分成所述特定数目的子样本,所述设备可获得对所述样本以及所述下一样本的线性插值,其中所述特定数目的子样本由于所述线性插值而均匀地分布。本领域的技术人员将了解,本文所使用的术语仅用于描述各种实施例的目的,而并不旨在限制本发明。如本文所使用的,单数形式的“一”、“一个”及“该”也旨在包括复数形式,除非上下文另有明确指示。将进一步理解,当在本说明书中使用时,术语“包括”和/或“包含”指定存在所陈述的特征、整数、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或其群组。应理解,所公开的进程/流程图中的框的特定次序或分层结构为示例性方法的说明。基于设计偏好,应理解,可重新布置进程/流程图中的框的特定次序或分层结构。此外,一些框可组合或省略。随附方法的权利要求以示例次序呈现各种框的要素,而并不旨在限于所呈现的特定次序或分层结构。提供先前描述以使本领域的任何技术人员能够实践本文所述的各种方面。对这些方面的各种修改对于本领域的技术人员而言将是容易显而易见的,且本文所定义的一般原理可适用于其他方面。因此,权利要求书并不旨在限于本文所示的方面,而应符合与语言权利要求书一致的整个范围,其中以单数形式对元件的引用并不旨在意指“一个且仅一个”,除非特定地如此规定,而是意指“一个或多个”。用词“示例性”在本文中用于意指“充当示例、实例或说明”。本文描述为“示例性”的任何方面不必解释为比其他方面更佳或更有利。除非另有特定规定,否则术语“一些”指代一个或多个。例如“a、b或c中的至少一个”、“a、b或c中的一个或多个”、“a、b及c中的至少一个”、“a、b及c中的一个或多个”以及“a、b、c或其任何组合”的组合包括a、b和/或c的任何组合,并且可包括多个a、多个b或多个c。具体地,例如“a、b或c中的至少一个”、“a、b或c中的一个或多个”、“a、b及c中的至少一个”、“a、b及c中的一个或多个”以及“a、b、c或其任何组合”的组合可以是仅a、仅b、仅c、a及b、a及c、b及c,或a及b及c,其中任何这种组合可包含a、b或c的一个或多个成员。本领域技术人员已知或稍后将已知的遍及本公开所描述的各种方面的元件的所有结构及功能等效物以引用的方式明确地并入本文中,且旨在被权利要求书包含。此外,本文所公开的任何内容都不旨在贡献给公众,而不管此公开是否被明确地记载在权利要求书中。用词“模块”、“机构”、“组件”、“装置”等可能并非用词“构件”的替代。因而,权利要求元件不将被解释为构件附加功能,除非元件是使用短语“用于……的构件”明确地记载的。当前第1页12