一种蓝牙音频编码方法、装置及存储介质

文档序号:1833187 发布日期:2021-11-12 浏览:32次 >En<

阅读说明:本技术 一种蓝牙音频编码方法、装置及存储介质 (Bluetooth audio coding method, device and storage medium ) 是由 李强 朱勇 王尧 叶东翔 于 2021-10-13 设计创作,主要内容包括:本申请公开了一种蓝牙音频编码方法、装置及存储介质,属于音频编解码技术领域。该方法主要包括:在蓝牙连接关系建立后进行蓝牙音频编码的过程中,在瞬态噪声整形编码之前,对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断;分别对全频带信号帧的连续出现次数和部分频带信号帧的连续出现次数进行计数;在瞬态信号出现时,根据全频带信号帧的连续出现次数、部分频带信号帧的连续出现次数以及预定的频带计数门限值,将当前帧之后的所有音频信号帧都判断为全频带信号帧或者部分频带信号帧。本申请能够节省算力,且结构简单,便于实现。(The application discloses a Bluetooth audio coding method, a Bluetooth audio coding device and a Bluetooth audio coding storage medium, and belongs to the technical field of audio coding and decoding. The method mainly comprises the following steps: in the process of carrying out Bluetooth audio coding after the Bluetooth connection relation is established, before transient noise shaping coding, carrying out bandwidth detection on a current frame and judging whether the current frame is a full-band signal frame or a partial-band signal frame; counting the continuous occurrence times of full-band signal frames and the continuous occurrence times of partial-band signal frames respectively; when the transient signal appears, all the audio signal frames after the current frame are judged as the full-band signal frames or the partial-band signal frames according to the continuous occurrence times of the full-band signal frames, the continuous occurrence times of the partial-band signal frames and a preset frequency band counting threshold value. The power-saving device can save power, is simple in structure and is convenient to realize.)

一种蓝牙音频编码方法、装置及存储介质

技术领域

本申请涉及蓝牙传输、音频编码与压缩技术领域,特别涉及一种蓝牙音频编码方法、装置及存储介质。

背景技术

在LC3编码器中,带宽检测用来检测带限信号,这类信号需要使用较高的采样率来编码,例如,采样率为8kHz的窄带语音,其最大有效带宽为4kHz,但该窄带语音在输送到LC3编码器之前被上采样到16kHz,此时LC3编码器会使用采样率16kHz的相关参数对该窄带语音进行编码,但实际上其最大有效带宽仍然为4kHz。这种现象会导致LC3编码器的瞬态噪声整形模块和噪声电平估计模块计算有误,进一步导致噪声泄露到没有频谱的区域,降低音质。为了解决这个问题,LC3标准规范中引入了带宽检测,在LC3编码时每一帧信号都会执行带宽检测以得到当前帧所对应的真实带宽。

在LC3标准规范中,编码时会对每一帧信号进行带宽检测,但在实际使用中,在一次蓝牙连接关系建立后,真实带宽在信号传输过程中不会发生突变。因此,在编码过程中,对每一帧信号都进行带宽检测计算就浪费编码过程的算力,同时重复进行带宽检测计算会降低LC3编码的速度。

发明内容

针对现有技术存在的问题,本申请主要提供一种蓝牙音频编码方法、装置及存储介质。

为了实现上述目的,本申请采用的一个技术方案是:提供一种蓝牙音频编码方法,其包括:在蓝牙连接关系建立后进行蓝牙音频编码的过程中,在瞬态噪声整形编码之前,对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断;分别对全频带信号帧的连续出现次数和部分频带信号帧的连续出现次数进行计数;在瞬态信号出现时,根据全频带信号帧的连续出现次数、部分频带信号帧的连续出现次数以及预定的频带计数门限值,将当前帧之后的所有音频信号帧都判断为全频带信号帧或者部分频带信号帧;其中,全频带信号帧的最大带宽是其采样率的一半,部分频带信号帧的最大带宽小于其采样率的一半。

本申请采用的另一个技术方案是:提供一种蓝牙音频编码装置,其包括:带宽状态判断模块,用于在蓝牙连接关系建立后进行蓝牙音频编码的过程中,在瞬态噪声整形编码之前,对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断;连续出现计数模块,用于分别对全频带信号帧的连续出现次数和部分频带信号帧的连续出现次数进行计数;后续音频信号带宽判断模块,用于在瞬态信号出现时,根据全频带信号帧的连续出现次数、部分频带信号帧的连续出现次数以及预定的频带计数门限值,将当前帧之后的所有音频信号帧都判断为全频带信号帧或者部分频带信号帧;其中,全频带信号帧的最大带宽是其采样率的一半,部分频带信号帧的最大带宽小于其采样率的一半。

本申请采用的另一个技术方案是:提供一种计算机可读存储介质,其存储有计算机指令,该计算机指令被操作以执行方案一中的蓝牙音频编码方法。

本申请的技术方案可以达到的有益效果是:本申请设计了一种蓝牙音频编码方法、装置及存储介质。该方法能够节省LC3编码过程的算力,加快LC3编码的编码速率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作以简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一种蓝牙音频编码方法的一个

具体实施方式

的示意图;

图2是本申请一种蓝牙音频编码方法的一个判断处理流程的示意图;

图3是本申请一种蓝牙音频编码装置的一个具体实施方式的示意图。

通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。

具体实施方式

下面结合附图对本申请的较佳实施例进行详细阐述,以使本申请的优点和特征能更易于被本领域技术人员理解,从而对本申请的保护范围做出更为清楚明确的界定。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

瞬态噪声整形,瞬态噪声整形又称为Temporal Noise Shaping,简称为TNS。其作用是对频谱数据进行预测编码,以及基于预测编码进行噪声整形,以提高信号的时域分辨率,使解码器输出端可以调节量化误差的时域形状从而适应输入信号的时域形状。瞬态噪声整形能够有效地将量化噪声置于实际信号之下,从而降低预回声效应。瞬态噪声整形主要针对瞬态信号进行处理,瞬态信号是指在一段信号中前面能量很低,突然间能量变得很高的信号,在本申请中的瞬态信号主要指的是能量突然从低变高的信号。

全频带信号,信号的最大带宽是采样频率的一半的信号叫全频带信号。例如,采样率是8kHz,其最大带宽是4kHz,则该8kHz采样率的信号就是全频带信号;采样率是48kHz,其最大带宽是24kHz,则该48kHz采样率的信号就是全频带信号。

部分频带信号:信号的最大带宽小于采样频率的一半的信号叫部分频带信号。例如,采样率是16kHz,其最大带宽是4kHz,则该采样率是16kHz的信号是部分频带信号;采样率是48kHz,其最大带宽是4kHz、8kHz、12kHz,16kHz等,则该采样率是48kHz的信号是部分频带信号。

表1展示了LC3中理论最大带宽和实际最大带宽之间的关系,其中,理论最大带宽即根据信号的采样率计算得到的带宽,实际最大带宽即根据带宽检测器检测到的带宽。

表1

表1中的缩写定义如下:

NB:Narrow band(窄频带宽),采样率8kHz,带宽范围 0~4kHz;

WB:Wide band(宽频带宽),采样率16kHz,带宽范围0~8kHz;

SSWB:Semi Super Wide Band(半超宽频带宽),采样率24kHz,带宽范围0~12kHz;

SWB: Super Wide Band(超宽频带宽),采样率32kHz,带宽范围0~16 kHz;

FB: Full band(全频带宽),采样率48kHz或44.1kHz,带宽范围 0~20 kHz或0~18.375kHz。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

针对现有技术存在的每帧信号都要执行带宽检测造成的算力浪费,本申请利用带宽检测和瞬态噪声整形的激活状态,实现在编码开始后只对少量帧执行带宽检测,确定当前编码的音频信号是全频段信号或部分频带信号,并且在后续帧的编码中不再重复进行带宽检测节约算力。

图1示出了本申请一种蓝牙音频编码方法的一个具体实施方式。

在图1所示的具体实施方式中,蓝牙音频编码方法主要包括步骤S101,在蓝牙连接关系建立后进行蓝牙音频编码的过程中,在瞬态噪声整形编码之前,对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断;

步骤S102,分别对全频带信号帧的连续出现次数和部分频带信号帧的连续出现次数进行计数;

步骤S103,在瞬态信号出现时,根据全频带信号帧的连续出现次数、部分频带信号帧的连续出现次数以及预定的频带计数门限值,将当前帧之后的所有音频信号帧都判断为全频带信号帧或者部分频带信号帧;

其中,全频带信号帧的最大带宽是其采样率的一半,部分频带信号帧的最大带宽小于其采样率的一半。

在本申请的一个具体实施例中,在现有技术中,当蓝牙通话连接关系建立完成后,发射端的编码器需要检测其所接收到的音频信号的每一帧的带宽。本申请利用建立蓝牙连接关系后编码器的最大带宽固定不变这一原理,在蓝牙通话连接关系建立完成后,发射端的编码器在接收到音频信号后,检测音频信号中预定帧数的连续出现的音频信号帧的带宽并将检测结果作为音频信号后续帧的实际带宽。利用音频信号的实际带宽设定编码参数,并完成对音频信号的后续帧进行的编码,且后续的音频帧无需再进行带宽检测。

该具体实施方式中,通过减少音频信号的带宽检测次数,节省LC3编码过程的算力,加快LC3编码的编码速率。

在图1所示的具体实施方式中,蓝牙音频编码方法,包括步骤S101,在蓝牙连接关系建立后进行蓝牙音频编码的过程中,在瞬态噪声整形编码之前,对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断。

在本申请的一个具体实施例中,在蓝牙通话连接关系建立完成后,发射端的编码器在接收到音频信号后,首先利用当前帧的带宽状态是否已知来判断当前帧是否需要进行带宽检测。在当前帧的带宽状态对是未知时,利用带宽检测器检测当前帧的是全频带信号帧还是部分频带信号帧。

例如,图2在音频信号的当前帧传输到编码器上时,利用最终带宽指示的值是否为0判断当前帧的带宽状态是已知状态还是未知状态,在最终带宽指示值为0时,当前帧是全频带信号帧还是部分频带信号帧是未知的。在最终带宽指示值为不为0时,当前帧是全频带信号帧或部分频带信号帧是已知的。在前帧是全频带信号帧还是部分频带信号帧是未知时,利用带宽检测器检查当前帧的带宽状态是全频带信号帧还是部分频带信号帧,其中,当检测出当前帧是全频带信号帧或检测出当前帧是部分频带信号帧时,则当前帧的带宽状态是已知的;在不清楚当前帧是全频带信号帧还是部分频带信号帧时,其带宽状态是未已知的。

该具体实施例中,通过判断当前帧的带宽状态,为利用当前帧的带宽状态判断后续帧是否需要进行带宽检测奠定基础。

在本申请的一个具体实施例中,利用当前帧的频谱系数,计算当前帧的子带能量,并利用当前帧的子带能量计算得到当前帧的低能量标志;根据当前帧的低能量标志计算得到当前帧对应的带宽索引;根据带宽索引、子带能量以及当前帧的带宽门限值,计算得到当前帧的带宽检测结果。

具体的,利用公式计算当前帧的低能量标志,其中,Ibw start和Ibw stop分别代表起始子带序号和终止子带序号,EB(n)是子带能量、TQ(k)是低能量门限值、FQ(k)是低能量标志。

利用低能量标志和公式,计算得到当前帧对应的带宽索引,带宽索引的取值范围是0~Nbw的最大值。且可以由表2得到当前帧的帧长、起始子带、终止子带和带宽等之间的关系。

表2

利用公式,计算得到当前帧的带宽检测结果,其中,TC(bw0)是当前帧的门限值,bw0是带宽索引。当上述不等式条件满足时,当前帧的带宽是bw0;当上述不等式条件不满足时,当前帧的带宽是Nbw,其中,TC={15,23,20,20},L={4,4,3,1}。

特别的,当带宽索引的值与带宽门限值相等时,为节省算力,不再利用公式判断带宽状态。

该具体实施例,通过计算当前帧的带宽,为利用连续多帧的带宽确定音频信号的带宽状态奠定基础。

在图1所示的具体实施方式中,蓝牙音频编码方法,还包括步骤S102,分别对全频带信号帧的连续出现次数和部分频带信号帧的连续出现次数进行计数。

在本申请的一个具体实施例中,利用全带宽计数器和部分带宽计数器统计音频信号中连续出现全频带信号帧的次数和连续出现部分频带信号帧的次数。重要的,在首次进行当前帧的带宽检测时,需要将全带宽计数器和部分带宽计数器的值清零,以保证判断结果的准确性。

在本申请的一个具体实施例中,若当前帧是全频带信号帧还是部分频带信号帧是未知时,对当前帧进行带宽检测。在当前帧的带宽检测的结果等于当前帧采样率的一半,更新全带宽计数器;在当前帧的带宽检测的结果小于当前帧采样率的一半,更新部分带宽计数器。

在本申请的一个具体实施例中,S102还包括,分别利用全带宽计数器以及部分带宽计数器对全频带信号帧的连续出现次数和部分频带信号帧的连续出现次数进行计数;若当前帧的判断结果为全频带信号帧,则全带宽计数器加1,并且部分带宽计数器清0;若当前帧的判断结果为部分频带信号帧,则部分带宽计数器加1,并且全带宽计数器清0。

具体的,在音频信号的连续多帧当前帧被判断为全频带信号帧,且在该连续多帧当前帧中未出现任一帧是部分频带信号帧时,对全带宽计数器根据被判断为全频带信号帧的帧数进行计数。在音频信号的连续多帧当前帧被判断为部分频带信号帧,且在该连续多帧当前帧中未出现任一帧是全频带信号帧时,对部分带宽计数器根据被判断为部分频带信号帧的帧数进行计数。当被判断为全频带信号帧的连续多帧音频信号中出现任一帧是部分频带信号帧时,清零全带宽计数器,重新开始对部分带宽计数器进行计数;当被判断为部分频带信号帧的连续多帧音频信号中出现任一帧是全频带信号帧时,清零部分带宽计数器,重新开始对全带宽计数器进行计数。

该具体实施例,在保证节省编码器的算力前提下,保证了预估出的音频信号带宽的正确性。

在图1所示的具体实施方式中,蓝牙音频编码方法,还包括步骤S103,在瞬态信号出现时,根据全频带信号帧的连续出现次数、部分频带信号帧的连续出现次数以及预定的频带计数门限值,将当前帧之后的所有音频信号帧都判断为全频带信号帧或者部分频带信号帧。

在本申请的一个具体实例中,若当前帧的带宽状态未知,对当前帧进行带宽检测,并根据带宽检测结果更新全带宽计数器或部分带宽计数器,之后,对当前帧进行瞬态噪声整形处理,并根据当前帧的瞬态噪声整形结果更新连续瞬态噪声整形激活计数器,其中,在连续瞬态噪声整形激活的次数不小于预定的连续瞬态噪声整形激活计数器门限值时,判断出现了瞬态信号,即利用连续瞬态噪声整形激活计数器的值与预定的激活次数阈值判断音频信号是否是瞬态信号。

具体的,当连续瞬态噪声整形激活计数器的值不小于连续瞬态噪声整形激活计数器门限值时,且全频带信号帧的连续出现次数不小于预定的频带计数门限值,则停止对当前帧所对应的音频信号的后续帧进行带宽检测,并将当前帧之后的所有的音频信号帧都判断为全频带信号帧;当连续瞬态噪声整形激活计数器的值不小于连续瞬态噪声整形激活计数器门限值时,且部分频带信号帧的连续出现次数不小于预定的频带计数门限值,则停止对当前帧所对应的音频信号的后续帧进行带宽检测,并将当前帧之后的所有的音频信号帧都判断为部分频带信号帧。

在本申请的一个具体实施例中,在当前帧是噪声信号或当前帧是语音通话时的无人声输入的类似静音时,连续瞬态噪声整形激活计数器不更新,不根据当前帧判断编码器所编码音频信号的后续帧的带宽状态。

利用瞬态噪声整形判断当前帧是否是瞬态信号,在当前帧是瞬态信号时,更新连续瞬态噪声整形激活计数器。通过判断当前帧的瞬态噪声整形激活状态能避免因为噪声信号或类似静音信号造成的带宽判断错误,其中,噪声信号是在蓝牙通讯过程中,用户没有说话但存在的背景噪声信号。

该具体实施例,通过对当前帧进行瞬态噪声整形的计算和对连续瞬态噪声整形激活计数器的更新,避免了在当前帧所对应的信号是噪声信号时,编码器对所编码语音信号的实际带宽的判断错误。

在本申请的一个具体实施例中,步骤S103还包括,在瞬态信号出现时,若全频带信号帧的连续出现次数不小于预定的频带计数门限值,则停止进行带宽检测,并将当前帧之后的所有音频信号帧都判断为全频带信号帧;在瞬态信号出现时,若部分频带信号帧的连续出现次数不小于预定的频带计数门限值,则停止进行带宽检测,并将当前帧之后的所有音频信号帧都判断为部分频带信号帧;在瞬态信号出现时,若全频带信号帧的连续出现次数小于预定的频带计数门限值,并且部分频带信号帧的连续出现次数小于预定的频带计数门限值,则继续进行对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断的处理。

具体的,当连续瞬态噪声整形激活计数器的值不小于连续瞬态噪声整形激活计数器门限值、全频带信号帧的连续出现次数小于预定的频带计数门限值,并且部分频带信号帧的连续出现次数小于预定的频带计数门限值,无法准确的判定当前帧的后续音频信号帧是全频带信号帧还是部分频带信号帧,需要利用更多的当前帧的带宽状态确定当前帧的后续音频信号帧的带宽状态,因此需要继续进行对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断的处理。

该具体实施例,确保了对后续音频帧是全带宽信号帧还是部分带宽信号帧判断的准确性,避免了判断错误。

在本申请的一个具体实例中,利用当前帧的谱系数,计算当前帧的归一化自相关结果;利用归一化自相关结果,计算当前帧的归一化自相关结果的加窗处理结果;根据加窗处理结果,计算当前帧的线性预测系数,并利用线性预测系数计算得到线性预测误差;利用线性预测误差,计算得到预测增益,并利用预测增益更新连续瞬态噪声整形激活计数器。

具体的,利用公式计算当前帧的归一化自相关结果,其中,

,r(k)是归一化自相关值,利用r(k)得到频谱系数之间的相关性。

利用公式将归一化自相关值进行加窗处理,其中,rw(k)是加窗处理结果,r(k)是归一化自相关值。通过加窗处理解决归一化自相关结果的不理想性。

利用标准的Levinson-Durbin算法,根据归一化自相关值计算线性预测系数,并根据线性预测系数计算线性预测误差。

最后,利用线性预测误差和公式计算出预测增益,并且当时瞬态噪声整形处于激活状态,更新连续瞬态噪声整形激活计数器。

该具体实施例,通过归一化自相关等运算得到当前帧的瞬态噪声整形结果,为利用瞬态噪声整形结果,提高编码器对所编码音频信号实际带宽判断的准确度。

在本申请的一个具体实施例中,步骤S103进一步包括,若当前帧被判断为全频带信号帧,则根据当前帧的采样率设置相关编码参数进行瞬态噪声整形编码;若当前帧被判断为部分频带信号帧,则根据当前帧的最大带宽设置相关编码参数进行瞬态噪声整形编码。

在本申请的一个具体实施例中,如图2,当连续瞬态噪声整形激活计数器的值不小于连续瞬态噪声整形激活计数器门限值时,此时,根据连续全带宽计数器、连续部分带宽计数器以及频带计数门限值即带宽计数器门限值,可以得到音频信号帧在编码时如何设置相关编码参数。

当瞬态噪声整形是激活状态且连续全带宽计数器的值不小于带宽计数器门限值时,将当前帧之后的所有的音频信号帧都判断为全频带信号,根据当前帧的采样率设置相关编码参数进行当前帧的后续音频信号帧的瞬态噪声整形编码;

当瞬态噪声整形是激活状态且连续部分宽计数器的值不小于带宽计数器门限值时,将当前帧之后的所有的音频信号帧都判断为部分频带信号,根据当前帧的最大带宽设置相关编码参数进行当前帧的后续音频信号帧的瞬态噪声整形编码。频带计数门限值用来避免误判,其取值无限制,优选的,门限值为3~5。且,当瞬态噪声整形是激活状态时当前帧是瞬态信号,当瞬态噪声整形激活状态是未激活状态时当前帧是非瞬态信号。

该具体实施例,提高了判断编码器所编码的音频信号的准确度,为节省算力奠定基础。

特别的,在全带宽计数器加1时,部分带宽计数器不清0,和在部分带宽计数器加1时,全带宽计数器不清0时,当连续出现的全频带信号次数不小于预设的频带计数门限值,且连续出现的部分频带信号的次数不小于预设的频带计数门限值时,判断连续出现的全频带信号次数与连续出现的部分频带信号的次数的大小,将出现次数多的频带信号的带宽状态作为当前帧之后的所有的音频信号帧的预估带宽状态,并利用对应的预估带宽状态设置相关编码参数进行瞬态噪声整形编码。当检测到编码参数异常时,调整相关编码参数;当未检测到编码参数异常时,将预估带宽状态作为实际带宽状态进行编码。

例如,当连续出现的全频带信号次数不小于预设的频带计数门限值,且连续出现的部分频带信号的次数不小于预设的频带计数门限值时,判断连续出现的全频带信号次数大于连续出现的部分频带信号的次数,则根据当前帧的采样率设置相关编码参数进行瞬态噪声整形编码。在检测到编码参数异常时,将后续帧的相关编码参数调整为根据当前帧的最大带宽设置相关编码参数进行瞬态噪声整形编码;当未检测到编码参数异常时,继续根据当前帧的采样率设置相关编码参数进行后续帧的瞬态噪声整形编码。

特别的,当连续出现的全频带信号次数小于预设的频带计数门限值,且连续出现的部分频带信号的次数小于预设的频带计数门限值时,判断连续出现的全频带信号次数与连续出现的部分频带信号的次数的大小,将出现次数多的频带信号的带宽状态作为当前帧之后的所有的音频信号帧的预估带宽状态,并利用对应的预估带宽状态设置相关编码参数进行瞬态噪声整形编码。当检测到编码参数异常时,调整相关编码参数;当未检测到编码参数异常时,将预估带宽状态作为实际带宽状态进行编码。

例如,当连续出现的全频带信号次数小于预设的频带计数门限值,且连续出现的部分频带信号的次数小于预设的频带计数门限值时,判断连续出现的全频带信号次数大于连续出现的部分频带信号的次数,则根据当前帧的采样率设置相关编码参数进行瞬态噪声整形编码。在检测到编码参数异常时,将后续帧的相关编码参数调整为根据当前帧的最大带宽设置相关编码参数进行瞬态噪声整形编码;当未检测到编码参数异常时,继续根据当前帧的采样率设置相关编码参数进行后续帧的瞬态噪声整形编码。

该具体实施例,通过减少音频信号的带宽检测次数,节省LC3编码过程的算力,加快LC3编码的编码速率。

在本申请的一个具体实施例中,S103还包括,在连续瞬态噪声整形激活的次数不小于预定的激活次数阈值时,判断出现了瞬态信号。

在本申请的一个具体实施例中,当瞬态噪声整形是激活状态时,更新连续瞬态噪声整形激活计数器,在连续瞬态噪声整形激活计数器的值大于激活次数阈值时判断当前帧是瞬态信号,在瞬态信号出现时根据全带宽计数器和部分带宽计数器判断后续帧的带宽状态。通常情况下,瞬态信号在一段音频信号中连续出现的概率并不大。

优选的,连续瞬态噪声整形激活计数器门限值设置为1。

该具体实施例,提高了编码器判断的准确度,避免了因为音频信号带宽判断错误造成的编码错误。

在本申请的一个具体实施例中,在利用音频信号中的连续多帧信号判断得到编码器所编码的音频信号的带宽后,编码器在对所编码的音频信号的后续帧进行编码时不再进行带宽检测,直接利用判断得到的带宽状态对后续帧进行编码。

该具体实施例,节省了编码器在对音频信号编码的带宽检测时的计算量。

为更好的表述本申请的思想,以两个具体的实施例来体现本申请的执行过程。

例如,一段音频信号其采样率是16kHz,其最大有效带宽是4kHz,即该段音频信号是部分频带信号。当瞬态噪声整形是激活状态第一次出现时,连续全带宽计数器的值为1,连续部分带宽计数器为0。当瞬态噪声整形是激活状态第四次出现时,连续全带宽计数器的值为0,连续部分带宽计数器的值为3。因此,该段音频信号为部分带宽信号,在对后续的音频信号编码时,跳过其带宽检测。

例如,一段音频信号其采样率是16kHz,其最大有效带宽是8kHz,即该段音频信号是全频带信号。当瞬态噪声整形是激活状态第一次出现时,连续全带宽计数器的值大于3,连续部分带宽计数器的值为0。因此,该段音频信号为全带宽信号,在对后续的音频信号编码时,跳过其带宽检测。

图3示出了本申请一种蓝牙音频编码装置的具体实施方式。

在图3所示的具体实施方式中,蓝牙音频编码装置主要包括:带宽状态判断模块301,用于在蓝牙连接关系建立后进行蓝牙音频编码的过程中,在瞬态噪声整形编码之前,对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断;

连续出现计数模块302,用于分别对全频带信号帧的连续出现次数和部分频带信号帧的连续出现次数进行计数;

后续音频信号带宽判断模块303,用于在瞬态信号出现时,根据全频带信号帧的连续出现次数、部分频带信号帧的连续出现次数以及预定的频带计数门限值,将当前帧之后的所有音频信号帧都判断为全频带信号帧或者部分频带信号帧;

其中,全频带信号帧的最大带宽是其采样率的一半,部分频带信号帧的最大带宽小于其采样率的一半。

在本申请的一个具体实施例中,蓝牙音频编码装置还包括,用于在瞬态信号出现时,若连续出现的全频带信号帧的次数小于预定的频带计数门限值,并且连续出现的部分频带信号帧的次数小于预定的频带计数门限值,则继续进行对当前帧进行带宽检测并对当前帧是全频带信号帧还是部分频带信号帧进行判断的模块。

在本申请的一个具体实施例中,继续编码模块,用于若当前帧被判断为全频带信号帧,则根据当前帧的采样率设置相关编码参数进行瞬态噪声整形编码;若当前帧被判断为部分频带信号帧,则根据当前帧的最大带宽设置相关编码参数进行瞬态噪声整形编码。

本申请提供的蓝牙音频编码装置,可用于执行上述任一实施例描述的蓝牙音频编码方法,其实现原理和技术效果类似,在此不再赘述。

在本申请的另一个具体实施方式中,一种计算机可读存储介质,其存储有计算机指令,计算机指令被操作以执行上述实施例中描述的蓝牙音频编码方法。

在本申请的一个具体实施例中,本申请一种蓝牙音频编码方法中各功能模块可直接在硬件中、在由处理器执行的软件模块中或在两者的组合中。

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

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

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

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

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

17页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:音频处理方法、装置、存储介质及计算机程序

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类