基于时域混叠消除的无线音频压缩、解压缩方法及其设备的制作方法

文档序号:2825966阅读:386来源:国知局
基于时域混叠消除的无线音频压缩、解压缩方法及其设备的制作方法
【专利摘要】基于时域混叠消除的无线音频压缩、解压缩方法,包括:音频压缩和音频解压,前者包括对输入的音频PCM数据加窗滤波、MDCT变换、量化因子计算、声学掩蔽曲线计算、比特分配、量化计算、生成比特流;后者包括解析码流、解析量化因子、升学掩蔽曲线计算、比特分配、反量化、IMDCT、凯塞窗滤波、时域混叠。还包括执行上述方法的音频编码器和音频解码器。
【专利说明】基于时域混叠消除的无线音频压缩、解压缩方法及其设备
【技术领域】
[0001]本发明涉及一种面向无线应用的音频压缩、解压缩方法及相应的音频编码器和解码器。
【背景技术】
[0002]基于嵌入式技术的无线数字音频系统有效地将嵌入式技术、音频编解码技术、无线传输技术结合在一起,和基于PC的数字音频系统相比,基于嵌入式技术的无线数字音频设备具有体积小,携帯方便,功能专业化高,成本较低,稳定性高,实时性好等特点。虽然无线音频传输与有线音频传输相比,具有使用灵活方便的特点,但是会受到带宽、延迟和功耗等方面的限制。而目前蓝牙SBC无线音频系统的成本相对较高,且音质较低。因此,针对无线传输设计ー款在低码率、低延迟和低计算复杂度的情况下实现较高音质的音频编解码算并将之应用在基于嵌入式技术的无线音频系统中是十分有意义的。
[0003]目前公知的高音质音频编码器按照编码方式可以分为两类。第一类是有损音频编码器,该类型编码器通过分析音频数据频域上的相关性对音频数据进行压缩,第二类是无损音频编码器,该类型编码器通过分析音频数据时域上的相关性对音频数据进行压縮。
[0004]第一类编码器采用变换域结合心理声学模型的压缩方法或者时域预测结合自适应量化器的压缩方法对音频数据进行压缩,变换域方法是将时域信号转换成频域,而后通过心理声学模型分析该音频信号的频域分量特性,最終通过量化器控制各频域分量的量化精度。由于有心理声学模型的分析,变换域方法可以在保证人耳主观感受的情况下最大限度地压缩音频数据流,所以变换域方法的特点就是高延迟、高复杂度、高音质和低码流。主流的变换域方法有,余弦调制滤波器组实现的子带编码,如MP1、MP2和MP3 ;改进型离散余弦变换(MDCT)实现的时域混叠消除编码(TDAC),如dolby AC3,而AAC用的则是上述两种变换域方法的结合。时域预测方法是通过消除音频信号的时域相关性来进行压缩,通过计算音频数据和预测值的差值,并设定自适应量化器的量化级、更新下一数据的预测值。并传输当前数据和预测值的差值。由于采用残差的传输方式和自适应的量化器,时域预测方法在保证一定压缩比的情况下很难将提高主观音质水平,所以时域预测方法的特点是低延迟、低运算量、低音质和中等的压缩比。常见的时域预测方法有ADPCM等。
[0005]第二类编码器采用时域预测结合熵编码的方法对音频数据进行压缩,主要特点是高延迟、无损音质、低运算量和低压缩比。无损编码通过时域测试等方式分析时域信号的相关性和数据的冗余性,通过熵编码来压缩时域数据的冗余。这种方式最大的特点就是音频数据的无损压缩,能完美的重现压缩前的音频数据,但是由于时域数据的冗余度分析需要大段时域数据且冗余度会根据数据的变化而改变,因而无损压缩方法的帧长较长,且压缩后的数据量会随音频数据的变化而变化。常见的无损压缩方法有WAVPACK、FLAC等。
[0006]由于基于无线音频传输的音频码流需要的高音质、低延迟、高压缩比且码流在可控的情况下是固定的,所以纯软件运算的第一类编码器中的变换域编码因为其高延迟和高运算量无法达到无线传输的要求,而时域预测编码又因其压缩比和低音质而同样无法满足要求。无损算法虽然音质堪称完美,但因其低压缩比和码流不定限制了其在无线音频方面的应用。本发明在软硬件结合运行的情况下,改进和实现了第一类编码器,使之适合无线音频应用的需求。

【发明内容】

[0007]为了克服已有音频传输技术的无法同时有效满足无线音频传输的高音质、低延迟、高压缩比且码流不可控的不足,本发明提供一种适应无线音频应用的无线音频压缩、解压缩方法及相应的音频编码器音频解码器,可在保证音频数据高音质的情况下实现了高压缩比、低延迟和中等的运算复杂度。
[0008]本发明解决其技术问题所采用的技术方案是:
[0009]1.基于时域混叠消除的无线音频压缩、解压缩方法,包括以下步骤:
[0010]步骤1、无线音频压缩,具体包括:
[0011]1.1通过Kaiser窗滤波器对输入的音频PCM数据加窗;
[0012]1.2将获得的经过加窗滤波的音频数据进行离散余弦变换,获得变换频域信号;
[0013]1.3计算变换后频域信号的能量強度,获得各量化比特数,通过归类分析,将量化比特数写入码流;
[0014]1.4根据量化比特数计算频域信号频谱能量表(PSD),根据能量表和基于心理声学的频域能量掩蔽阈值将频域信号分为频谱能量带,计算得出各频域信号的比特分配数;
[0015]1.5根据频域信号的量化比特数和比特分配数,采用自适应的量化仲裁算法选择不同的量化器对频域信号进行量化;
[0016]步骤2.无线音频解压缩,具体包括:
[0017]2.1从输入的编码后码流中寻找同步字,而后解析出声道数据和码率參数;
[0018]2.2从码流中解析量化因子。
[0019]2.3根据量化因子和码率信息,计算心理声学掩蔽曲线,根据曲线计算数据传输比特位;
[0020]2.4从码流中解析出量化后数据,然后根据量化因子和比特分配数计算MDCT系数;
[0021]2.5对MDCT系数进行頂DCT运算,将MDCT系数转换成时域音频数据,基于頂DCT的运算特性,采用硬件音频加速単元AUAC作为其实现平台;
[0022]2.6对时域音频数据加凯塞窗,并与前ー帧PCM数据做时域混叠处理,计算得出最终的PCM音频数据;
[0023]2.7根据声道数的配置,将PCM音频数据转换成PCM码流。
[0024]进ー步,步骤1.2中采用硬件音频加速模块(AUAC)实现离散余弦变换(MDCT),根据AUAC功能特性,将MDCT划分为3个功能模块:余弦加窗滤波模块(用AUAC的MAC模块实现),256点快速傅里叶变换模块(用AUAC的FFT模块实现)和正弦窗滤波模块(用AUAC的MAC模块实现)。
[0025]步骤1.3所述归类分析方法是根据输入的频域信号的能量强度将量化因子分为D15、D25和D45等3类,分别以不同的方式写入压缩比特流。其中D15类每个量化因子单独使用7比特进行传输比特;D25类的每2个量化因子共用ー个7比特作为传输比特;D45类的量化因子每4个量化因子共用ー个7比特作传输比持。
[0026]用于前述无线音频压缩、解压缩方法的设备,包括音频编码器和音频解码器,其特征在于:
[0027]所述音频编码器包括:凯塞窗加窗滤波単元,用于对输入的音频数据加凯塞窗滤波;离散余弦变换单元,对凯塞窗加窗滤波单元的结果进行MDCT滤波,并将结果输出给量化因子计算单元,该单元运算由AUAC实现,通过对AUAC编程,实现MDCT的硬件运算,将时域音频数据转换为频域MDCT系数,MDCT滤波单元为128点MDCT变换,为时域到频域的无损变换;量化因子计算单元,读取MDCT滤波单元输出的MDCT系数,并计算MDCT系数的能量強度,将能量強度归类为3类量化因子,控制声学掩蔽计算单元的计算和量化器组的计算,并写入压缩码流;心理声学掩蔽曲线计算単元,读取频域能量分析単元的结果,实时计算声学掩蔽曲线,将掩蔽结果用于比特分配;比特分配単元,根据心理声学単元的结果修改掩蔽阈值表,修改声压曲线,将MDCT系数划分为N个频带分块,并对个频带分块计算其比特分配数,并将结果用于量化器単元;量化器组单元,根据频域能量分析单元输出的比特量化因子和比特分配单元输出的比特分配数数对MDCT滤波单元的输出的MDCT系数进行分组量化,得到量化后的数据;码流生成単元,用于将帧头,量化因子计算单元输出的量化因子和量化器组输出的量化后后频带数据打包生成码流;
[0028]以及与所述的音频编码器配套的音频解码器,所述音频解码器包括:码流解析单元,用于读取同步字判断帧头,分析帧长,分析码流边信息;量化因子解析単元,在码流解析単元解析完帧头等头信息之后,从码流中解析量化因子,用于比特分配和反量化;声学掩蔽曲线计算単元,根据量化因子単元计算的量化因子实时计算声学掩蔽曲线,将掩蔽结果用于比特分配;比特分配単元,利用声学掩蔽曲线计算単元的输出和量化因子计算比特分配数据;反量化器组单元,用于根据量化因子计算单元输出量化因子、比特分配単元计算的比特分配数和量化因子输出的量化后数据进行反量化运算,计算IMDCT系数;反离散余弦变换单元,将反量化単元得到的頂DCT系数用于MDCT计算,将MDCT系数转换为时域数据;凯塞窗滤波器,对頂DCT单元计算出的时域数据进行凯塞窗滤波,生成时域音频数据;PCM生成単元,用于根据单/双声道的不同将PCM数据按要求排列成PCM流。
[0029]本发明利用时域混叠消除思想,提供一种无线音频压缩方法。该方法首先采用凯塞窗加窗滤波器,对输入时域数据滤波以消除边际效应;采用离散余弦变器(MDCT),将时域音频数据转换为频域数据(MDCT系数);通过基于心理声学掩蔽曲线实时输入频域信号的音频掩蔽曲线,根据掩蔽曲线分析MDCT系数频域掩蔽特性并为其分配传输比特,采用分组的量化器对不同掩蔽特性的MDCT系数使用不同的量化器进行量化。另外,该方法采用软硬件并行思想实现音频压缩算法:采用硬件平台中的硬件音频加速器(AUAC)计算核心运算转换部分(加窗滤波、MDCT转换),通过CPU与AUAC的协同操作,运用流水线实现音频压缩算法的并行运行,提高音频编解码速度,节省硬件资源。本发明同时提供与所述无线音频压缩方法相应的无线音频解压缩方法。
[0030]本发明还提供利用所述无线音频压缩方法和无线音频解压缩方法实现的音频编码器和解码器。音频编码器包括:可配置的去边际效应凯塞窗滤波;离散余弦变换器通过离散余弦变换,将经凯塞窗滤波的时域采样转换为频域信号(MDCT系数);硬件音频加速器(AUAC)利用可编程硬件加速功能加速滤波和余弦变换器;量化因子分析器计算子MDCT系数的频域能量值,计算量化因子,用于比特分配;基于心理声学掩蔽曲线的自适应比特分配器,根据MDCT数据实时计算声学掩蔽曲线,根据掩蔽曲线对MDCT系数分配比持;自适应量化器组按比特分配数对MDCT系数分块采用不同的量化器对音频数据进行量化,得到压缩后的数据。
[0031]音频解码器包括:码流解析器解析码流中通用部分,如采样率,声道模式和码率信息;量化因子解析器读取码流中量化因子部分,解析量化因子;比特分配器根据量化因子和比特池计算比特分配数;频域数据解析器解析码流中压缩后频域数据;反量化器根据解析的频域数据、量化因子和比特分配数计算子频带数据;反相滤波器对子频带数据反相滤波,得到还原的PCM数据;PCM生成器,将还原的PCM码流根据需求排列格式输出。
[0032]如上所述,本发明算法中核心运算部分时频转换过程由硬件平台中的可编程硬件音频加速器(AUAC)负责运算,实现和算法其他部分的并行执行,充分利用硬件的性能优势,提高算法的执行速度。AUAC作为专门针对音频音效算法所设计的音频加速模块,根据音频算法的特点提供5种运算模块:
[0033]DADD模块:矢量加法/減法运算,可以一次运算2个矢量的对应元素的和值/差值。
[0034]2) MUL模块:矢量乘法,可以一次运算2个矢量对应元素的乘积。
[0035]3)ACC模块:标量累加,可以一次运算ー个矢量本身元素的累加值。
[0036]4)MAC模块:乘累加,可以一次运算2个矢量对应元素的N次乘累加的結果。
[0037]5)FFT模块:快速傅里叶变换/反变换,可以一次运算N点的快速傅里叶变换。
[0038]用户可以根据算法的需要和以上5种运算模式构建运算模型,配置AUAC,实现算法的运行。
[0039]本发明的有益效果主要表现在:128?512点可调配的MDCT变换精细的分析了频域信号特性,心理声学掩蔽曲线的实时计算根据人耳特性分析对频域信号进行压缩,达到无损的音质效果,提高了压缩率;采用音频加速模块实现软硬件结压缩,使用流水线结果实现编解码算法的并行运行,减小了运算量。
【专利附图】

【附图说明】
[0040]图1是本发明音频压缩器的结构图。
[0041]图2是本发明音频压缩方法的流程图。
[0042]图3是本发明音频解压缩器的结构图。
[0043]图4是本发明音频解压缩方法的流程图。
[0044]图5是本发明音频压缩/解压系统的凯塞窗频响图。
[0045]图6是本发明音频加速模块AUAC设计使用原理图。
[0046]图7是本发明利用AUAC并行执行压缩算法的示意图。
[0047]图8是本发明压缩/解压算法对Ikhz正弦波重构效果图。
【具体实施方式】
[0048]下面结合附图对本发明作进ー步描述,參照附图:
[0049]本发明解决其技术问题所采用的技术方案是:[0050]1.基于时域混叠消除的无线音频压缩、解压缩方法,包括以下步骤:
[0051]步骤1、无线音频压缩,具体包括:
[0052]1.1通过Kaiser窗滤波器对输入的音频PCM数据加窗;
[0053]1.2将获得的经过加窗滤波的音频数据进行离散余弦变换,获得变换频域信号;
[0054]1.3计算变换后频域信号的能量強度,获得各量化比特数,通过归类分析,将量化比特数写入码流;
[0055]1.4根据量化比特数计算频域信号频谱能量表(PSD),根据能量表和基于心理声学的频域能量掩蔽阈值将频域信号分为频谱能量带,计算得出各频域信号的比特分配数;
[0056]1.5根据频域信号的量化比特数和比特分配数,采用自适应的量化仲裁算法选择不同的量化器对频域信号进行量化;
[0057]步骤2.无线音频解压縮,具体包括:
[0058]2.1从输入的编码后码流中寻找同步字,而后解析出声道数据和码率參数;
[0059]2.2从码流中解析量化因子。
[0060]2.3根据量化因子和码率信息,计算心理声学掩蔽曲线,根据曲线计算数据传输比特位;
[0061]2.4从码流中解析出量化后数据,然后根据量化因子和比特分配数计算MDCT系数;
[0062]2.5对MDCT系数进行頂DCT运算,将MDCT系数转换成时域音频数据,基于頂DCT的运算特性,采用硬件音频加速単元AUAC作为其实现平台;
[0063]2.6对时域音频数据加凯塞窗,并与前ー帧PCM数据做时域混叠处理,计算得出最终的PCM音频数据;
[0064]2.7根据声道数的配置,将PCM音频数据转换成PCM码流。
[0065]进ー步,步骤1.2中采用硬件音频加速模块(AUAC)实现离散余弦变换(MDCT),根据AUAC功能特性,将MDCT划分为3个功能模块:余弦加窗滤波模块(用AUAC的MAC模块实现),256点快速傅里叶变换模块(用AUAC的FFT模块实现)和正弦窗滤波模块(用AUAC的MAC模块实现)。
[0066]步骤1.3所述归类分析方法是根据输入的频域信号的能量强度将量化因子分为D15、D25和D45等3类,分别以不同的方式写入压缩比特流。其中D15类每个量化因子单独使用7比特进行传输比特;D25类的每2个量化因子共用ー个7比特作为传输比特;D45类的量化因子每4个量化因子共用ー个7比特作传输比持。
[0067]用于前述无线音频压缩、解压缩方法的设备,包括音频编码器和音频解码器,其特征在于:
[0068]所述音频编码器包括:凯塞窗加窗滤波単元,用于对输入的音频数据加凯塞窗滤波;离散余弦变换单元,对凯塞窗加窗滤波单元的结果进行MDCT滤波,并将结果输出给量化因子计算单元,该单元运算由AUAC实现,通过对AUAC编程,实现MDCT的硬件运算,将时域音频数据转换为频域MDCT系数,MDCT滤波单元为128点MDCT变换,为时域到频域的无损变换;量化因子计算单元,读取MDCT滤波单元输出的MDCT系数,并计算MDCT系数的能量強度,将能量強度归类为3类量化因子,控制声学掩蔽计算单元的计算和量化器组的计算,并写入压缩码流;心理声学掩蔽曲线计算単元,读取频域能量分析単元的结果,实时计算声学掩蔽曲线,将掩蔽结果用于比特分配;比特分配単元,根据心理声学単元的结果修改掩蔽阈值表,修改声压曲线,将MDCT系数划分为N个频带分块,并对个频带分块计算其比特分配数,并将结果用于量化器単元;量化器组单元,根据频域能量分析单元输出的比特量化因子和比特分配单元输出的比特分配数数对MDCT滤波单元的输出的MDCT系数进行分组量化,得到量化后的数据;码流生成単元,用于将帧头,量化因子计算单元输出的量化因子和量化器组输出的量化后后频带数据打包生成码流;
[0069]以及与所述的音频编码器配套的音频解码器,所述音频解码器包括:码流解析单元,用于读取同步字判断帧头,分析帧长,分析码流边信息;量化因子解析単元,在码流解析単元解析完帧头等头信息之后,从码流中解析量化因子,用于比特分配和反量化;声学掩蔽曲线计算単元,根据量化因子単元计算的量化因子实时计算声学掩蔽曲线,将掩蔽结果用于比特分配;比特分配単元,利用声学掩蔽曲线计算単元的输出和量化因子计算比特分配数据;反量化器组单元,用于根据量化因子计算单元输出量化因子、比特分配単元计算的比特分配数和量化因子输出的量化后数据进行反量化运算,计算IMDCT系数;反离散余弦变换单元,将反量化単元得到的頂DCT系数用于MDCT计算,将MDCT系数转换为时域数据;凯塞窗滤波器,对頂DCT单元计算出的时域数据进行凯塞窗滤波,生成时域音频数据;PCM生成単元,用于根据单/双声道的不同将PCM数据按要求排列成PCM流。
[0070]本发明利用时域混叠消除思想,提供一种无线音频压缩方法。该方法首先采用凯塞窗加窗滤波器,对输入时域数据滤波以消除边际效应;采用离散余弦变器(MDCT),将时域音频数据转换为频域数据(MDCT系数);通过基于心理声学掩蔽曲线实时输入频域信号的音频掩蔽曲线,根据掩蔽曲线分析MDCT系数频域掩蔽特性并为其分配传输比特,采用分组的量化器对不同掩蔽特性的MDCT系数使用不同的量化器进行量化。另外,该方法采用软硬件并行思想实现音频压缩算法:采用硬件平台中的硬件音频加速器(AUAC)计算核心运算转换部分(加窗滤波、MDCT转换),通过CPU与AUAC的协同操作,运用流水线实现音频压缩算法的并行运行,提高音频编解码速度,节省硬件资源。本发明同时提供与所述无线音频压缩方法相应的无线音频解压缩方法。
[0071]本发明还提供利用所述无线音频压缩方法和无线音频解压缩方法实现的音频编码器和解码器。音频编码器包括:可配置的去边际效应凯塞窗滤波;离散余弦变换器通过离散余弦变换,将经凯塞窗滤波的时域采样转换为频域信号(MDCT系数);硬件音频加速器(AUAC)利用可编程硬件加速功能加速滤波和余弦变换器;量化因子分析器计算子MDCT系数的频域能量值,计算量化因子,用于比特分配;基于心理声学掩蔽曲线的自适应比特分配器,根据MDCT数据实时计算声学掩蔽曲线,根据掩蔽曲线对MDCT系数分配比特;自适应量化器组按比特分配数对MDCT系数分块采用不同的量化器对音频数据进行量化,得到压缩后的数据。
[0072]音频解码器包括:码流解析器解析码流中通用部分,如采样率,声道模式和码率信息;量化因子解析器读取码流中量化因子部分,解析量化因子;比特分配器根据量化因子和比特池计算比特分配数;频域数据解析器解析码流中压缩后频域数据;反量化器根据解析的频域数据、量化因子和比特分配数计算子频带数据;反相滤波器对子频带数据反相滤波,得到还原的PCM数据;PCM生成器,将还原的PCM码流根据需求排列格式输出。
[0073]如上所述,本发明算法中核心运算部分时频转换过程由硬件平台中的可编程硬件音频加速器(AUAC)负责运算,实现和算法其他部分的并行执行,充分利用硬件的性能优势,提高算法的执行速度。AUAC作为专门针对音频音效算法所设计的音频加速模块,根据音频算法的特点提供5种运算模块:
[0074]6) ADD模块:矢量加法/減法运算,可以一次运算2个矢量的对应元素的和值/差值。
[0075]7) MUL模块:矢量乘法,可以一次运算2个矢量对应元素的乘积。
[0076]8)ACC模块:标量累加,可以一次运算ー个矢量本身元素的累加值。
[0077]9)MAC模块:乘累加,可以一次运算2个矢量对应元素的N次乘累加的結果。
[0078]10)FFT模块:快速傅里叶变换/反变换,可以一次运算N点的快速傅里叶变换。
[0079]用户可以根据算法的需要和以上5种运算模式构建运算模型,配置AUAC,实现算法的运行。
[0080]參照图1,图1所示是根据本发明的一种音频编码器的结构图,包括:凯塞窗滤波器110,离散余弦变换器120,量化因子计算器130,掩蔽曲线计算器140,比特分配器150,量化器组160,码流产生単元170。
[0081]首先本发明使用的时域混叠消除算法体系需要输入的音频数据经过边界收敛的窗函数滤波器,之后经过加窗的音频数据进行离散余弦变换(MDCT)得到频域的MDCT系数,可配置的MDCT可以实现64点到512点的MDCT变换,分别针对不同的音质,延迟和功耗要求,一般情况下使用的256点的MDCT,既能达到精准的频域谱线分割,提高音质,又能实现低延迟,低功耗。
[0082]量化因子计算器,根据MDCT系数分析频域信号能量,计算各频线MDCT系数对应的量化因子,并根据信号能量的大小将量化因子分为3类,分别写入码流。
[0083]声学掩蔽曲线计算器根据MDCT系数频域信号能量计算对应声学掩蔽曲线,重新计算各频线之间信号掩蔽关系。
[0084]比特分配器根据频线的信号掩蔽关系和码率參数对各频线的MDCT系数重新分配比特数。
[0085]量化器组根据比特分配数和MDCT系数频域信号能量,将MDCT系数分成4组,分别选择不同的量化器对MDCT系数进行量化。
[0086]码流产生单元将含有解码关键參数的比特率、声道数等信息会同量化因子码流和量化后数据码流整合为压缩后码流。
[0087]图2所示是根据本发明的压缩方法的流程图,
[0088]首先,在步骤210读入PCM码流。
[0089]接着,在步骤220采用凯塞窗滤波器对PCM码流加窗滤波。
[0090]接着,在步骤230采用离散余弦变换(MDCT)对加窗的PCM数据进行离散余弦变换,得到频域的MDCT系数。
[0091]根据本发明的软硬件并行执行思想,步骤210、220和230由硬件音频加速模块(AUAC)实现(实现方式见图6、图7)。
[0092]接着,在步骤240,分析MDCT系数计算频域信号能量,计算量化因子并将量化因子分块写入码流。
[0093]接着,在步骤250,根据MDCT系数的频域信号能量计算声学掩蔽曲线,获得MDCT系数的频域掩蔽关系。
[0094]在步骤260中,根据MDCT系数的频域能量和频域掩蔽关系,计算MDCT系数的比特分配数。
[0095]在步骤270中,根据MDCT系数的频域能量和比特分配数,选择不同的量化器对MDCT系数进行量化。
[0096]在步骤280中,将码流同步字、声道信息、码率信息、量化因子比特流和量化数据比特率整合为压缩后的TDAC码流。
[0097]图3所示为根据本发明实现的解码器的结构图,包括:码流解析器310,量化因子解析器320,声学掩蔽曲线计算器330,比特分配器340,反量化器组350,反离散余弦滤波器(IMDCT ) 360,凯塞窗滤波器370,PCM时域混叠器380。
[0098]码流解析器的功能是解析压缩后的TDAC码流,获得声道信息和码率信息等解码相关信息。
[0099]量化因子解析器的功能是从码流解析量化因子信息。
[0100]声学掩蔽曲线计算器的功能是根据计算声学掩蔽曲线,分析MDCT系数频线间的声学掩蔽关系。
[0101]比特分配器的功能是根据MDCT的量化字和频线间声学掩蔽关系计算各频线的比特分配数。
[0102]反量化器组的功能是对MDCT系数压缩后的码流进行反量化。
[0103]反离散余弦变换的功能是对MDCT系数进行MDCT,得到时域PCM数据。
[0104]凯塞窗滤波器的功能是给頂DCT变换的到的时域PCM数据进行加窗滤波得到音频PCM数据。
[0105]时域混叠器的功能是对当前帧音频PCM数据与前一帧音频PCM数据进行时域混叠,消除因MDCT变换所帯来的频谱扩散效应,获取最終的PCM音频数据。
[0106]图4所示是根据本发明实现的解压算法的流程图,
[0107]首先,在步骤410解析码流器解析输入的压缩码流,解析出声道信息、码率信息。
[0108]接着,在步骤420,从码流中解析出量化因子。
[0109]接着,在步骤430,根据量化因子分析MDCT系数频域能量,计算心理声学掩蔽曲线,获得MDCT系数的频域掩蔽关系。
[0110]接着,在步骤440,根据MDCT系数的量化因子和频域掩蔽关系计算MDCT系数的比特分配数。
[0111]接着,在步骤450,根据量化因子和比特分配数,采用不同的反量化器对压缩后的MDCT系数码流进行反量化,得到MDCT系数。
[0112]接着,在步骤460,对MDCT系数进行反离散余弦变换(MDCT),得到时域PCM数据。
[0113]接着,在步骤470和480,对MDCT得到的PCM数据进行加窗滤波和时域混叠,得到恢复后的时域音频数据。
[0114]图5所示的是凯塞窗的频响图,显示其对边界收敛的频响响应。
[0115]图6所示的是本发明的硬件音频加速器(AUAC)加速算法的设计流程:
[0116]首先,在步骤610中将算法中核心计算部分独立出来,并抽象成独立的数学模型。
[0117]接着,在步骤620中将根据数学模型根据AUAC的预算模式进行归类和修改,使之符合AUAC内置运算模式的要求,并根据该改进模型配置AUAC寄存器。
[0118]接着,在步骤630中,AUAC根据配置调用内部运算功能模块进行运算,实现模型算法的功能。
[0119]图7所示的是本发明中采用的软硬件结合的编程方结构,710为AUAC硬件处理模块,720为CPU软件处理模块,2个模块能够同时进行操作,实现软硬件并行操作,大大提高了算法的执行效率。
[0120]图8所示是本发明的压缩/解压算法重构的Ikhz正弦波(820)和原始的Ikhz正弦波(810)的比较,可以看到,经过本算法重构的Ikhz正弦波,信噪比仅比原始正弦波低4个db,可以达到无损的听觉效果。
【权利要求】
1.基于时域混叠消除的无线音频压缩、解压缩方法,包括以下步骤: 步骤1、无线音频压缩,具体包括: 1.1通过Kaiser窗滤波器对输入的音频PCM数据加窗; 1.2将获得的经过加窗滤波的音频数据进行离散余弦变换,获得变换频域信号; 1.3计算变换后频域信号的能量強度,获得各量化比特数,通过归类分析,将量化比特数写入码流; 1.4根据量化比特数计算频域信号频谱能量表(PSD),根据能量表和基于心理声学的频域能量掩蔽阈值将频域信号分为频谱能量带,计算得出各频域信号的比特分配数; 1.5根据频域信号的量化比特数和比特分配数,采用自适应的量化仲裁算法选择不同的量化器对频域信号进行量化; 步骤2.无线音频解压缩,具体包括: 2.1从输入的编码后码流中寻找同步字,而后解析出声道数据和码率參数; 2.2从码流中解析量化因子。 2.3根据量化因子和码率信息,计算心理声学掩蔽曲线,根据曲线计算数据传输比特位; 2.4从码流中解析出量化后数据,然后根据量化因子和比特分配数计算MDCT系数; 2.5对MDCT系数进行MDCT运算,将MDCT系数转换成时域音频数据,基于MDCT的运算特性,采用硬件音频加速単元AUAC作为其实现平台; 2.6对时域音频数据加凯塞窗,并与前ー帧PCM数据做时域混叠处理,计算得出最終的PCM音频数据; 2.7根据声道数的配置,将PCM音频数据转换成PCM码流。
2.如权利要求1所述的基于时域混叠消除的无线音频压缩、解压缩方法,其特征在于:步骤1.2中采用硬件音频加速模块(AUAC)实现离散余弦变换(MDCT),根据AUAC功能特性,将MDCT划分为3个功能模块:余弦加窗滤波模块(用AUAC的MAC模块实现),256点快速傅里叶变换模块(用AUAC的FFT模块实现)和正弦窗滤波模块(用AUAC的MAC模块实现); 步骤1.3所述归类分析方法是根据输入的频域信号的能量强度将量化因子分为D15、D25和D45等3类,分别以不同的方式写入压缩比特流。其中D15类每个量化因子単独使用7比特进行传输比特;D25类的每2个量化因子共用ー个7比特作为传输比特;D45类的量化因子每4个量化因子共用ー个7比特作传输比持。
3.用于权利要求1所述的无线音频压缩、解压缩方法的设备,包括音频编码器和音频解码器,其特征在于: 所述音频编码器包括:凯塞窗加窗滤波単元,用于对输入的音频数据加凯塞窗滤波;离散余弦变换单元,对凯塞窗加窗滤波单元的结果进行MDCT滤波,并将结果输出给量化因子计算单元,该单元运算由AUAC实现,通过对AUAC编程,实现MDCT的硬件运算,将时域音频数据转换为频域MDCT系数,MDCT滤波单元为128点MDCT变换,为时域到频域的无损变换;量化因子计算单元,读取MDCT滤波单元输出的MDCT系数,并计算MDCT系数的能量强度,将能量強度归类为3类量化因子,控制声学掩蔽计算单元的计算和量化器组的计算,并写入压缩码流;心理声学掩蔽曲线计算単元,读取频域能量分析単元的結果,实时计算声学掩蔽曲线,将掩蔽结果用于比特分配;比特分配単元,根据心理声学単元的结果修改掩蔽阈值表,修改声压曲线,将MDCT系数划分为N个频带分块,并对个频带分块计算其比特分配数,并将结果用于量化器単元;量化器组单元,根据频域能量分析单元输出的比特量化因子和比特分配单元输出的比特分配数数对MDCT滤波单元的输出的MDCT系数进行分组量化,得到量化后的数据;码流生成単元,用于将帧头,量化因子计算单元输出的量化因子和量化器组输出的量化后后频带数据打包生成码流; 以及与所述的音频编码器配套的音频解码器,所述音频解码器包括:码流解析単元,用于读取同步字判断帧头,分析帧长,分析码流边信息;量化因子解析単元,在码流解析単元解析完帧头等头信息之后,从码流中解析量化因子,用于比特分配和反量化;声学掩蔽曲线计算单元,根据量化因子単元计算的量化因子实时计算声学掩蔽曲线,将掩蔽结果用于比特分配;比特分配単元,利用声学掩蔽曲线计算単元的输出和量化因子计算比特分配数据;反量化器组单元,用于根据量化因子计算单元输出量化因子、比特分配単元计算的比特分配数和量化因子输出的量化后数据进行反量化运算,计算IMDCT系数;反离散余弦变换单元,将反量化単元得到的頂DCT系数用于MDCT计算,将MDCT系数转换为时域数据;凯塞窗滤波器,对頂DCT单元计算出的时域数据进行凯塞窗滤波,生成时域音频数据;PCM生成単元,用于根据单/双声道的不同将P`CM数据按要求排列成PCM流。
【文档编号】G10L19/002GK103489450SQ201310117937
【公开日】2014年1月1日 申请日期:2013年4月7日 优先权日:2013年4月7日
【发明者】杨洋, 姚嘉, 任金平, 高永泽 申请人:杭州微纳科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1