一种降低音频编码码率的方法、系统、存储介质及设备与流程

文档序号:22248112发布日期:2020-09-18 12:18阅读:361来源:国知局
一种降低音频编码码率的方法、系统、存储介质及设备与流程

本申请涉及音频编码技术领域,特别是一种降低音频编码码率的方法、系统、存储介质及设备。



背景技术:

现有技术中,主流的蓝牙音频编码器包括:sbc音频编码器,其根据a2dp协议强制要求,使用最为广泛,所有的蓝牙音频设备支持,但音质一般;aac-lc音频编码器,其音质较好且应用较为广泛,很多主流的手机都支持,但与sbc音频编码器相比,内存占用较大,且运算复杂度高,很多蓝牙设备都基于嵌入式平台,电池容量有限,处理器运算能力较差且内存有限;aptx系列音频编码器,其音质较好,但码率很高,aptx需要码率384kbps,而aptx-hd的码率为576kbps,且为高通独有的技术,较为封闭;ldac音频编码器,其音质较好,但码率也很高,分别是330kbps,660kbps和990kbps,由于蓝牙设备所处的无线环境特别复杂,稳定支持如此高的码率有一定的困难,且为索尼独有的技术,也很封闭。

基于上述原因,蓝牙国际联盟bluetoothsig联合众多厂商推出了lc3音频编码器,其具有较低延迟、较高音质和编码增益以及在蓝牙领域无专利费等优点,受到广大厂商的关注。由于lc3音频编码器推出的初衷是要满足低功耗蓝牙领域的音频应用,所以对功耗要求非常严格。

在lc3音频编码器中,由于其基于波形编码技术,因此与传统声码器相比,压缩效率很低。例如,lc3在8k采样率时的推荐码率为24kbps,但应用于wcdma的amr-nb最大码率仅为12.2kbps,平均码率10kbps以下,应用于cdma系统的evrc-a最大码率为8kbps,平均码率约为5kbps。lc3音频编码器较高的码率占用了较大的带宽,因此需要更高的发射功率,而在蓝牙设备较多的公共场合,各个蓝牙设备间产生相互干扰,影响用户体验。

另外在使用编码器进行通话过程的编解码时,据统计,通话一方通常只有35%的时间进行通话,存在较长时间的静音状态。而目前的音频编码器在进行通话编解码时,均按照固定码率进行编解码过程,导致在通话一方处于不说话的静音状态时编码器仍使用相同码率进行编码,造成码率的浪费,占用较多的带宽资源,增到编码器的功耗。



技术实现要素:

针对现有技术中存在的上述技术问题,本申请提供一种降低音频编码码率的方法、系统、存储介质及设备。

在本申请的一个技术方案中,提供一种降低音频编码码率的方法,包括,判断编码音频帧是否为静音帧;当编码音频帧为静音帧时,根据编码音频的采样率和帧长设置第一编码码率;当编码音频帧为除静音帧之外的非静音帧时,设置第二编码码率,其中,第一编码码率低于第二编码码率;根据第一编码码率或第二编码码率对编码音频帧进行编码。

在本申请的另一技术方案中,提供一种降低音频编码码率的系统,包括,静音帧判断模块,其判断编码音频帧是否为静音帧;码率设定模块,当编码音频帧为静音帧时,根据编码音频的采样率及帧长设置第一编码码率;当编码音频帧为除静音帧之外的非静音帧时,设置第二编码码率,第一编码码率低于第二编码码率;以及编码模块,其根据第一编码码率或第二编码码率对编码音频帧进行编码。

在本申请的另一技术方案中,提供一种计算机可读存储介质,其存储有计算机指令,其中计算机指令被操作以执行方案一中的降低音频编码码率的方法。

在本申请的另一技术方案中,提供一种计算机设备,其包括处理器和存储器,存储器存储有计算机指令,其中,处理器操作计算机指令以执行方案一中的降低音频编码码率的方法。

本申请的有益效果是:本申请的应用使得对编码音频帧中的静音帧使用较低的编码码率进行编码,降低编码器的编码码率,节省编码器所用编码带宽,降低运算量,降低编码器的功耗,延长编码器的使用时间,提升编码器的使用性能。

附图说明

图1是本申请降低音频编码码率的方法的一个具体实施方式的流程示意图;

图2是编码音频帧中静音帧与非静音帧的一个具体实例的示意图;

图3是本申请降低音频编码码率的方法的一个具体实例的流程示意图;

图4是本申请降低音频编码码率的方法的应用效果的示意图;

图5是本申请降低音频编码码率的系统的一个具体实施方式的组成示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

图1示出了本申请降低音频编码码率的方法的一个具体实施方式。

在该具体实施方式中,本申请的降低音频编码码率的方法包括,步骤s101,判断编码音频帧是否为静音帧;步骤s102,当编码音频帧为静音帧时,根据编码音频的采样率和帧长设置第一编码码率;当编码音频帧为除静音帧之外的非静音帧时,设置第二编码码率,其中第一编码码率低于第二编码码率;以及步骤s103,根据第一编码码率或第二编码码率对编码音频帧进行编码。

在图1所示的具体实施方式中,本申请的降低音频编码码率的方法包括步骤s101,判断编码音频帧是否为静音帧。通过对编码音频帧是否为静音帧的判断,进而针对不同的编码音频帧采用不同编码码率进行编码,避免编码码率的浪费,从而降低编码器的运算量,降低编码器的功耗。

在本申请的一个具体实施例中,在判断编码音频帧是否为静音帧的的过程,包括:对编码音频帧进行离散余弦变换,并记录离散余弦变换结果;当离散余弦变换结果全部为零,则编码音频帧是静音帧,当存在一个离散余弦变换结果不为零,则编码音频帧为除静音帧之外的非静音帧。

在该具体实施例中,低延迟改进型离散余弦变换的计算公式如下:

图2示出了编码音频帧中静音帧与非静音帧的一个具体实例。由图2可知,非静音帧具有上下波动的振幅,而静音帧没有上下振幅变化,振幅为静止的零。因为静音帧在编码音频帧中的独特性,当对编码音频帧进行离散余弦变换,得出的结果全部为零,则该编码音频帧为静音帧,否则该编码音频帧为非静音帧。对应于具体的离散余弦变换公式中,因为静音帧中,函数对应的结果均为0,进行例如上述公式的离散余弦变换时,得出的最终结果也全部为零。对应图2中,静音帧信号没有起伏的振幅信号,均为零值。因此,通过对编码音频帧的离散傅里叶变换的结果,对编码音频帧是否为静音帧进行判断。

在图1所示的具体实施方式中,本申请的降低音频编码码率的方法包括步骤s102,当编码音频帧为静音帧时,根据编码音频的采样率和帧长设置第一编码码率;当编码音频帧为除静音帧之外的非静音帧时,设置第二编码码率,其中第一编码码率低于第二编码码率。通过对不同类型的编码音频帧设置对应的编码速率,能够保证不同类型编码音频帧的编码需求,降低编码码率消耗,降低蓝牙发射端和接收端的射频功耗,进而降低设备间的干扰,提升用户使用体验。

在本申请的一个具体实施例中,第一编码码率为编码器的编码标准中对编码音频帧进行编码的最低编码码率。通过上述对编码音频帧中静音帧的判断,因为静音帧的特殊性,可采用编码器标准规范中规定的最低编码码率对静音帧进行编码。例如,在lc3音频编码器的标准规范中,当采样率为16khz的单声道音频,如果帧长参数为10ms,则最低的编码码率可以为16kbps。

在本申请的一个具体实施例中,第二编码码率为编码器对编码音频帧进行编码前预设的编码码率。即当编码音频帧为非静音帧时,使用预设的编码码率对非静音帧进行标准编码流程。例如,在lc3音频编码器的标准规范中,当采样率为16khz的单声道音频,如果帧长参数为10ms,则预设的编码码率可以为64kbps。

在图1所示的具体实施方式中,本申请的降低音频编码码率的方法包括步骤s103,根据第一编码码率或第二编码码率对编码音频帧进行编码。

在该具体实施方式中,通过对编码音频帧中静音帧和非静音帧的判断,并对静音帧和非静音帧设置对应的第一编码码率和第二编码码率,随后利用第一编码码率或第二编码码率在编码器的相应编码模块中对静音帧或非静音帧进行编码。

本申请降低音频编码码率的方法的应用,使得对编码音频帧中的静音帧使用较低的编码码率进行编码处理,节省编码器所用编码带宽,降低编码器的编码码率,降低运算量,降低蓝牙发射端的射频功耗,从而节省更多的功耗给编码器使用,延长编码器的使用时间,提升编码器的使用性能。

图3示出了本申请降低音频编码码率的方法的一个具体实例。如图3所示,首先对编码音频帧进行离散余弦变换。例如进行低延迟改进型离散余弦变换,并判断该编码音频帧的低延迟改进型离散余弦变换的结果。若低延迟改进型离散余弦变换的结果全部为零,则该编码音频帧为静音帧,若低延迟改进型离散余弦变换的结果中存在一个非零值,则该编码音频帧为非静音帧。当编码音频帧为静音帧时,根据编码音频帧的帧长和采样率信息,设置第一编码码率,随后按照第一编码码率对编码音频帧进行编码。其中,第一编码码率为编码器的编码标准中对编码音频帧进行编码的最低编码码率。例如,在lc3音频编码器的标准规范中,当采样率为16khz的单声道音频,如果帧长参数为10ms,则最低的编码码率可以为16kbps。当编码音频帧为非静音帧时,设置第二编码码率,其中第二编码码率为编码器对编码音频帧进行编码前预设的编码码率,例如,在lc3音频编码器的标准规范中,当采样率为16khz的单声道音频,如果帧长参数为10ms,则预设的编码码率可以为64kbps。随后,按照第二编码码率对编码音频帧中的非静音帧进行编码。

图4是本申请降低音频编码码率的方法的应用效果的示意图。其中,图4表示的是对于编码音频帧中的静音帧,使用不同的编码码率所得出的输出码流的区别。其中,图4上半部分表示的是按照预设的编码码率对该静音帧进行编码后的输出码流,图4下半部分表示的是使用编码器中的最低编码码率对静音帧进行编码后的输出码流。其中图4对应的静音帧为单声道,采样率为16khz,帧长为10ms的音频帧。其中,在lc3音频编码器中,lc3音频编码器预设的编码码率为64kbps,对应的nbytes字节数为80个字节;最低编码码率为16kbps,对应的nbytes字节数为20个字节。由图4上半部分可知,使用预设的编码码率对静音帧进行编码时,输出的码流有较多的零值,出现编码码率的浪费;而使用最低编码码率对静音帧进行编码时,如图4下半部分,输出的码流与使用预设的编码码率进行编码的编码输出码流相比,减少了60个字节。因此,本申请的应用,将编码音频帧中的静音帧使用较低的编码码率进行编码,保证了编码器的正常编码过程,同时节省编码码率,降低了蓝牙发射端的射频功耗,延长了设备的使用时间,减少蓝牙设备间的干扰,提升用户使用体验。

图5示出了本申请降低音频编码码率的系统的一个具体实施方式。

在图5所示的具体实施方式中,本申请的降低音频编码码率的系统包括:静音帧判断模块,其判断编码音频帧是否为静音帧;码率设定模块,当编码音频帧为静音帧时,根据编码音频的采样率或帧长设置第一编码码率;当编码音频帧为除静音帧之外的非静音帧时,设置第二编码码率,其中第一编码码率低于第二编码码率;以及编码模块,其根据第一编码码率或第二编码码率对编码音频帧进行编码。

在本申请的一个具体实施例中,静音帧判断模块判断编码音频帧是否为静音帧的过程,包括:对编码音频帧进行离散余弦变换,并记录离散余弦变换结果;当离散余弦变换结果全部为零,则该编码音频帧是静音帧;当存在一个离散余弦变换结果不为零,则该编码音频帧为除静音帧之外的非静音帧。因为非静音帧具有上下波动的振幅,而静音帧没有上下振幅变化,振幅为静止的零,根据静音帧在编码音频帧中的独特性,对编码音频帧进行离散余弦变换,得出的结果全部为零,则该编码音频帧为静音帧,否则该编码音频帧为非静音帧。

在本申请的一个具体实施例中,第一编码码率为编码器的编码标准中对编码音频帧进行编码的最低编码码率,第二编码码率为编码器对编码音频帧进行编码前预设的编码码率。例如,在lc3音频编码器的标准规范中,当采样率为16khz的单声道音频,如果帧长参数为10ms,则最低编码码率可以为16kbps,预设的编码码率可以为64kbps。

在本申请的一个具体实施方式中,一种计算机可读存储介质,其存储有计算机指令,其中计算机指令被操作以执行任一实施例描述的降低音频编码速率的方法。其中,该存储介质可直接在硬件中、在由处理器执行的软件模块中或在两者的组合中。

软件模块可驻留在ram存储器、快闪存储器、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可装卸盘、cd-rom或此项技术中已知的任何其它形式的存储介质中。示范性存储介质耦合到处理器,使得处理器可从存储介质读取信息和向存储介质写入信息。

处理器可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)、现场可编程门阵列(英文:fieldprogrammablegatearray,简称:fpga)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合等。通用处理器可以是微处理器,但在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如dsp与微处理器的组合、多个微处理器、结合dsp核心的一个或一个以上微处理器或任何其它此类配置。在替代方案中,存储介质可与处理器成一体式。处理器和存储介质可驻留在asic中。asic可驻留在用户终端中。在替代方案中,处理器和存储介质可作为离散组件驻留在用户终端中。

在本申请的一个具体实施方式中,一种计算机设备,其包括处理器和存储器,存储器存储有计算机指令,其中:处理器操作计算机指令以执行任一实施例描述的降低音频编码速率的方法。

在本申请所提供的实施方式中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1