具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例提供的铃音播放方法可以由具有铃音播放功能的终端来执行,上述终端的类型可以但不限于为手机,终端播放铃音的目的在于向用户传达某种特定信息,例如,来电提示信息、短信提示信息或者闹钟提示信息,本发明实施例对此不做限定。
图1为本发明实施例提供的一种铃音播放方法流程图,参照图1,该方法包括:
步骤101,当终端检测到来电信息时,采集环境噪声信号。
通常地,终端上设置有至少一个麦克风,本发明实施例中,当终端检测到来电信息时,可以启动其中的一个或多个麦克风,通过一个或多个麦克风采集环境噪声信号。
步骤102,对环境噪声信号进行分析,得到环境噪声信号的频谱或功率谱或能量谱。
本发明实施例中,可以采用通用的方法对环境噪声信号进行分析,得到环境噪声信号的频谱或功率谱或能量谱,在此不做赘述。
步骤103,从终端存储的多个铃音中,选择与环境噪声信号的频谱或功率谱或能量谱差异最大的一个铃音,作为待播放铃音。
其中,可以通过计算每个铃音与环境噪声信号的差异值的方式,来选择与环境噪声信号的频谱或功率谱或能量谱差异最大的一个铃音。
步骤104,根据环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合,为第一频段集合中的每个频段分别确定相应的滤波器增益,从而构建一个滤波器。
本发明实施例中,上述第一频率范围可以根据人耳的听力范围预先设定,例如,20Hz到4kHz的频率范围。
此外,可以根据环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合,例如,预先设定若干个幅度区间,每个幅度区间对应的频率范围作为一个频段,这些频段组成第一频段集合;也可以预先采用固定的方式将第一频率范围划分为第一频段集合,例如,按照每个频段的长度均等的方式将第一频率范围划分为若干个频段,这些频段组成第一频段集合。
本发明实施例中,可以根据环境噪声信号的频谱或功率谱或能量谱的幅频特性,为第一频段集合中的每个频段分别确定相应的滤波器增益,从而构建一个滤波器,其中,当一个频段对应的环境噪声信号的频谱或功率谱或能量谱的幅度均值较大时,赋予该频段一个较小的滤波器增益,当一个频段对应的环境噪声信号的频谱或功率谱或能量谱的幅度均值较小时,赋予该频段一个较大的滤波器增益。
对于上述步骤103和步骤104的执行顺序,本发明实施例不做限定,可以先执行步骤103再执行步骤104,也可以先执行步骤104再执行步骤103,还可以同时执行步骤103和步骤104。
步骤105,使用滤波器处理待播放铃音。
具体地,使用步骤104构建的滤波器处理步骤103选择的待播放铃音,从而进一步加大铃音与环境噪声的差异。
步骤106,播放滤波器处理后的待播放铃音。
具体地,可以通过扬声器播放步骤105处理后的待播放铃音。
通常地,终端上设置有至少一个扬声器,本发明实施例中,可以启动其中的一个或多个扬声器,通过一个或多个扬声器播放处理后的待播放铃音。
本发明实施例中,当终端检测到来电信息时,不是直接播放预设的铃音,而是先采集环境噪声信号,然后根据该环境噪声信号的频谱或功率谱或能量谱,选择一个铃音作为待播放铃音,以及,构建一个滤波器,再使用该滤波器处理该待播放铃音,最后播放该滤波器处理后的待播放铃音。由于选择待播放铃音和构建滤波器均参考了环境噪声信号的频谱或功率谱或能量谱,因此能够加大播放的铃音与环境噪声的差异,消除环境噪声对铃音的掩蔽效应,大幅度降低在吵闹环境中漏接电话的几率。同时,由于铃音可以根据环境噪声特性自动切换,带来了一定可玩性。
在一个示例中,上述步骤103具体可以通过如下方式实现:针对终端存储的多个铃音中的每个铃音,将对应频点的环境噪声信号的频谱或功率谱或能量谱与铃音的频谱或功率谱或能量谱做差,得到每个频点对应的差值,然后根据预先设定的第二频段集合中的每个频段对应的权重对每个频点对应的差值加权求和,得到该铃音与环境噪声信号的差异值;从所述多个铃音中,选择与所述环境噪声信号的差异值最大的铃音作为待播放铃音。
其中,可以根据人耳听力特性来确定第二频段集合中的每个频段,以及每个频段对应的权重,具体地,由于人耳对不同频率的声音敏感程度不一样,因此,本发明实施例中,可以对于人耳比较敏感的频段设置一个较大的权重,对于人耳比较不敏感的频段设置一个较小的权重,从而能够选择出人耳更容易识别的铃音。
如图2所示,在一个示例中,上述步骤104具体包括:
步骤1041,根据环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合。
其中,第一频段集合包括第一频段和第二频段,第一频段为环境噪声信号的频谱或功率谱或能量谱的幅度小于预设的幅度阈值的频段,第二频段为环境噪声信号的频谱或功率谱或能量谱的幅度大于预设的幅度阈值的频段。
步骤1042,确定环境噪声信号的频谱或功率谱或能量谱在第一频段的幅度均值、在第二频段的幅度均值和在第一频率范围的幅度均值。
步骤1043,对第一频段的幅度均值以第一频率范围的幅度均值进行镜像,获得第一频段的镜像值;以及,对第二频段的幅度均值以第一频率范围的幅度均值进行镜像,获得第二频段的镜像值。
步骤1044,在第一频段的镜像值和第二频段的镜像值中间添加过渡值,形成初步滤波器增益。
步骤1045,使初步滤波器增益从第一频率范围的上限开始衰减,并使第一预设频率之后的滤波器增益为1。
由于终端存储的铃音有限,如果从终端存储的多个铃音中选择一个铃音作为待播放铃音后,直接播放该待播放铃音,可能减小环境噪声对铃音的掩蔽效应的效果还不够好,本发明实施例中,为了能够最大化的提高终端播放的铃音与环境噪声的差异,可以对于选取的待播放铃音做进一步的滤波处理,从而进一步减小环境噪声对铃音的掩蔽效应,提高了用户在吵闹环境下听见铃音的几率。
为了能够更清楚的说明构建滤波器的过程,下面结合图示做具体的说明。
如图3所示为本发明实施例提供的滤波器构建示意图,参照图3,滤波器构建分为五个步骤。
第1步:测量分析环境噪声能量谱;
在实际应用中,也可以分析环境噪声的频谱或功率谱,图3中仅以能量谱为例进行说明。
第2步:对20Hz到4kHz之间环境噪声的能量谱划分频段,频段的具体划分方法不限。然后求出各频段的能量谱均值如E1和E2(对应两个频段Band1和Band2),再求出整个能量谱均值E3;
第3步:以E3为中心,将E1和E2镜像为E1’和E2’;
第4步:在E1’和E2’中间添加过渡(Trans ition),形成初步滤波器幅频特性;
第5步:考虑到人耳听力特性,使滤波器幅频特性从4kHz开始衰减,并使转折频率fc之后的增益G=1,即对fc之后的频带不做调节。要求fc大于4kHz即可,具体取值不做限定。
在考虑人耳听力特性后,使转折频率fc之后的增益G=1,即对fc之后的频带不做调节,可以有效节约终端的处理资源,有利于减少终端能耗。
图4为本发明实施例提供的一种终端结构图,该终端用于执行本发明实施例提供的铃音播放方法,所述终端包括:
采集单元401,用于当检测到来电信息时,采集环境噪声信号;
分析单元402,用于对所述采集单元401采集的环境噪声信号进行分析,得到所述环境噪声信号的频谱或功率谱或能量谱;
选择单元403,用于从所述终端存储的多个铃音中,选择与所述分析单元402得到的环境噪声信号的频谱或功率谱或能量谱差异最大的一个铃音,作为待播放铃音;
构建单元404,用于根据所述分析单元402得到的环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合,为所述第一频段集合中的每个频段分别确定相应的滤波器增益,从而构建一个滤波器;
处理单元405,用于使用所述构建单元404构建的滤波器处理所述选择单元403选择的待播放铃音;
播放单元406,用于播放所述处理单元405处理后的所述待播放铃音。
可选地,所述选择单元403包括:
差异确定子单元,用于针对所述终端存储的多个铃音中的每个铃音,将对应频点的所述环境噪声信号的频谱或功率谱或能量谱与铃音的频谱或功率谱或能量谱做差,得到每个频点对应的差值,然后根据预先设定的第二频段集合中的每个频段对应的权重对每个频点对应的差值加权求和,得到该铃音与所述环境噪声信号的差异值;
选择子单元,用于从所述多个铃音中,选择所述差异确定子单元确定的与所述环境噪声信号的差异值最大的铃音作为待播放铃音。
可选地,所述构建单元404包括:
频段划分子单元,用于根据所述环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合,所述第一频段集合包括第一频段和第二频段,所述第一频段为所述环境噪声信号的频谱或功率谱或能量谱的幅度小于预设的幅度阈值的频段,所述第二频段为所述环境噪声信号的频谱或功率谱或能量谱的幅度大于预设的幅度阈值的频段;
均值确定子单元,用于确定所述环境噪声信号的频谱或功率谱或能量谱在所述频段划分子单元划分的第一频段的幅度均值、在所述频段划分子单元划分的第二频段的幅度均值和在所述第一频率范围的幅度均值;
镜像子单元,用于对所述第一频段的幅度均值以所述第一频率范围的幅度均值进行镜像,获得所述第一频段的镜像值;以及,对所述第二频段的幅度均值以所述第一频率范围的幅度均值进行镜像,获得所述第二频段的镜像值;
第一系数确定子单元,用于在所述第一频段的镜像值和所述第二频段的镜像值中间添加过渡值,形成初步滤波器增益;
第二系数确定子单元,用于使所述初步滤波器增益从所述第一频率范围的上限开始衰减,并使第一预设频率之后的滤波器增益为1。
图5为本发明实施例提供的另一种终端结构图,该终端用于执行本发明实施例提供的铃音播放方法,所述终端包括:
存储器501、麦克风502、编解码器503、处理器504和扬声器505;
所述存储器501,用于存储多个铃音和程序指令;
所述处理器504,用于根据所述存储器501中存储的程序指令执行以下操作:
当检测到来电信息时,通过所述麦克风502采集环境噪声信号;
通过所述编解码器503对所述环境噪声信号进行分析,得到所述环境噪声信号的频谱或功率谱或能量谱;
从所述存储器501存储的多个铃音中,选择与所述环境噪声信号的频谱或功率谱或能量谱差异最大的一个铃音,作为待播放铃音;以及,通过所述编解码器503根据所述环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合,为所述第一频段集合中的每个频段分别确定相应的滤波器增益,从而构建一个滤波器;
通过所述编解码器503使用所述滤波器处理所述待播放铃音;
通过所述扬声器505播放所述滤波器处理后的所述待播放铃音。
可选地,所述处理器504执行所述从所述存储器501存储的多个铃音中,选择与所述环境噪声信号的频谱或功率谱或能量谱差异最大的一个铃音,作为待播放铃音的操作,包括:
针对所述存储器501存储的多个铃音中的每个铃音,将对应频点的所述环境噪声信号的频谱或功率谱或能量谱与铃音的频谱或功率谱或能量谱做差,得到每个频点对应的差值,然后根据预先设定的第二频段集合中的每个频段对应的权重对每个频点对应的差值加权求和,得到该铃音与所述环境噪声信号的差异值;
从所述多个铃音中,选择与所述环境噪声信号的差异值最大的铃音作为待播放铃音。
可选地,所述处理器504执行所述通过所述编解码器503根据所述环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合,为所述第一频段集合中的每个频段分别确定相应的滤波器增益,从而构建一个滤波器的操作,包括:
通过所述编解码器503根据所述环境噪声信号的频谱或功率谱或能量谱的幅频特性,将第一频率范围划分为第一频段集合,所述第一频段集合包括第一频段和第二频段,所述第一频段为所述环境噪声信号的频谱或功率谱或能量谱的幅度小于预设的幅度阈值的频段,所述第二频段为所述环境噪声信号的频谱或功率谱或能量谱的幅度大于预设的幅度阈值的频段;
确定所述环境噪声信号的频谱或功率谱或能量谱在所述第一频段的幅度均值、在所述第二频段的幅度均值和在所述第一频率范围的幅度均值;
对所述第一频段的幅度均值以所述第一频率范围的幅度均值进行镜像,获得所述第一频段的镜像值;以及,对所述第二频段的幅度均值以所述第一频率范围的幅度均值进行镜像,获得所述第二频段的镜像值;
在所述第一频段的镜像值和所述第二频段的镜像值中间添加过渡值,形成初步滤波器增益;
使所述初步滤波器增益从所述第一频率范围的上限开始衰减,并使第一预设频率之后的滤波器增益为1。
下面结合终端可能的系统架构对本发明实施例提供的铃音播放方法进行具体说明。
图6为本发明实施例提供的铃音播放方法基于的系统架构示意图,该方法可以依赖于系统提供的硬件和软件相结合来实现。其中,硬件包括麦克风601(MIC),扬声器602(Speaker),编解码器603(Codec),应用处理器604(AP)和存储器605(Memory),软件包括运行在Codec的音频和语音(Audio&Voice)数字信号处理器(Digital Signal Processor,DSP)中的程序模块和运行在AP中的程序模块,如图中阴影部分所示。
本发明实施例中,可以利用麦克风601采集环境噪声,在Codec603的DSP中运行环境噪声分析模块(Ambient Noise Analysis)分析环境噪声频谱(或功率谱、能量谱),由于利用环境噪声功率谱、能量谱的方式与利用环境噪声频谱的方式相同,下面的描述中仅以利用环境噪声频谱的方式为例进行描述。
本发明实施例中采用了两种铃音增强手段,在分析环境噪声频谱的基础上,第一种铃音增强手段是按照与环境噪声频谱差异最大的原则检索铃音的频谱,找出与环境噪声频谱差异最大的铃音并播放。比如有十个铃音,对比发现第n个铃音的频谱与环境噪声差异最大,则选择第n个铃音播放。第二种铃音增强手段是按照环境噪声的频谱,同时基于人耳听力特性,构建一个幅频特性与环境噪声频谱有明显差异的滤波器,并用此滤波器处理铃音,增大铃音频谱与环境噪声频谱的差异。
本发明实施例中,MIC采集环境噪声,来自MIC的音频信号(信号A)经模数转换器(analog to digital converter,ADC)进行模数转换后进入Codec的DSP,在Codec的DSP中运行环境噪声分析模块,此模块用于分析环境噪声频谱并将分析结果B发送给AP中运行的铃音匹配模块(Ring Tone Matching)和Codec中运行的滤波器构建模块(Filter Construction)。
铃音匹配模块分析铃音的频谱,依次将环境噪声频谱与每一个铃音的频谱相比较,找出与环境噪声频谱差异最大的铃音,如图7所示。终端一共存储有三个铃音,按一定规则比较(Compare)后发现铃音(Ring Tone)1的频谱与环境噪声频谱(Spectrum of Ambient Noise)的频谱差异最大,因此RingTone 1就是铃音匹配模块的输出(Output)。
滤波器构建模块用于参考环境噪声的频谱,同时兼顾到人耳对1kHz-4kHz间的频率较为敏感的特性,构建一幅频特性与环境噪声频谱有明显差异的滤波器如图8所示。构建过程要使滤波器幅频特性与环境噪声频谱差异拉大。即在环境噪声较强的频段使滤波器的增益较小,在环境噪声较弱的频段使滤波器增益较大。最后,考虑到人耳对小于4kHz的声音较为敏感,因此将4kHz以后的频段衰减。滤波器增益被传递给下行处理模块(Downl ink Process ing),铃音播放模块(Ring Tone Play)用于播放铃音,下行处理模块接收到铃音播放模块传递过来的铃音后,先通过收到的滤波器增益处理铃音数据流,然后再经由数模转换器(digital to analog converter,DAC)进行数模转换后发送给扬声器,由扬声器进行播放。
本发明应用铃音选择和滤波处理的方法加大铃音与环境噪声的差异,以消除环境噪声对铃音的掩蔽效应,大幅度降低在吵闹环境中漏接电话的几率。同时,由于铃音可以根据环境噪声特性自动切换,带来了一定可玩性。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetic tape),软盘(英文:floppy disk),光盘(英文:optical disc)及其任意组合。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。