当前位置:首页 > 单片机 > 单片机
[导读]摘要:对G.729语音编解码算法的原理进行了简要分析,并提出了一种基于DSP芯片TMS320VC5510的语音编解码算法的实现方法。针对算法特征及体系结构的特点,提出了一些有效的优化措施。实验结果表明,运算复杂度大大降低

摘要:对G.729语音编解码算法的原理进行了简要分析,并提出了一种基于DSP芯片TMS320VC5510的语音编解码算法的实现方法。针对算法特征及体系结构的特点,提出了一些有效的优化措施。实验结果表明,运算复杂度大大降低,且在语音的编解码压缩过程中具有很好的重建效果。

关键词:TMS320VC5510;语音编解码;G.729算法;优化

1 G.729算法介绍

由于G.729的算法复杂度较高,ITU提出了G.729的简化版本G.729A,作为G.729的附录Annex A。后来为了进一步提高压缩率,增加了G.729B,即G.729 AnnexB。在G.729B中,主要使用了VAD和CNG技术,使得语音通信中的静音部分进一步压缩。

1.1 G.729A

1.1.1 G.729A编码器

G.729A编码器的框图如图1所示。G.729A编码器由预处理、线性预测分析和量化内插、知觉加权、基音分析、脉冲响应的计算、目标信号的计算、自适应码本搜索、同定码本结构和搜索、增益量化以及参数编码等模块组成。

模拟语音信号经过话路带通滤波和8 kHz采样之后,量化成16位的PCM信号进入编码器,然后根据预处理后的输入信号进行线性预测分析,得到线性预测系数,即线性预测编码LPC(Linear Prediction Code)信息,利用该系数即可构造合成滤波器。激励信号经合成滤波器后生成重构信号,与输入信号相减后得到残差信号。该残差信号经误差加权滤波器处理,根据听觉感受改变频谱,反馈到控制回路,根据使加权残差信号均方差最小的原则确定激励信号及其增益。误差加权滤波器也是根据预测分析所得的LPC信息构造的。

基音分析模块通过自相关分析推得基音周期,据此信息搜素自适应码本,确定最佳自适应码本矢量,得到语音中具有准周期特性的激励;然后再搜素固定码本,根据最小化加权均方差(Mcan Square Error,MSE)的准则确定最佳固定码本矢量,得到语音模型的随机激励信号;最后再确定两个码本矢量的增益Gc和Gp,采用具有共匀框结构的两级码书进行矢量量化。上述过程确定的线性预测编码信息、自适应码本矢量、固定码本矢量和矢量增益构成完整的G.729声码器编码器参数。所有这些参数均以码本索引的形式发往接收端。

1.1.2 G.729A解码器

G.729A解码器结构框图如图2所示。首先从接收到码流中提取参数序号,解码这些序号得10 ms语音帧对应的编码参数。这些参数是线谱对LSP参数、两个分数基音延时、两个固定码本矢量与两组自适应和固定码本增益、每子帧LSP参数被内插并转换为LP(Linear Prediction)滤波器系数,然后以每5 ms子帧为单位合成语音,合成步骤如下:

①自适码本应和固定码本分别乘以各自的增益加起来构成激励。

②激励LP合成滤波器重构语音。

③重构语音信号经过后置处理,包括长时后置滤波、短时合成滤波和高通滤波。最后输出语音信号。

1.2 G.729B

G.729B是对G.729A的进一步优化,其最主要的机制是静音压缩。静音压缩主要涉及两个机制:VAD(Voice Activity Detection)和CNG(Comfort Noise Generation)。VAD主要是用于编码器,用来决定当前帧是否静音;而CNG则主要用于解码器,产生让人耳感觉舒服的噪声。

1.2.1 VAD机制

VAD算法每隔10 ms做一次判决。首先,VAD会从输入帧中提取参数,这些参数包括全带能量、低频带能量、过零率和某个频域参数。在静音段,这些参数的长时平均值随着背景噪声的性质而发生改变。每进来一帧,就要计算当前帧的参数与其长时平均值的差。根据这些差值参数,VAD可以得到初始的判决结果,最后对初始结果进行平滑,得到最终的判决结果。

1.2.2 CNG机制

舒适噪声是用伪白噪声激励内插后的LPC滤波器产生的,就跟解码器对解码后的激励进行滤波产生活动话音一样。激励水平和LPC滤波器是从前一个SID信息中获取的。子帧内插LPC滤波器是用SID的LSP参数作为当前的LSP,然后和前一帧的LSP作内插得到的,与活动帧一样。伪白噪声ex(n)是由跟活动话音同样类型的激励cx1(n)和高斯白噪声激励ex2(n)相加而产生的。G.729激励ex1(n)是由一个小增益的自适应激励和ACELP固定激励组成的,这改善了活动和非活动话音帧之间的跳变。白噪声ex2(n)的引入是为了产生一个更接近于白噪声的信号。在非活动话音期间,因为编码端和解码端需要保持同步,所以激励在两边都要产生。

首先,我们定义目标激励增益Gt为当前帧t合成激励必须要达到的平均能量的平方根。Gt是用下面的平滑公式计算得到的,其中GSID是解码后的SID增益。

每帧的80个样本分成两个长度为40个样本的子帧。对于每一个子帧,CNG激励样本是用下面的算法合成的:

①从间隔[40,103]中随机选择一个基音延迟。

②根据G.729 ACELP码结构随机选择网格、脉冲符号和位置来构建子帧的固定码本矢量。

③计算单位增益的自适应激励信号,记作ea(n),n=0~39;选择的子帧固定激励被记作ef(n),n=0~39。

④与活动帧一样,伪白噪声ex(n)是由跟活动话音同样类型的激励ex1(n)和高斯白噪声激励ex2(n)相加而产生的。G.729激励ex1(n)是由一个小增益的自适应激励和ACELP固定激励组成的,这改善了活动和非活动话音帧之间的跳变。高斯白噪声ex2(n)的引入是为了产生一个更接近于白噪声的信号。在非活动话音期间,因为编码端和解码端需要保持同步,所以激励在两边都要产生。

即:

1.3 G.729A+B比特流结构

G.729A的比特流结构如表1所列。

由于G.729B引入了VAD和CNG,与G.729A相比码流结构增加了SID(Silence Insettion Descrtptor),其中带有静音的信息。SID的码流结构如表2所列。

2 基于DSP的系统实现方案

2.1 硬件平台设计

TMS320VC5510是一款16位定点数字信号处理器,具有较高的操作灵活性和运行速度;同等条件下其内核的功耗仅为54系列DSP的1/3,而且具有更高的代码执行效率,其指令也与54系列的相互兼容,可以很方便地进行代码的移植,它的最高数字信号的处理能力为200 MIPS,能够很好地满足本平台对运算的要求。本系统基于多片DSP处理器,实现多路话音的G.729(以下将G.729A+B简称为G.729)编解码,同时DSP通过HPI接口与上位机进行通信,并接受上位机的控制,DSP的PCM数据由FPGA进行协调,比特流数据的收发可以由FPGA进行协调或由HPI接口进行操作。整个系统的硬件平台如图3所示。

本设计首先将上位机来的IP包进行解包,再进行G.729编码到PCM编码的转换,得到的PCM信号送往FPGA内的TDM交换矩阵做时隙交换或实现会议功能,再将需要输出的PCM信号作编码转换,封装成IP包后发往上位机。

2.2 系统软件设计

本设计中McBSP0口接收数据处理,主要进行话音编码,并将编码比特流从HPI接口送出,HPI接口接收数据处理,主要进行话音解码,并将解码后的PCM数据从McBSP0口送出。软件系统为了保证McBSP0和HPI接口接收数据的正常处理,还需实现一些辅助功能模块包括:系统初始化模块、支持系统在线配置的模块以及系统收发数据的同步检测模块。系统软件流程如图4所示。

2.2.1 编码过程

G.729编码器的流程如图5所示。首先,编码器会初始化,主要是初始化各缓冲区;然后编码器对输入的原始语音信号进行预处理,包括高通滤波和幅度减半。其中,高通滤波的截止频率为140 Hz,它是一个二阶的零极点滤波器,目的是要去除输入信号中的低频十扰。对输入信号进行预处理以后,编码器开始编码,这是通过调用汇编函数Coder_ld8a实现的;编码产生的参数使用函数prm2bits转化为比特流,送到信道里传输。

2.2.2 解码过程

G.729解码器流程如图6所示。与编码器类似,解码器首先要进行初始化,特别是初始化缓冲区;接着解码器从输入码流中提取参数;由于码流在信道的传输过程中可能发牛错误,所以从码流中提取得到参数后应该进行奇偶校验,以确定参数是正确的;通过了奇偶校验后,解码器正式开始解码,这是通过调用汇编函数Decod_ld8a实现的;解码重建语音信号后,还应该进行后滤波和后处理。其中,后处理起高通滤波和幅度翻倍的作用。

3 系统编解码算法性能测试

编解码算法性能包括两方面:运算量和存储要求。要达到高性能,不仅要运算量低,而且存储器使用也要少。表3和表4分别列出了编解码器的运算量和存储器使用情况。

为了验证编解码器是否正确,采用了如下测试程序进行验证:

结语

本设计中基于TMS320VC5510的语音编解码系统整体运算量为45 MIPS,传输速率8 kb/s,压缩比为16/1,合成语音的质量主观评价分MOS分达4.0。此系统工作稳定可靠,有较高的实用价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭