CN114299971A - 一种语音编码方法、语音解码方法和语音处理装置 - Google Patents
一种语音编码方法、语音解码方法和语音处理装置 Download PDFInfo
- Publication number
- CN114299971A CN114299971A CN202111650117.0A CN202111650117A CN114299971A CN 114299971 A CN114299971 A CN 114299971A CN 202111650117 A CN202111650117 A CN 202111650117A CN 114299971 A CN114299971 A CN 114299971A
- Authority
- CN
- China
- Prior art keywords
- processor
- data
- general
- speech
- intermediate data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请公开了一种语音编码方法、语音解码方法和语音处理装置。其中,语音编码方法应用于语音处理装置,语音处理装置包括耦接的通用处理器和逻辑处理器;通用处理器和逻辑处理器协同对至少一路第一语音数据进行编码得到第一编码数据,其中通用处理器用于执行编码过程中的非循环计算部分,逻辑处理器用于执行编码过程中的循环计算部分。通过上述方式,本申请能够提升语音编解码的效率。
Description
技术领域
本申请涉及语音技术领域,特别是涉及一种语音编码方法、语音解码方法和语音处理装置。
背景技术
随着通信、计算机网络等技术的飞速发展,语音编解码技术得到了发展和广泛应用。尤其是近几十年来,语音编解码技术在移动通信、卫星通信、多媒体技术等方面得到普遍应用。语音是人类最重要、最有效、最常用和最方便的交换信息的形式,是人们思想疏通和情感交流的主要途径,在实际的语音通话中,有些信道难以扩展且通信质量差;有些信道正被广泛使用,短期内难以更新;有些昂贵的信道,每压缩一个比特都意味着节省开支。因此,语音编解码无疑在语音通信及人类信息交流中占有举足轻重的地位。
发明内容
本申请主要解决的技术问题是提供一种语音编码方法、语音解码方法和语音处理装置,能够提升语音编解码的效率。
为解决上述技术问题,本申请第一方面提供了一种语音编码方法,该方法应用于语音处理装置,语音处理装置包括耦接的通用处理器和逻辑处理器;通用处理器和逻辑处理器协同对至少一路第一语音数据进行编码得到第一编码数据,其中通用处理器用于执行编码过程中的非循环计算部分,逻辑处理器用于执行编码过程中的循环计算部分。
为解决上述技术问题,本申请第二方面提供了一种语音解码方法,该方法应用于语音处理装置,语音处理装置包括耦接的通用处理器和逻辑处理器;通用处理器和逻辑处理器协同对至少一路第二编码数据进行解码得到第二语音数据,其中通用处理器用于执行解码过程中的非循环计算部分,逻辑处理器用于执行解码过程中的循环计算部分。
为解决上述技术问题,本申请第三方面提供了一种语音处理装置,该装置包括耦接的通用处理器、逻辑处理器和存储器;通用处理器和逻辑处理器用于协同对至少一路第一语音数据进行编码得到第一编码数据,和/或对至少一路第二编码数据进行解码得到第二语音数据,其中通用处理器用于执行编码和/或解码过程中的非循环计算部分,逻辑处理器用于执行编码和/或解码过程中的循环计算部分;存储器用于存储通用处理器和逻辑处理器工作所需的指令与数据。
本申请的有益效果是:区别于现有技术的情况,本申请利用耦接的通用处理器和逻辑处理器协同进行编码和/或解码处理,其中,逻辑处理器可以提供强大的算力,通用处理器可以提供高效便捷的开发方式,由此,可以将语音编解码算法中占用内核资源较多,且耗时较长的循环计算部分放在逻辑处理器中执行,其余的非循环计算部分由通用处理器执行,从而可以提升语音编解码的效率,进而可以实现多路并行语音编解码,使得资源得到充分的利用,降低硬件成本等。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要的附图作简单的介绍,显而易见地,下面描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请语音处理装置一实施例的结构示意框图;
图2是本申请语音处理装置另一实施例的结构示意框图;
图3是图2中语音处理电路一实施例的结构示意框图;
图4是本申请语音处理装置又一实施例的结构示意框图;
图5是本申请语音处理装置再一实施例的结构示意框图;
图6是编码器对应的语音处理装置的结构示意框图;
图7是解码器对应的语音处理装置的结构示意框图;
图8是本申请语音编码方法一实施例的流程示意图;
图9是图8中步骤S11的另一实施方式的流程示意图;
图10是图9中步骤S21的另一实施方式的流程示意图;
图11是编码部分通用处理器向逻辑处理器传递数据的格式的示意图;
图12是图11中步骤S212的另一实施方式的流程示意图;
图13是图11中步骤S214的另一实施方式的流程示意图;
图14是编码部分逻辑处理器向通用处理器传递数据的格式的示意图;
图15是本申请语音解码方法一实施例的流程示意图;
图16是图15中步骤S31的另一实施方式的流程示意图;
图17是图16中步骤S41的另一实施方式的流程示意图;
图18是解码部分通用处理器向逻辑处理器传递数据的格式的示意图;
图19是图17中步骤S412的另一实施方式的流程示意图;
图20是图17中步骤S414的另一实施方式的流程示意图;
图21是解码部分逻辑处理器向通用处理器传递数据的格式的示意图;
图22为第一语音数据和第二语音数据在时域和频域的对比图。
具体实施方式
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
语音编解码就是将语音信号数字化,数字化之后再进行传输、存储或处理,可以充分利用数字信号处理的各种技术。为了减小存储空间或降低传输比特率节省带宽,还需要对数字化之后的语音信号进行编解码。
国际上研究和制定移动音频标准的主要组织有国际电信联盟(InternationalTelecommunications Union,ITU)、国际标准化组织(International Organization forStandardization,ISO)、第三代合作伙伴计划组织(the 3rd Generation PartnershipProject,3GPP)、欧洲电信标准化组织(European Telecommunications StandardsInstitude,ETSI)等。ITU发布一系列的语音编解码标准,其中窄带语音编码标准由G711、G721、G723、G726、G727、G728、G729、G723.1;宽带语音编解码标准有G722、G722.1、G722.2、G729.1。这些G系列的移动语音编解码标准能够满足不同种类的移动语音通信的应用需求。
目前,语音编解码技术的实现方案主要分为外置编解码器和内置软件编解码器。外置编解码器的方案是将语音压缩算法采用专用芯片实现,以元器件的方式应用到项目中;内置软件编解码器的方案是基于通用微控制平台(MCU平台)实现语音编解码算法。
其中,外置编解码器采用的芯片属于专用芯片,集采集和压缩为一体,采用UART接口传输压缩语音数据。其中,外置编解码器的芯片采用模拟信号处理,对外的接口一般是UART串口,支持的波特率较低,传输带宽无法提高,导致外置编解码器失真度大、速率慢、传输带宽低;其次,目前的声码器(编解码器)芯片功能单一,可支持的算法少,且算法复杂度低,导致在实际的应用中效果不理想,不能灵活应用,产品换代成本高,导致外置编解码器成本高、灵活性差、可扩展性差;另外,外置编码器无法同时实现语音编解码,以及无法同时支持3路以上的语音编码或解码。
内置软件编解码器基于通用MCU平台,实现相应语音压缩算法。随着通用MCU的发展,其性能、内存、数据读写速度等方面的极大的提升,使得较复杂的语音压缩算法也能实现,提高了语音压缩的性能。但是,通用MCU基于指令集的方式进行处理,使得多路并行语音压缩算法不能实现;同时由于嵌入式处理器内核主频的限制以及运算能力的限制,导致语音压缩算法中的大量运算非常耗时,延迟较大;语音压缩算法在运行过程中占用较高的处理器内核资源,使得处理器内核得不到有效利用,极大浪费资源。另外,虽然GPU内部含有大量的矩阵运算单元,可以提供超强的运算能力,但其硬件成本非常高昂,无法在嵌入式系统中使用。
目标,在军事装备领域,采用外置编解码器方案的国产化芯片的性能无法达到要求,内置软件编解码器方案由于语音编解码算法复杂度高,对国产嵌入式处理器性能要求高,在实际应用中很难有出色的表现,故现有产品无法满足军用产品的硬指标要求。
基于此,本申请提供了一种语音处理装置,包括耦接的通用处理器和逻辑处理器,通用处理器和逻辑处理器协同进行编码和/或解码处理,其中,逻辑处理器可以提供强大的算力,通用处理器可以提供高效便捷的开发方式,由此,可以将语音编解码算法中占用内核资源较多,且耗时较长的循环计算部分放在逻辑处理器中执行,其余的非循环计算部分由通用处理器执行,从而可以提升语音编解码的效率,进而可以实现多路(2路以上)并行语音编解码,使得资源得到充分的利用,降低硬件成本等。这里,仅简单阐述本申请的部分方案及效果。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,图1是本申请语音处理装置一实施例的结构示意框图。
如图1所示,在本实施例中,语音处理装置100可以包括耦接的通用处理器10、逻辑处理器20和存储器30。
通用处理器10和逻辑处理器20用于协同对至少一路第一语音数据进行编码得到第一编码数据,和/或对至少一路第二编码数据进行解码得到第二语音数据,其中通用处理器10用于执行编码和/或解码过程中的非循环计算部分,逻辑处理器20用于执行编码和/或解码过程中的循环计算部分。存储器30用于存储通用处理器10和逻辑处理器20工作所需的指令与数据。
可选地,通用处理器10可以为微处理器,例如ARM(Advanced RISC Machines)处理器。在本实施例中,通用处理器10例如是ARM Cortex-A9内核,即双核A9架构的ARM处理器。
存储器30可以但不限于为随机访问存储器(Random Access Memory,RAM),例如可以为静态随机存取存储器(Static Random-Access Memory,SRAM),动态随机存取存储器(Dynamic Random Access Memory,DRAM),同步动态随机存取存储器(SynchronousDynamic Random-Access Memory,SDRAM)等。在本实施例中,存储器30可以为DDR,即双倍速率同步动态随机存储器,是内存的其中一种。DDR包括DDR1、DDR2、DDR3,即分别为第一代、第二代和第三代双倍速率同步动态随机存储器。
逻辑处理器20可以但不限于为现场可编程门阵列(Field-Programmable GateArray,FPGA)和/或数字信号处理器(Digital Signal Processor,DSP)。其中,随着FPGA的发展,特别是带嵌入式软核或硬核的出现(如内嵌ARM cortex-A9硬核或micoblaze软核),其优势越发突出,使运算算力和灵活性得到大幅提升。在一些实施方式中,FPGA可以是XC7Z045/FMQL45。经过测验,基于XC7Z045/FMQL45实现本方案可以实现一帧语音数据(10ms)编码运行时间2.8ms,解码运行时间0.8ms,且可同时执行5路编码和10路解码,多路语音编解码的耗时与1路语音编解码运算耗时几乎一致,具体的执行的路数由FPGA资源决定,可灵活配置。
XC7Z020CLG400/FMQL20CLG400是FPGA的另外两种类型,在XC7Z020CLG400/FMQL20CLG400上实现编码过程和解码过程中的循环计算部分时,核心板的尺寸可控制在40mm*35mm,整体功耗可控制在5W以内,从而实现低成本、低功耗和小尺寸的优势。
请参阅图2至图3,图2是本申请语音处理装置另一实施例的结构示意框图,图3是图2中语音处理电路一实施例的结构示意框图。
如图2所示,在一些实施例中,逻辑处理器20可以包括至少一个并行的语音处理电路21。其中,每一语音处理电路21分别用于执行对一路第一语音数据的编码过程中的循环计算部分,和/或对一路第二编码数据的解码过程中的循环计算部分。语音处理电路21可以被编码部分和解码部分复用,例如,语音处理电路21可以用于执行对一路第一语音数据的编码过程中的循环计算部分,也可以用于执行对一路第二编码数据的解码过程中的循环计算部分。
如图3所示,在一些实施方式中,语音处理电路21包括循环计算单元211、缓存单元212,查找表单元213和管理配置单元214,循环计算单元211连接缓存单元212,查找表单元213和管理配置单元214。循环计算单元211用于进行循环计算,可以由可配置逻辑块(CLB)组成。缓存单元212用于提供缓存空间,缓存空间主要由片上存储器(如Block RAM)和FIFO(First Input First Output,先入先出队列)组成,FIFO本质上也是双端口Block RAM。其中,Block RAM为芯片内部的存储块。查找表(Look-Up-Table,简称LUT)单元用于完成纯组合的逻辑功能,用于为循环计算单元211提供查找的数据。管理配置单元214用于管理和配置语音处理电路21。
在一些实施方式中,缓存单元212可以包括临时变量缓存单元212和关联变量缓存单元212,分别用于缓存临时变量和关联变量。
在一些实施方式中,查找表单元213可以是片上存储器(如Block RAM,OCM)。当用户通过原理图或HDL语言描述了一个逻辑电路以后,PLD/FPGA开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入Block RAM。这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。
通用处理器10和逻辑处理器20可以通过总线与每个语音处理电路21中的管理配置单元214连接,从而完成每个语音处理电路21的管理和配置,其中,在编码部分主要包括:配置相关地址信号(例如用于存放第一中间数据的第一数据地址和用于存放第二中间数据的第二数据地址,即待编码的第一语音数据的地址和编码后参数的存放地址);给出控制信号(例如编码开始信息,复位信号等);以及读取相关参数(例如当前编码的状态信息、版本信息等)。在解码部分主要包括:配置相关地址信号(例如存放第三中间数据的第三数据地址和用于存放第四中间数据的第四数据地址,即解码后合成语音数据存放地址和编码所需参数读取地址);给出控制信号(例如解码开始信号,复位信号等);以及读取相关参数(例如当前解码的状态信息、版本信息等)。
在另一些实施例中,语音处理电路21还包括与循环计算单元211连接的跨时钟域处理单元215。跨时钟域处理单元215可以由寄存器和/或FIFO组成,异步时钟域经过寄存之后可以实现同步化等跨时钟域导致的问题。
请继续参阅图4,图4是本申请语音处理装置又一实施例的结构示意框图。
如图2和4所示,在一些实施方式中,语音处理装置100可以包括总线40,总线40分别连接通用处理器10、逻辑处理器20和存储器30,通用处理器10、逻辑处理器20和存储器30通过总线40传输数据。对应地,逻辑处理器20还可以包括总线接口22,以使得语音处理电路21通过总线接口22与总线连接,实现数据传输。如图6和图7所示,在一示例中,总线40可以是AIX(Advanced eXtensible Interface)总线,总线接口22可以包括AXI-Hp接口和AXI-Lite接口,通过AXI-Hp接口和AXI-Lite接口的读写逻辑实现数据传输。AXI-Hp接口可提供最大9.6Gbps的带宽,因此数据无任何传输效率的限制。
如图4所示,在一个示例中,当逻辑处理器20包括至少一个语音处理电路21(0~n)时,逻辑处理器20还可以包括数据分发和汇聚电路23,数据分发和汇聚电路23分别与多个语音处理电路21和总线40连接,用于将多个语音处理电路21输出的数据汇聚后进行传输,以及用于将整个数据分发至多个语音处理电路21,实现并行执行,提升处理速度。其中,在数据分发和汇聚电路23中可以设计高效的调度、仲裁和缓存机制,从而在通用处理器10、逻辑处理器20和存储器30之间数据交互时,能够高效有序的完成,实现多路编码和多路解码并行执行。其中,数据分发和汇聚电路23可以通过逻辑处理器20中的总线接口22(AXI-Hp接口和AXI-Lite接口)与总线40连接。
请参阅图5至图7,图5是本申请语音处理装置再一实施例的结构示意框图,图6是编码器对应的语音处理装置的结构示意框图,图7是解码器对应的语音处理装置的结构示意框图。
如图5所示,在一些实施例,可以将编码部分和解码部分独立设计,即逻辑处理器20包括编码器和解码器(图未标注),其中,编码器用于执行编码过程中的循环计算部分,解码器用于执行解码过程中的循环计算部分。
如图6所示,在编码部分,编码器可以包括至少一个并行的语音处理电路21,记作第一语音处理电路0~第一语音处理电路n,也可以记作(amr_cod_calc_0)~(amr_cod_calc_n),用于分别用于执行对一路第一语音数据的编码过程中的循环计算部分。
如图7所示,在解码部分,解码器可以包括至少一个并行的语音处理电路21,记作第二语音处理电路0~第二语音处理电路n,也可以记作(amr_dec_calc_0)~(amr_dec_calc_n),用于分别用于执行对一路第二编码数据的解码过程中的循环计算部分。
在一应用场景中,本方案还可以基于PSOC(Programmable System-On-Chip,片上可编程系统)平台实现,PSOC平台上集成了PS(Processing System,处理系统)和PL(programmable logic,可编程逻辑)于单个芯片上,其中,PS部分是通用处理器内核(DualCortex-A9),PL部分是FPGA逻辑,PS与PL通过AXI总线进行数据交互。由此,可以将语音编解码算法中的占用内核处理器资源最多和处理时间最长的部分移植到PL侧实现,其余部分仍然在PS侧实现,可大大提高编解码的效率,且可同时实现多路的语音编码和解码,这一点通用处理器是无法实现的。可选地,PSOC平台可以为Xilinx的ZYNQ7000平台。
对于军事装备领域,PSOC平台可以采用上海复旦微电子FMQL PSOC平台,替代ZYNQ7000平台,两者的引脚100%兼容,性能几乎一致,从而可以满足国产化要求。
经验证,在ZYNQ7000/FMQL系列器件平台上,针对AMR-NB(Adaptive Multi Rate-Narrow Band Speech Codec,自适应多速率窄带语音编码算法)模式0,可同时进行多路编码和多路解码运算。在1路编解码对比测试中,该方案一帧编码运算时间在2.8ms左右,相比纯通用处理器(例如Cortex A9内核)平台,时间降低了4ms;一帧解码运算时间在0.8ms左右,相比纯通用处理器平台,时间降低了0.4ms。通用处理器平台无法在规定时间内实现多路语音编解码的同时运算,故对于多路编解码无对比测试。经验证,在ZYNQ7045平台,一帧语音数据编解码完成时间相比在纯ARM(Cortex A9)上整体降低了55%。
本实施例中,提出了以PSOC平台(ARM+FPGA架构)的实现方式,将编解码的主要计算部分放在FPGA实现,获得了性能的巨大提升,同时降低了硬件成本,以IP core的形式进行调用,提高了应用的灵活性、通用性和可移植性。
请参阅图8,图8是本申请语音编码方法一实施例的流程示意图。本实施例中,语音编码方法应用于上述实施例中的语音处理装置,语音处理装置包括耦接的通用处理器和逻辑处理器。
该方法可以包括以下步骤:
步骤S11:通用处理器和逻辑处理器协同对至少一路第一语音数据进行编码得到第一编码数据,其中通用处理器用于执行编码过程中的非循环计算部分,逻辑处理器用于执行编码过程中的循环计算部分。
其中,第一语音数据是以帧为单位的语音数据。其中,可以设置每一帧语音数据的大小。例如,每一帧可以输入10ms的语音数据,相当于160个采样点(即16K采样率),每个点的位宽是16bit。由于执行语音编码算法的种类不同,得到的第一编码数据也存在差异,所以对于第一编码数据的具体内容本实施例不作限定,例如可以包括编码参数。
在编解码算法中,无论是编码,还是解码,其占用内核处理器资源最多和处理时间最长的部分均是对应的循环计算部分,因此,本实施例通过将循环计算部分放在逻辑处理器中实现,将编解码中的其余部分放在通用处理器中实现,可以获得性能上的巨大提升,大大提升编解码效率,且可以同时实现多路的语音编码和解码,降低了处理延迟。
在一些实施方式中,通用处理器和逻辑处理器协同执行编解码算法中编码部分,以对至少一路第一语音数据进行编码得到第一编码数据。可选地,本实施例对于编解码算法的种类不作限定,例如可以支持国际电信联盟ITU发布的编解码算法,例如G.711,G.723(低码率语音编码算法),G.726,G.729,ILBC(internet Low Bitrate Codec,互联网低比特率编解码器),QCELP(Qualcomm码激励线性预测),EVRC(Enhanced Variable Rate Codec,增强型可变速率编解码器),SMV(可选模式编码器)等算法。在一示例中,可以是自适应多速率编解码算法(AMR),例如自适应多速率窄带语音编码算法(AMR-NB)、自适应多速率宽带语音编码算法(AMR-WB、AMR-WB+)。
在本实施例中,利用耦接的通用处理器和逻辑处理器协同进行编码和/或解码处理,其中,逻辑处理器可以提供强大的算力,通用处理器可以提供高效便捷的开发方式,由此,可以将语音编解码算法中占用内核资源较多,且耗时较长的循环计算部分放在逻辑处理器中执行,其余的非循环计算部分由通用处理器执行,从而可以提升语音编解码的效率,进而可以实现多路并行语音编解码,使得资源得到充分的利用,降低硬件成本等。
请参阅图9,图9是图8中步骤S11的另一实施方式的流程示意图。在本实施例中,以AMR-NB编解码算法为例进行说明。
步骤S21:通用处理器和逻辑处理器协同执行自适应多速率语音编码算法的编码部分,以对至少一路第一语音数据进行编码得到第一编码数据。
在本实施例中,当编码算法为自适应多速率语音编码算法(AMR,包括AMR-NB、AMR-WB、AMR-WB+)时,AMR编码的主要实现功能时设置/产生编码参数,对应的第一编码数据中包括编码参数,其中,编码参数可以但不限于包括:LSP(Language Server Protocol,语言服务协议)、自适应的密码本和固定的密码本量化指标(包括地址和增益)。
其中,AMR-NB是由第三代伙伴计划(3rd Generation Partnership Project,简称3GPP)于1999年8月制订的基于码激励线性预测(Code Excited Linear Prediction,CELP)算法的语音压缩编码器标准,主要用于第三代移动通信W-CDMA系统中。AMR-NB语音带宽范围:300-3400Hz,8KHz抽样,支持八种速率模式,分别为:模式0(4.75kbit/s)、模式1(5.15kbit/s)、模式2(5.90kbit/s)、模式3(6.70kbit/s)、模式4(7.40kbit/s)、模式5(7.95kbit/s)、模式6(10.2kbit/s)、模式7(12.2kbit/s),其以更加智能的方式解决信源和信道编码的速率分配问题,根据无线信道和传输状况来自适应地选择一种编码模式进行传输,使得无线资源的配置与利用更加灵活有效。
AMR-NB的实现编码器运用了ACELP混合编码方式,也就是数字语音信号中既包括若干语音特征参数又包括部分波形编码信息,再运用这些特征信息重新合成语音信号的过程。控制这些参数的提取数目,根据速率要求对信息进行取舍而得到了以下8种速率,混合组成自适应语音编码器。如模式AMR_12.20就提取出244比特的参数信息,而模式AMR_4.75却只提取了95比特信息。根据这些比特所含的信息量可以将其分为3类比特class 0、1和2。在信道编码时class 0和1都将会使用循环冗余校验码进行差错检验,对于class 2则根据上一帧进行恢复。
请参与图10至图14,图10是图9中步骤S21的另一实施方式的流程示意图,图11是编码部分通用处理器向逻辑处理器传递数据的格式的示意图,图12是图11中步骤S212的另一实施方式的流程示意图,图13是图11中步骤S214的另一实施方式的流程示意图,图14是编码部分逻辑处理器向通用处理器传递数据的格式的示意图。
在本实施方式中,步骤S21还可以包括步骤S211~S215。
步骤S211:通用处理器导入第一语音数据,并分析和计算线性预测编码参数,得到第一中间数据。
在一些实施方式中,第一中间数据包括第一语音数据和线性预测编码参数(linear predictive coding,LPC)。
如图11所示,为编码部分中通用处理器向逻辑处理器传递数据的格式,其中,包括第一语音处理电路(0~n),每个第一语音电路对应的数据传输格式为按序排列的第一语音数据和其他参数(A_t和Aq_t)。其他参数中包括编码参数(例如LPC)。
在一示例中,第一语音数据(speech[])包括160个采样点;A_t和Aq_t是编码中的固定参数,数量均为44个,其中包括编码参数。A_t和Aq_t的数量可以根据编解码算法的变化而变化,也可以根据实际情况进行选取,此处不作限定。
步骤S212:通用处理器将第一中间数据传输给逻辑处理器,并通知逻辑处理器对第一中间数据进行处理。
具体地,通用处理器可以向逻辑处理器发送第一指令,以通知逻辑处理器对第一中间数据进行处理。
如图12所示,在一些实施方式中,步骤S212中通用处理器将第一中间数据传输给逻辑处理器可以包括子步骤S2121~S2123。
步骤S2121:通用处理器将第一中间数据按照第一数据地址存入存储器。
步骤S2122:通用处理器通知逻辑处理器读取第一中间数据。
其中,通用处理器可以向逻辑处理器发送第二指令,以通知逻辑处理器读取第一中间数据。这里,第二指令与第一指令可以是同一条指令,也可以是不同的指令。
步骤S2123:逻辑处理器按照第一数据地址从存储器中读取第一中间数据。
由于逻辑处理器已经基于管理配置单元配置了第一数据地址,故逻辑处理器可以直接获取第一数据地址,然后基于第一数据地址通过总线从存储器中读取第一中间数据。
步骤S213:逻辑处理器对第一中间数据进行循环计算音调和创新参数,以及关联数据更新,得到第二中间数据。
具体地,可以将第一语音数据分为预设数量个子帧数据(编号为subframe0-n),然后逻辑处理器用于分别计算预设数量个子帧数据的分析参数(包括音调和创新参数),即循环计算预设数量次,并在计算完成后,更新关联数据,以得到第二中间数据。
在一实施方式中,预设数量为4,每帧语音数据(包括160个采样点)可以分为4个子帧数据(编号为subframe0-3),逻辑处理器的功能是分别计算4个子帧数据的分析参数,即循环计算4次。其中,对于AMR-NB,每次计算的步骤可以包括:计算权重LPC的系数、计算LPC残留信号、计算音调搜索的目标信号、计算权重合成滤波器(h1[])的脉冲响应、计算闭环pitch(基音)参数、编码pitch延时、更新脉冲响应h1[](包含固定增益的pitch)、计算密码本搜索的目标向量、密码本搜索、编码密码本地址、量化pitch和密码本增益、计算合成语音和更新权重滤波器的状态等。待4次计算完成后,更新关联数据。AMR中的其他算法的编码计算步骤类似。
步骤S214:逻辑处理器将第二中间数据传输给通用处理器。
如图13所示,在一些实施方式中,步骤S214可以包括子步骤S2141~S2143。
步骤S2141:逻辑处理器将第二中间数据按照第二数据地址存入存储器。
具体地,逻辑处理器通过总线将第二中间数据按照第二数据地址存入存储器。
如图14所示,为编码部分逻辑处理器向通用处理器传递数据的格式,包括第一语音处理电路(0~n),每个第一语音电路对应的数据传输格式按序排列的音调和创新参数(记为Parm[],共14个)和填充数据16'h0000,数量为2个。填充数据用于让输出的编码数据满足固定的长度。本申请中提及的按序排列可以是依次排列,或者按照小端排列方式进行排列,例如低字节位于低地址,如图14中的左侧数据(音调和创新参数)位于低地址空间。在一示例中,音调和创新参数中的14个参数按照小端排列方式进行排列。
步骤S2142:逻辑处理器通知通用处理器读取第二中间数据。
具体地,逻辑处理器可以通过中断通用处理器读取第二中间数据。
步骤S2143:通用处理器按照第二数据地址从存储器中读取第二中间数据。
同理,通用处理器可以通过管理配置单元配置逻辑处理器编码后的参数存放地址,即第二数据地址,从而时通用处理器可以按照第二数据地址从存储器中读取第二中间数据。
步骤S215:通用处理器对第二中间数据打包得到第一编码数据。
通用处理器对第二中间数据打包bit流,得到第一编码数据,并输出。
请参阅图15,图15是本申请语音解码方法一实施例的流程示意图。本实施例中,语音解码方法应用于上述实施例中的语音处理装置,语音处理装置包括耦接的通用处理器和逻辑处理器。
该方法可以包括以下步骤:
步骤S31:通用处理器和逻辑处理器协同对至少一路第二编码数据进行解码得到第二语音数据,其中通用处理器用于执行解码过程中的非循环计算部分,逻辑处理器用于执行解码过程中的循环计算部分。
其中,第二编码数据是经过编码后的数据,经过解码处理,可以得到对应的第二语音数据。关于本步骤的描述可以参见上述实施例中的步骤S11,此处不再赘述。
请参阅图16,图16是图15中步骤S31的另一实施方式的流程示意图。在本实施例中,以AMR-NB编解码算法为例进行说明。
步骤S41:通用处理器和逻辑处理器协同执行自适应多速率语音解码算法的解码部分,以对至少一路第二编码数据进行解码得到第二语音数据。
关于本步骤的描述可以参见上述实施例中的步骤S31,此处不再赘述。不同的是,本实施例中是执行多速率语音解码算法(AMR)的解码部分。
请参阅图17至图21,图17是图16中步骤S41的另一实施方式的流程示意图,图18是解码部分通用处理器向逻辑处理器传递数据的格式的示意图,图19是图17中步骤S412的另一实施方式的流程示意图,图20是图17中步骤S414的另一实施方式的流程示意图,图21是解码部分逻辑处理器向通用处理器传递数据的格式的示意图。
在本实施方式中,步骤S41还可以包括步骤S411~S415。
步骤S411:通用处理器导入第二编码数据,将第二编码数据转换为编码参数,对编码参数进行前端处理,得到第三中间数据。
其中,编码参数可以包括但不限于检索编码参数。对编码参数进行前端处理包括解码线谱频率(Line Spectrum Frequency,LSF)参数和生成内插LPC自相关系数。
在一些实施方式中,第三中间数据包括部分编码参数和其他参数。
如图18所示,为解码部分中通用处理器向逻辑处理器传递数据的格式,其中,包括第二语音处理电路(0~n),每个第二语音电路对应的数据传输格式为按序排列的部分编码参数Parm[]、其他参数(prev_lsf、past_lsf_q和A_t),以及填充数据16'h0000。其中,prev_lsf和past_lsf_q为当前解码参数和历史解码参数,A_t为解码中的固定参数。部分编码参数(Parm[])的数量为14,prev_lsf和past_lsf_q为10,A_t为44,填充数据为2。以上,所有参数的数量都可以根据实际情况进行选取,此处不作限定。
步骤S412:通用处理器将第三中间数据传输给逻辑处理器,并通知逻辑处理器对第三中间数据进行处理。
其中,通用处理器可以向逻辑处理器发送第三指令,以使逻辑处理器对第三数据进行处理。
如图19所示,在一些实施方式中,步骤S412中通用处理器将第三中间数据传输给逻辑处理器可以包括子步骤S4121~S4123。
步骤S4121:通用处理器将第三中间数据按照第三数据地址存入存储器。
步骤S4122:通用处理器通知逻辑处理器读取第三中间数据。
其中,通用处理器可以向逻辑处理器发送第四指令,以通知逻辑处理器读取第三中间数据。这里,第四指令与第三指令可以是同一条指令,也可以是不同的指令。
步骤S4123:逻辑处理器按照第三数据地址从存储器中读取第三中间数据。
由于逻辑处理器已经基于管理配置单元配置了第三数据地址,故逻辑处理器可以直接获取第三数据地址,然后基于第三数据地址通过总线40从存储器中读取第三中间数据。
步骤S413:逻辑处理器对第三中间数据进行编码参数循环计算、更新解码器特征参数及计算线谱频率平均值,得到第四中间数据。
其中,在AMR算法的解码部分,第二语音处理电路(amr_dec_calc)主要包括一下步骤:
1)解码pitch的延时(pitch_lag值);
2)解码代数密码;
3)解码pitch和codebook(密码本);
4)找出激励和计算合成的语音数据(synthesis speech);
5)更新解码器特征参数;
6)计算LSF平均值。
以上,步骤1-4实现的是编码参数循环计算,其目的是将编码参数恢复出原始的语音数据,实现解码的主要过程。在一些实施方式中,编码参数循环计算也可以采用编码过程中的按照预设数量个子帧进行循环计算,每个子帧的计算步骤相同,按照步骤1-4执行,循环4次。AMR中的其他算法的解码计算步骤类似。
步骤S414:逻辑处理器将第四中间数据传输给通用处理器。
如图20所示,在一些实施方式中,步骤S414可以包括子步骤S4141~S4143。
步骤S4141:逻辑处理器将第四中间数据按照第四数据地址存入存储器。
步骤S4142:逻辑处理器通知通用处理器读取第四中间数据。
步骤S4143:通用处理器按照第四数据地址从存储器中读取第四中间数据。
在一示例中,AMR-NB在MR475模式下,每路第二语音处理电路计算输入的编码参数是17个short型的数据,其中前3个参数,在通用处理器(PS端)使用,其余的14个参数在逻辑处理器中(PL端)使用。每路第二语音处理电路计算输出的解码数据是160个整型(short型)的语音数据,以及88个short型的其他数据(lsf_hist和log_en_hist),共248个运算结果。
如图21所示,为解码部分中逻辑处理器向通用处理器传递数据的格式,其中,包括第二语音处理电路(0~n),每个第二语音电路对应的数据传输格式为按序排列的语音数据(记为synth)和其他数据(记为lsf_hist和log_en_hist),数量分别为160、80和8。其中,lsf_hist为解码参数,log_en_hist为插表参数,用于查找到对应的存储地址。
步骤S415:通用处理器对第四中间数据进行后端滤波和后端处理,得到第二语音数据。
请参阅图22,图22为第一语音数据和第二语音数据在时域和频域的对比图。即是,原始语音和经过该编解码还原后的语音数据的对比图。其中,上面为时域信号的对比,下面是频域信号的对比,左侧是第一语音数据,右侧是第二语音数据。从中可以看出,基于本申请提供的方法编解码后的语音数据还原度很高,失真度很小。
以上,本申请采用ARM与FPGA相互配合的方案,FPGA主要提供强大的算力,ARM提供高效便捷的开发方式,极大降低了语音编解码算法的处理时间,提升了编解码效率。
进一步地,基于本申请的语音处理装置(ARM+FPGA架构)还可以实现复杂度较高的语音编解码算法,提升语音编解码的效率和复杂度。
进一步地,无论是相比于采用多个声码器,还是多个MCU实现多路语音同时编解码方案,本申请使用的ARM+FPGA架构的方案,从尺寸、功耗和成本上都是远远小于现有的实现方案的,另外,还可以实现多路AMR编解码并行处理,使资源得到充分的利用,降低硬件成本。
进一步地,本申请中将编码和解码以通用IP核(Intellectual Property core,又称为IP core)的形式调用,可以实现编码器和解码器中语音处理电路复用,其中,编解码路数通过参数形式进行配置。该IP core可以在xilinx、altera或国产化的FPGA平台上任意使用,也可以单独以IP core的模式集成到专用芯片上。
进一步地,在一些实施方式中,使用ZYNQ7000平台实现,其平台的可扩展性和灵活性都很强,可以IP core的形式授权给需要的用户使用。同时,针对ZYNQ7000平台,国内有相应的国产化替代(上海复旦微电子的FMQL PSOC系列,复旦微电子和紫光国微的国产纯FPGA平台),且性能相差无几,可以满足军用装备的要求。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (19)
1.一种语音编码方法,其特征在于,所述方法应用于语音处理装置,所述语音处理装置包括耦接的通用处理器和逻辑处理器;
所述通用处理器和所述逻辑处理器协同对至少一路第一语音数据进行编码得到第一编码数据,其中所述通用处理器用于执行所述编码过程中的非循环计算部分,所述逻辑处理器用于执行所述编码过程中的循环计算部分。
2.根据权利要求1所述的方法,其特征在于,
所述通用处理器和所述逻辑处理器协同对至少一路第一语音数据进行编码得到第一编码数据,包括:
所述通用处理器和所述逻辑处理器协同执行自适应多速率语音编码算法的编码部分,以对至少一路所述第一语音数据进行编码得到所述第一编码数据。
3.根据权利要求2所述的方法,其特征在于,
所述通用处理器和所述逻辑处理器协同执行自适应多速率语音编码算法的编码部分,包括:
所述通用处理器导入所述第一语音数据,并分析和计算线性预测编码参数,得到第一中间数据;
所述通用处理器将所述第一中间数据传输给所述逻辑处理器,并通知所述逻辑处理器对所述第一中间数据进行处理;
所述逻辑处理器对所述第一中间数据进行循环计算音调和创新参数,以及关联数据更新,得到第二中间数据;
所述逻辑处理器将所述第二中间数据传输给所述通用处理器;
所述通用处理器对所述第二中间数据打包得到所述第一编码数据。
4.根据权利要求3所述的方法,其特征在于,
所述第一中间数据包括所述第一语音数据和其他参数,所述其他参数包括所述线性预测编码参数;其中,所述第一语音数据和所述其他参数按序排列。
5.根据权利要求3所述的方法,其特征在于,
所述通用处理器将所述第一中间数据传输给所述逻辑处理器,包括:
所述通用处理器将所述第一中间数据按照第一数据地址存入存储器;
所述通用处理器通知所述逻辑处理器读取所述第一中间数据;
所述逻辑处理器按照所述第一数据地址从所述存储器中读取所述第一中间数据。
6.根据权利要求3所述的方法,其特征在于,
所述第二中间数据包括所述音调和创新参数,以及填充数据;其中,所述音调和创新参数、填充数据按序排列。
7.根据权利要求3所述的方法,其特征在于,
所述逻辑处理器将所述第二中间数据传输给所述通用处理器,包括:
所述逻辑处理器将所述第二中间数据按照第二数据地址存入存储器;
所述逻辑处理器通知所述通用处理器读取所述第二中间数据;
所述通用处理器按照所述第二数据地址从所述存储器中读取所述第二中间数据。
8.一种语音解码方法,其特征在于,所述方法应用于语音处理装置,所述语音处理装置包括耦接的通用处理器和逻辑处理器;
所述通用处理器和所述逻辑处理器协同对至少一路第二编码数据进行解码得到第二语音数据,其中所述通用处理器用于执行所述解码过程中的非循环计算部分,所述逻辑处理器用于执行所述解码过程中的循环计算部分。
9.根据权利要求8所述的方法,其特征在于,
所述通用处理器和所述逻辑处理器协同对至少一路第二编码数据进行解码得到第二语音数据,包括:
所述通用处理器和所述逻辑处理器协同执行自适应多速率语音解码算法的解码部分,以对至少一路所述第二编码数据进行解码得到所述第二语音数据。
10.根据权利要求9所述的方法,其特征在于,
所述通用处理器和所述逻辑处理器协同执行自适应多速率语音解码算法的解码部分,包括:
所述通用处理器导入所述第二编码数据,将所述第二编码数据转换为编码参数,对所述编码参数进行前端处理,得到第三中间数据;
所述通用处理器将所述第三中间数据传输给所述逻辑处理器,并通知所述逻辑处理器对所述第三中间数据进行处理;
所述逻辑处理器对所述第三中间数据进行编码参数循环计算、更新解码器特征参数及计算线谱频率平均值,得到第四中间数据;
所述逻辑处理器将所述第四中间数据传输给所述通用处理器;
所述通用处理器对所述第四中间数据进行后端滤波和后端处理,得到所述第二语音数据。
11.根据权利要求10所述的方法,其特征在于,
所述第三中间数据包括部分所述编码参数、其他参数和填充数据;其中,部分所述编码参数、所述其他参数和填充数据按序排列。
12.根据权利要求10所述的方法,其特征在于,
所述通用处理器将所述第三中间数据传输给所述逻辑处理器,包括:
所述通用处理器将所述第三中间数据按照第三数据地址存入存储器;
所述通用处理器通知所述逻辑处理器读取所述第三中间数据;
所述逻辑处理器按照所述第三数据地址从所述存储器中读取所述第三中间数据。
13.根据权利要求10所述的方法,其特征在于,
所述第四中间数据包括语音数据和其他数据,其中,所述语音数据和其他数据按序排列。
14.根据权利要求10所述的方法,其特征在于,
所述逻辑处理器将所述第四中间数据传输给所述通用处理器,包括:
所述逻辑处理器将所述第四中间数据按照第四数据地址存入存储器;
所述逻辑处理器通知所述通用处理器读取所述第四中间数据;
所述通用处理器按照所述第四数据地址从所述存储器中读取所述第四中间数据。
15.一种语音处理装置,其特征在于,所述装置包括耦接的通用处理器、逻辑处理器和存储器;
所述通用处理器和所述逻辑处理器用于协同对至少一路第一语音数据进行编码得到第一编码数据,和/或对至少一路第二编码数据进行解码得到第二语音数据,其中所述通用处理器用于执行所述编码和/或所述解码过程中的非循环计算部分,所述逻辑处理器用于执行所述编码和/或所述解码过程中的循环计算部分;
所述存储器用于存储所述通用处理器和所述逻辑处理器工作所需的指令与数据。
16.根据权利要求15所述的装置,其特征在于,
所述逻辑处理器包括至少一个并行的语音处理电路,每一所述语音处理电路分别用于执行对一路所述第一语音数据的编码过程中的循环计算部分,和/或对一路所述第二编码数据的解码过程中的循环计算部分。
17.根据权利要求16所述的装置,其特征在于,
所述语音处理电路包括循环计算单元、缓存单元,查找表单元和管理配置单元,所述循环计算单元连接所述缓存单元,所述查找表单元和所述管理配置单元。
18.根据权利要求15所述的装置,其特征在于,
所述装置还包括总线,所述总线分别连接所述通用处理器、所述逻辑处理器和所述存储器,所述通用处理器、所述逻辑处理器和所述存储器通过所述总线传输数据。
19.根据权利要求15所述的装置,其特征在于,
所述逻辑处理器包括现场可编程门阵列和/或数字信号处理器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111650117.0A CN114299971B (zh) | 2021-12-30 | 2021-12-30 | 一种语音编码方法、语音解码方法和语音处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111650117.0A CN114299971B (zh) | 2021-12-30 | 2021-12-30 | 一种语音编码方法、语音解码方法和语音处理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114299971A true CN114299971A (zh) | 2022-04-08 |
CN114299971B CN114299971B (zh) | 2025-01-03 |
Family
ID=80973678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111650117.0A Active CN114299971B (zh) | 2021-12-30 | 2021-12-30 | 一种语音编码方法、语音解码方法和语音处理装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114299971B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH086599A (ja) * | 1994-06-22 | 1996-01-12 | Fujitsu Ltd | 音声符号化装置 |
JP2000059232A (ja) * | 1998-08-10 | 2000-02-25 | Hitachi Ltd | オーディオデコーダ |
CN1442985A (zh) * | 2003-04-01 | 2003-09-17 | 西安大唐电信有限公司 | 一种多通道联合声码器及其实现方法 |
CN1495705A (zh) * | 1995-12-01 | 2004-05-12 | ���־糡ϵͳ�ɷ�����˾ | 多通道声码器 |
JP2007077841A (ja) * | 2005-09-13 | 2007-03-29 | Nissan Motor Co Ltd | 内燃機関 |
CN1972308A (zh) * | 2006-12-08 | 2007-05-30 | 中兴通讯股份有限公司 | 基于dsp单芯片多通道多语音编解码器的通道开启方法 |
CN101996638A (zh) * | 2009-08-10 | 2011-03-30 | 北京多思科技发展有限公司 | 一种语音编解码器和语音编解码方法 |
KR20130032482A (ko) * | 2011-09-23 | 2013-04-02 | 엘지전자 주식회사 | 이동 단말기 및 근거리 통신을 위한 이동 단말기의 인코딩 수행 방법 |
CN106952650A (zh) * | 2017-02-28 | 2017-07-14 | 大连理工大学 | 一种基于arm+fpga架构的列车语音放大单元 |
-
2021
- 2021-12-30 CN CN202111650117.0A patent/CN114299971B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH086599A (ja) * | 1994-06-22 | 1996-01-12 | Fujitsu Ltd | 音声符号化装置 |
CN1495705A (zh) * | 1995-12-01 | 2004-05-12 | ���־糡ϵͳ�ɷ�����˾ | 多通道声码器 |
JP2000059232A (ja) * | 1998-08-10 | 2000-02-25 | Hitachi Ltd | オーディオデコーダ |
CN1442985A (zh) * | 2003-04-01 | 2003-09-17 | 西安大唐电信有限公司 | 一种多通道联合声码器及其实现方法 |
JP2007077841A (ja) * | 2005-09-13 | 2007-03-29 | Nissan Motor Co Ltd | 内燃機関 |
CN1972308A (zh) * | 2006-12-08 | 2007-05-30 | 中兴通讯股份有限公司 | 基于dsp单芯片多通道多语音编解码器的通道开启方法 |
CN101996638A (zh) * | 2009-08-10 | 2011-03-30 | 北京多思科技发展有限公司 | 一种语音编解码器和语音编解码方法 |
KR20130032482A (ko) * | 2011-09-23 | 2013-04-02 | 엘지전자 주식회사 | 이동 단말기 및 근거리 통신을 위한 이동 단말기의 인코딩 수행 방법 |
CN106952650A (zh) * | 2017-02-28 | 2017-07-14 | 大连理工大学 | 一种基于arm+fpga架构的列车语音放大单元 |
Also Published As
Publication number | Publication date |
---|---|
CN114299971B (zh) | 2025-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6885992B2 (en) | Efficient PCM buffer | |
US8340960B2 (en) | Methods and apparatus for efficient vocoder implementations | |
CN101484937B (zh) | 使用缓冲器调节对已预测编码的数据进行解码 | |
CN107105266A (zh) | 一种png图像的解码方法、装置及系统 | |
CN114299971A (zh) | 一种语音编码方法、语音解码方法和语音处理装置 | |
CN105047200A (zh) | 一种基于fpga的flac硬件解码器及解码方法 | |
Lee et al. | An architecture and implementation of MPEG audio layer III decoder using dual-core DSP | |
CN101741391A (zh) | 在定点dsp进行mp3音频解码时优化内存空间的方法 | |
JP2017515154A (ja) | 音声符号化方法および関連装置 | |
CN201655293U (zh) | 卫星移动通信声码器语音编解码集成电路 | |
Fältman et al. | A hardware implementation of an MP3 decoder | |
CN116884419A (zh) | 音色转换方法、装置、设备、存储介质及程序产品 | |
Tsai et al. | A hardware/software co-design of MP3 audio decoder | |
CN104183243A (zh) | 音频编解码系统 | |
WO2005003950A1 (fr) | Decodeur mp3 executant un traitement parallele en pipeline | |
Nam et al. | A low power MPEG I/II layer 3 audio decoder | |
Huang et al. | Implementation of ITU-T G. 723.1 dual rate speech codec based on TMS320C6201 DSP | |
JP3291004B2 (ja) | 音声符号化回路 | |
CN109473116A (zh) | 语音编码方法、语音解码方法及装置 | |
Shulin et al. | Design and Implementation of Mobile Terminal Voice Communication System | |
Guo et al. | DSP-Based Optimization of the G. 729 Codec: Strategies for Complexity Reduction in Voice Encoding and Decoding | |
Yang et al. | The implementation and optimization of AMR speech codec on DSP | |
Zhao et al. | AMR speech codec realization and optimization based on Tmscx55 DSP | |
Li et al. | DSP audio compression system based on G. 723.1 | |
Livshitz et al. | Embedded Reconfigurable Hardware Platform for Real-Time Audio and Speech Signal Processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |