[发明专利]一种基于ARM平台的多路G729编解码方法在审
申请号: | 202210282029.8 | 申请日: | 2022-03-22 |
公开(公告)号: | CN114783451A | 公开(公告)日: | 2022-07-22 |
发明(设计)人: | 董彦磊;宋春晓;王志浩 | 申请(专利权)人: | 中国电子科技集团公司第五十四研究所 |
主分类号: | G10L19/12 | 分类号: | G10L19/12;G10L19/26 |
代理公司: | 河北东尚律师事务所 13124 | 代理人: | 王文庆 |
地址: | 050081 河北省石家庄市中*** | 国省代码: | 河北;13 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 arm 平台 g729 解码 方法 | ||
本发明提供一种基于ARM平台的多路G.729编/解码方法,属于语音编解码领域。本发明创造性地运用ARM处理器大量带饱和进位的DSP运算汇编指令、状态寄存器等高效实现了G.729的复杂运算,解决了现有G.729实现方式的弊端,实现了小型语音终端中多路G.729语音编解码。
技术领域
本发明属于语音编解码技术领域,具体来说是针对嵌入式语音终端或音视频终端,实现了嵌入式平台的多路G.729语音编解码。
背景技术
G.729是国际电信联盟提出的一种高质量低码率语音编码标准,G.729编码器的采样率是8KHz,编码后码率为8kbps。G.729编码标准采用共轭结构代数码激励线性预测(CS-ACELP)编码方案,综合了波形编码与参数编码的优点。由于G.729的低延时、低码率和高质量,G.729编解码算法在IP电话等语音通信中有着广泛的应用。但是,由于G.729算法复杂度较高,当前G.729在语音终端中的应用方式存在较大弊端。
当前G.729在语音终端中的应用方式主要有两种:一是基于专用编解码芯片或TI的DSP实现,但是该种应用方式不仅在芯片选型采购、板卡功耗、结构尺寸、处理器性能等方面受到很大制约,同时不能满足某些领域日益迫切的电子元器件的国产化要求;二是基于通用处理器的G.729软件实现,该种应用方式对处理器性能要求较高,一般应用于大中型服务器,在中低端嵌入式处理器平台即小型化语音终端上应用困难。
发明内容
本发明的目的是解决当前嵌入式平台中G.729语音编解码应用方式的弊端,提供一种基于ARM平台的多路G.729编/解码方法。该方法基于ARM编译器支持的函数内嵌机制、大量的针对数字信号基础运算和相关高级运算的汇编指令、APSR程序状态寄存器等进行了针对标准G.729软件的优化,大幅度提升了该软件的运行效率,使得基于中低端ARM嵌入式处理器平台可运行至少32路的G.729语音编解码,满足了ip电话、音视频会议等多种实际应用需求。
为实现上述目的,本发明采取的技术方案为:
一种基于ARM平台的多路G.729编码方法,包括以下步骤:
(1)对输入信号进行高通滤波和定标;
(2)对每一帧信号进行LP分析,计算LP滤波器的系数,将系数转换成线谱对,同时使用预测型两级矢量量化,量化为18bit;
(3)使用合成-分析的搜索程序来选择激励信号,即按照感知加权的失真测度使原始信号和重构信号之间的误差最小化;
(4)对每一帧计算一次激励参量,包括固定码本参量和自适应码本参量;其中,第一帧使用内插后的LP滤波器系数,第二帧使用没有内插的LP滤波器系数;
(5)在感知加权语音信号的基础上计算开环基音延迟;
(6)通过加权的合成滤波器滤波,得到目标信号;
该方法中,以函数内嵌的方式,运用汇编指令重新实现32位和16位的基础运算和高级运算函数,函数内运算过程中若发生饱和,则自动改变APSR饱和读取函数的返回值。
进一步的,以汇编方式实现方法中的循环过程。
一种基于ARM平台的多路G.729解码方法,包括以下步骤:
(1)根据接收到的比特流,得到15个参数,分别是L0、L1、L2、L3、P1、 P0、S1、C1、GA1、GB1、P2、S2、C2、GA2、GB2;其中,P0、P1、P2是基音延迟参数,GA1、GB1、GA2、GB2是增益参数,S1、C1、S2、C2是固定码本指针参数,L0、L1、L2、L3是LSP指针参数;
(2)根据基音延迟参数P0、P1、P2计算得到自适应码本矢量v(n);
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第五十四研究所,未经中国电子科技集团公司第五十四研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210282029.8/2.html,转载请声明来源钻瓜专利网。