CN101506876A - 在具有不同语音帧速率的混合激励线性预测(melp)声码器之间进行代码转换的声码器和相关方法 - Google Patents

在具有不同语音帧速率的混合激励线性预测(melp)声码器之间进行代码转换的声码器和相关方法 Download PDF

Info

Publication number
CN101506876A
CN101506876A CNA2007800305050A CN200780030505A CN101506876A CN 101506876 A CN101506876 A CN 101506876A CN A2007800305050 A CNA2007800305050 A CN A2007800305050A CN 200780030505 A CN200780030505 A CN 200780030505A CN 101506876 A CN101506876 A CN 101506876A
Authority
CN
China
Prior art keywords
melp
vocoder
parameter
speech
frame
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.)
Pending
Application number
CNA2007800305050A
Other languages
English (en)
Inventor
M·W·张伯伦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harris Corp
Harrier Inc
Original Assignee
Harrier Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Harrier Inc filed Critical Harrier Inc
Publication of CN101506876A publication Critical patent/CN101506876A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/173Transcoding, i.e. converting between two coded representations avoiding cascaded coding-decoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

声码器和方法代码转换混合激励线性预测(MELP)编码数据以便用于不同语音帧速率。将输入数据转换(100)成诸如第一MELP声码器所使用的MELP参数。缓存(102)这些参数,并且通过量化对参数进行时间内插(104)以预测间隔点。对作为一个块的内插数据执行编码功能(106),以产生位速率的降低,如处于与第一MELP声码器不同的语音帧速率的第二MELP声码器所使用的。

Description

在具有不同语音帧速率的混合激励线性预测(MELP)声码器之间进行代码转换的声码器和相关方法
本发明涉及通信,更具体地说,本发明涉及用在通信中的话音编码器(声码器)。
也称为声码器的话音编码器是譬如通过使用语音压缩技术来减小话音信号所占据的带宽,并用电合成脉冲来取代话音信号的电路。例如,在一些声码器中,电子语音分析器或合成器将语音波形转换成几个同时的模拟信号。电子语音合成器可以依照模拟控制信号来产生仿真声音。语音分析器可以将模拟波形转换成窄带数字信号。使用一点这种技术,声码器可以与密钥发生器和调制器/解调器设备相结合,用于在正常窄带话音通信信道上发送数字加密语音信号。其结果是,降低了发送数字化语音信号的带宽要求。
一种新的军事标准声码器(MIL-STD-3005)算法被称为混合激励线性预测(MELP),它在2.4Kbps下工作。当声码器利用这种算法工作时,它在良性误差信道下具有良好的话音质量。但是,当声码器经受具有单人可携带无线电设备(MPR)的典型功率输出的HF信道时,声码器的语音质量下降了。人们发现,600bps声码器相对于2.4Kbps声码器在安全话音可用性方面显著增加。
需要一种与基于典型2.4Kbps线性预测编码(LPC10e)的系统相比具有相同或更好语音质量和可懂度的低速率语音声码器。600bps下的MELP语音声码器将利用稳健的和位速率比当前2.4KbpsLPC10e标准更低的波形,并且还受益于MELP声码器参数模型的较好语音质量。战术单人可携带无线电设备(MPR)通常要求较低位速率波形,以便利用数字话音来保证24小时连通。一旦HF用户接收到可靠的良好质量数字话音,被所有用户广泛接受将提供较好的安全性。HF用户还将受益于数字话音的固有数字噪声抑制和接收音频中大气噪声的消除。
使用LPC10e标准的当前2.4Kbps声码器已经广泛用在HF信道上的加密话音系统内。但是,2.4Kbps系统对于窄带HF信道上的通信只取得有限成功。典型3kHz信道要求相对高的信噪比(SNR),以便在标准2.4Kbps位速率下达到安全可靠通信。即使使用2400bps的MIL-STD-188-110B波形,也仍然要求大于+12dB的3kHz SNR,以便在典型衰落信道上提供可用通信链路。
虽然HF信道通常允许使用LPC10e的2400bps信道相对无错,但话音质量仍然是临界的。这些系统的话音可懂度和可接受度受限于麦克风处的背景噪声水平的量。像军用H-250那样的通信手机的低端频率响应使可懂度进一步降低。MELP语音模型具有改进声码器中对于背景噪声和低端频率滚降两者的灵敏性的集成噪声预处理器。600bps MELP声码器将受益于这种类型的噪声预处理器和MELP模型的改进低端频率不灵敏性。
在一些系统中,声码器被级联,这降低了语音可懂度。几个级联就可以将可懂度降低到可用水平,例如,RF 6010标准以下。级联之间的代码转换极大地减轻了可懂度损失,其中取代模拟而使用数字方法。但是人们发现,难以在具有不同帧速率和技术的声码器之间进行代码转换。也存在在“相似”声码器之间进行代码转换以改变位速率的已知系统。一种现有技术的建议提出了在LPC10和MELPe之间进行代码转换。源代码也可以提供MELP1200和2400系统之间的MELP代码转换。
一种声码器和相关方法代码转换混合激励线性预测(MELP)编码数据以便在不同语音帧速率使用。将输入数据转换成第一MELP声码器所使用的MELP参数。缓存这些参数,并且通过量化对参数进行时间内插以预测间隔点。对作为块的内插数据执行编码功能,以降低如与第一MELP声码器不同的语音帧速率的第二MELP声码器所使用的位速率。
在又一个方面中,利用MELP 2400声码器将位速率代码转换成MELP 600声码器使用的位速率。可以从一个块内的多个相继帧的未量化MELP参数中为一个话音数据块量化MELP参数。可以通过获取未量化MELP参数并组合多个帧以形成一个MELP 600 BPS帧、建立未量化MELP参数、量化MELP 600 BPS帧的MELP参数、并将它们编码成一列数据流,来执行编码功能。可以将输入数据转换成MELP 2400参数。可以利用一帧的延迟来缓存MELP 2400参数。可以预测25毫秒间隔点,并且,在一个方面中,将位速率降低到原来的四分之一。
在又一个方面中,一种声码器和相关方法通过依照不同语音帧速率下的第二MELP声码器所使用的参数对输入数据执行解码功能,来代码转换混合激励线性预测(MELP)编码数据。内插和缓存取样语音参数,并且对内插参数执行编码功能以提高位速率。内插可以发生在22.5毫秒取样语音参数上,以及缓存内插参数可以发生在大约一帧上。可以将位速率提高到原来的四倍。
通过结合附图对本发明进行如下详细描述,本发明的其它目的、特征和优点将变得显而易见,在附图中:
图1是可以用于本发明的通信系统的例子的方块图;
图2是例示用在从MELP 2400到MELP 600的向下代码转换中的基本步骤的高级流程图;
图3是例示用在从MELP 2400到MELP 600的向下代码转换中的基本步骤的更详细流程图;
图4是例示用在从MELP 600到MELP 2400的向上代码转换中的基本步骤的高级流程图;
图5是例示用在从MELP 600到MELP 2400的向上代码转换中的更详细步骤的更详细流程图;
图6是示出600bps波形与2400bps标准的位速率相对于信噪比的比较的图;以及
图7是CCIR较差的与图6类似的另一个图。
在下文中,将参照示出本发明优选实施例的附图更全面地描述本发明。但是,本发明可以以许多不同形式具体化,不应该理解为局限于本文给出的实施例。相反,提供这些实施例是为了使本公开变得详尽和完整,并全面地向本领域普通技术人员表达本发明的范围。相同的标号自始至终表示相同的元件。
作为用于理解本发明的一般背景,应该明白,线性预测编码(LPC)是以低位速率编码语音和为计算提供语音参数的精确估计的语音分析系统和方法。LPC可以通过估计作为语音声音质量的特征分量的共振峰来分析语音信号。例如,几个共振带有助于确定值的狂乱品质。从语音信号中除去它们的影响,并且估计剩余嗡嗡声的强度和频率。除去共振峰可被称为反向滤波,而剩余信号可被称为残余。描述共振峰和残余的数字可以存储在其它地方或发送到其它地方。
LPC可以通过颠倒该进程和使用残余来建立源信号、使用共振峰来建立滤波器、描绘管道、以及使该源穿过该滤波器来合成语音信号,导致语音。语音信号随时间变化,并且在被称为帧的小部分语音信号上实施该进程,通常每秒30到50帧给出压缩良好的可懂语音。
差分方程可以用于从语音信号中确定共振峰,以便利用线性预测器,即,线性预测编码(LPC),将信号的每个样本表达成以前样本的线性组合。作为预测系数的差分方程系数可以特征化共振峰,使得LPC系统可以通过最小化预测信号与实际信号之间的均方差来估计系数。因此,可以通过求解一组线性方程来完成系数值矩阵的计算。自相关、协方差或递归点阵公式化技术可被用来保证解的收敛性。
但是,存在管道具有侧支的问题。例如,对于普通元音,用单条管道来表示声道,但对于鼻音,存在侧支。因此,鼻音需要更复杂的算法。因为一些辅音是由导致“嘶嘶”声的湍气流产生的,所以LPC编码器通常必须判定声源是嗡嗡声还是嘶嘶声,以及估计频率和强度并编码信息,使得解码器可以取消这些步骤。LPC-10e算法使用数字1来表示蜂鸣器的频率,并使用数字0来表示嘶嘶声。除了LPC-10e之外,也可以将代码簿用作典型残余信号的表。分析器可以将残余与代码簿中的条目相比较,并选择密配的条目并发送那个条目的代码。这可被称为代码激励线性预测(CELP)。LPC-10e算法描述在联邦标准1015中,而CELP算法描述在联邦标准1016中,在这里通过引用并入它们公开的全部内容。
混合激励线性预测(MELP)声码器算法是美国国防部(DOD)数字话音处理联盟(DDVPC)选择的2400bps联邦标准语音编码器。与传统音调激励LPC声码器有所不同的是,使用周期性后系列或白噪声作为激励、外来全极合成滤波器,其中声码器以发出机械嗡嗡声的极低位速率产生可懂语音。这通常由简单脉冲系列不能再现发声语音引起。
MELP声码器使用基于传统LPC参数模型的混合激励模型,但包括混合激励、周期性脉冲、脉冲色散和自适应谱增强的附加特征。混合激励使用多频带混合模型,所述多频带混合模型通过基于固定滤波器组的自适应滤波来模拟频率相关发声强度以降低嗡嗡声。对于输入语音的话音,MELP声码器利用周期性或非周期性脉冲来合成语音。脉冲色散是利用固定脉冲色散滤波器来实现的,所述固定脉冲色散滤波器基于随音调扩展激励能的谱平化三角形脉冲。基于LPC声道滤波器的极性的自适应谱增强滤波器可以增强合成语音中的共振峰结构。滤波器可以改善合成和自然带通波形之间的匹配,并且将更自然的质量引入语音输出。MELP编码器可以使用预测残余的傅里叶幅度编码来改善语音质量,并且可以使用矢量量化技术来编码LPC和傅里叶信息。
依照本发明的非限制性例子,声码器将定义在2400bps下的MIL-STD-3005中的US DoD军用声码器标准代码转换成600bps的固定位速率,而不进行MELPe-2400分析。这个进程是可逆的,使得可以将MELPe 600代码转换成MELPe 2400。当在使用多跳网络时需要多速率位速率改变时,可以改进电话操作。级联不同位速率下的声码器时的典型模拟速率改变可以使话音质量迅速降低。这里讨论的发明允许多速率改变(2400→600→2400→600→...),而不使数字语音严重变差。应该明白,在这个说明书中,带后缀“e”的MELP自始至终与不带后缀“e”的MELP同义,以防止混乱。
声码器和相关方法可以提高在2400或600bps位速率下工作的电话系统的语音可懂度和质量。声码器包括使用声道的参数混合激励线性预测模型的编码进程。所得的600bps语音达到比相似位速率下的声码器高得多的诊断节律测试(DRT,话音可懂度的度量)和诊断可接受度测量(DAM,话音质量的度量)分数。所得600bps声码器用在在极差信噪比下和/或在低发送功率条件下允许高频(HF)无线电信道上的通信的安全通信系统中。所得MELP 600bps声码器导致允许整天都比基于MELP 2400的系统更频繁地在更多无线电链路上传送安全语音无线电业务的通信系统。通过为以较高速率运行或不支持MELP 600的系统将MELP 600代码转换成MELP 2400,可以出现向后兼容。
依照本发明的非限制性例子,数字代码转换器使用代码转换作为不同应用格式或位速率之间的编码或解码进程,在MELPe 2400和MELPe 600下操作。这不认为是级联声码器。依照本发明的一个非限制性例子,声码器和相关方法通过比率为4的增大或减小,实时地在MELP 2400和MELP 600数据格式之间进行转换,尽管其它比率也是可能的。代码转换器可以使用编码位流。只有当多次速率改变在第一次速率改变之后未使语音质量迅速降低时,在初始速率改变期间可缺少该进程。这使只能够MELPe 2400的系统可与能够高频(HF)HF MELPe 600的系统一起工作。
该声码器和方法提高了RF 6010多跳HF-VHF链路语音质量。与向上/向下转换(速率改变)的次数无关,可以使用每条链路进行一次声码器分析和合成的完善数字系统。可以将语音失真最小化到第一次速率改变,并且对于数次速率改变,可以使语音失真尽可能少地增加。网络负载可以从60K减小到2.4K,并且在网络上使用压缩语音。F2-H要求代码转换SW,并且在代码转换期间音频延迟增加25ms。
该系统可以对F2-H和F2-F/F2-V无线电设备应用数字VHF-HF安全话音重传,并且将允许基于US DoD MELPe的系统进行MELPe600操作。该系统可以提供与如Florida的Harris Corporation ofMelbourne制造的MELPe 600声码器的US DoD/NATO MELPe 2400互操作性。为了例示起见,下面示出具有RF 6010的语音的例子:
模拟—无代码转换(4无线电电路)
-CVSD->CVSD->ulaw->RF6010->ulaw->M6->M6
-M6->M6-.ulaw->RF6010->ulaw->CVSD->CVSD
数字—有代码转换(4无线电电路)
-M24->旁通->RF6010->M24至6->M6
-M6->M6至24->RF6010->旁通->M24
旁通=>数据旁通中的声码器,在数字系统中没有使用ulaw。
该声码器和相关方法将改进的算法用于MELP 600声码器,以便向MIL-STD/NATO MELPe 2400声码器发送数据以及从MIL-STD/NATO MELPe 2400声码器接收数据。改进的RF 6010系统可以利用只在多跳网络上进行一次MELP分析和合成的基于代码转换的系统,使语音质量更好。
依照本发明的一个非限制性例子,可以从2400向下代码转换到600,并且将输入数据转换成MELP 2400参数。缓存参数存在一帧延迟,并且该系统和方法可以通过量化对参数进行时间内插,以预测25ms“间隔点”。因此,可以通过四个一块对内插数据进行MELP 600分析。这导致减少为四分之一,以及现在位速率与MELP 600声码器兼容,使得接收MELP 2400数据并从系统发送MELP 600数据。
也可以从600向上代码转换到2400,并且对输入数据进行MELPe 600合成。声码器将内插22.5ms取样语音参数并在一个帧缓存内插的参数。可以对内插的参数进行MELP 2400分析。这导致位速率增加到原来的四倍,现在与MIL-STD/NATO MELP 2400兼容,以允许接收MELP 600数据并发送MELP 2400数据。
依照本发明非限制方面的声码器和相关方法可以在具有不同语音帧速率的声码器之间代码转换位速率。分析窗可以处于不同尺寸,并且将不需要在速率改变之间锁定。帧速率的改变将不会在初始速率改变之后引起附加失真。对于该算法来说,可以在RF 6010跨网链路上具有较好质量的数字话音。AN/PRC-117F不支持MELPe 600,但将该算法用于利用RF 6010系统在空中与运行MELPe 600的AN/PRC-150C通信。AN/PRC-150进行代码转换,并且,AN/PRC-150具有利用按照本发明一个非限制方面的算法来进行发送和接收代码转换两者的能力。
现在针对图1给出可以利用本发明的通信系统的例子。
可以利用这样的系统和方法的无线电设备的例子是Florida的Harris Corporation of Melbourne制造和销售的FalconTMIII无线电设备。应该明白,可以使用不同的无线电设备,包括通常可以利用相对标准的处理器和硬件部件实现的软件定义无线电设备。软件无线电设备的一个具体类别是联合战术无线电设备(JTR),它包括相对标准的无线电设备和处理硬件,以及实现无线电设备将使用的通信波形的任何适当的波形软件模块。JTR无线电设备还使用遵从在这里通过引用而并入其全部内容的软件通信体系结构(SCA)规范(参见www.jtrs.saalt.mil)的操作系统软件。SCA是规定如何使硬件和软件部件互通,使得不同制造者和开发者可以容易地将各自部件集成为单个设备的开放体系结构框架。
联合战术无线电系统(JTRS)的软件部件体系结构(SCA)为了实现软件定义无线电(SDR),往往根据公用对象请求代理体系结构(CORBA)来定义一组接口和协议。JTRS和它的SCA部分地用在软件可重编程无线电设备族上。这样,SCA是实现软件可重编程数字无线电设备的一组特定规则、方法和设计准则。
JTRS SCA规范是由JTRS联合项目办公室(JPO)公布的。JTRSSCA已经被构造成提供应用软件在不同JTRS SCA实现之间的可移植性,权衡商业标准以降低开发成本,通过重用设计模块的能力来缩短新波形的开发时间,以及依靠逐渐演变的商业框架和体系结构。
JTRS SCA不是系统规范,它打算与实现无关,而是约束系统的设计以达到所希望JTRS目标的一组规则。JTRS SCA的软件框架定义操作环境(OE),并且规定应用程序根据那种环境使用的服务和接口。SCA OE包含核心框架(CF)、CORBA中间件和基于具有相关板支持软件包的可移植操作系统接口(POSIX)的操作系统(OS)。JTRS SCA还提供积本式结构(定义在API补充部分中),用于定义应用软件部件之间的应用程序编程接口(API)。
JTRS SCA核心框架(CF)是定义提供用于嵌入式、分布式计算通信系统中的软件应用部件的部署、管理、互连和互通的一组基本、“核心”开放软件接口和配置文件的体系结构概念。接口可以定义在JTRS SCA规范中。但是,开发者可以实现它们中的一些,一些可以通过非核心应用(即,波形等)来实现,而一些可以由硬件设备提供商来实现。
为了只描述起见,现在结合如图1所示的非限制性例子简要描述将从本发明中得益的通信系统的例子。这个通信系统50的高级方块图包括基站段52和可以加以修改以便用在本发明上的无线消息终端。基站段52包括在无线链路上将话音或数据传送和发送到VHF(甚高频)网络64或HF(高频)网络66的VHF无线电设备60和HF无线电设备62,VHF网络64和HF网络66的每一个包括各自许多VHF无线电设备68和HF无线电设备70、和与无线电设备68、70连接的个人计算机工作站72。如所例示的那样,ad-hoc通信网络73可与各种部件互操作。因此,应该明白,HF或VHF网络包括无基础设施并作为ad-hoc通信网络操作的HF和VHF网络段。尽管未例示UHF(超高频)无线电设备和网络段,但也可以包括它们。
HF无线电设备62可以包括解调电路62a和作为非限制性例子,适当卷积编码电路62b、块交织器62c、数据随机化电路62d、数据和成帧电路62e、调制电路62f、匹配滤波电路62g、带有适当箝位器件的块或符号均衡电路62h、去交织和解码电路62i、调制解调器62j、以及电源适配电路62k。声码器电路621可以包含解码和编码功能和可以是所述的各种电路的组合或分立电路的转换单元。这些和其它电路起执行本发明所需的任何功能,以及本领域普通技术人员建议的其它功能的作用。包括所有VHF移动无线电设备以及发送和接收台的其它例示无线电设备可以具有相似的功能电路。
基站段52包括与公共交换电话网(PSTN)80的陆上连线,PSTN80与PABX82连接。像卫星地面站那样的卫星接口84与PABX 82连接,PABX 82与形成无线网关86a、86b的处理器连接。它们分别与VHF无线电设备60或HF无线电设备62连接。这些处理器通过局域网与PABX 82和电子邮件客户机90连接。这些无线电设备包括适当的信号发生器和调制器。
Ethernet/TCP-IP局域网可以起“无线电”邮件服务器的作用。可以利用在这里通过引用而并入其全部内容的作为第二代协议/波形的STANAG-5066,当然,最好利用在这里通过引用而并入其全部内容的第三代互操作性标准:STANAG-4538,在无线电链路和局部空中网上发送电子邮件消息。在这里通过引用而并入其全部内容的互操作性标准FEDSTD-1052可以用在传统无线设备上。可以用在本发明中的装备的例子包括Florida的Harris Corporation of Melbourne制造的不同无线网关和无线电设备。作为非限制性例子,这种装备可以包括RF5800、5022、7210、5710、5285和PRC 117和138系列装备和设备。
这些系统可以与RF-5710A高频(HF)调制解调器和被称为STANAG 4539的NATO标准一起工作,STANAG 4539的全部内容在这里通过引用而并入,其提供长距离HF无线电电路以高达9,600bps速率的传输。除了调制解调技术之外,那些系统还可以使用无线电子邮件产品,该无线电子邮件产品使用在这里通过引用而并入其全部内容的像STANAG 4538或STANAG 5066那样为重点战术信道设计和完善的一套数据链路协议。通过设置成ISB模式的无线电设备和设置成固定数据速率的HF调制解调器,也可以使用高达19,200bps的固定非自适应数据速率。可以使用代码组合技术和ARQ。
图2是示出从MELP 2400到MELP 600向下代码转换的基本细节以及示出将输入数据转换成诸如2400参数的MELP参数作为解码的基本步骤的标号从序号100开始的高级流程图。如步骤102所示,譬如,利用一帧的延迟来缓存参数。如方块104所示,通过量化对MELP参数进行时间内插。降低位速率并对内插数据进行编码(方块106)。在这个步骤中,可以利用像在这里通过引用而并入其全部内容的共同转让美国专利第6,917,914号中描述的MELP 600编码算法来完成编码。
图3示出了依照本发明的非限制性例子从MELP 2400到MELP600向下代码转换的更详尽细节。
正如例示在如图3所示的步骤中那样,解码具有电子反对抗(ECCOM)的MELP 2400信道参数(方块110)。生成来自线谱频率(LSF)的预测系数(方块112)。生成感知逆功率谱权重(方块114)。指向当前MELP 2400参数(方块116)。如果帧数大于等于2(方块118),则更新内插值(方块120)。新参数的内插包括音调、线谱频率、增益、抖动、带通话音、不发声和发声数据以及权重(方块122)。如果在方块118的步骤中回答是否定的,那么,跳过方块120和122的步骤。帧数已经得到确定(方块124),并且发生MELP600编码进程(方块126)。最好使用像公开在‘914专利中那样的MELP600算法。保存以前输入的参数(方块128),出现高级状态(方块130),并且返回(方块132)。
图4是例示从MELP 600到MELP 2400的向上代码转换和示出基本高级功能的高级流程图。如方块150所示,像公开在特此引用以供参考的‘914专利中的进程那样使用MELP声码器的参数来解码输入数据。在方块152中,内插取样语音参数,并且如方块154所示,缓存内插的参数。如方块156所示,通过对内插参数进行编码来提高位速率。
作为一个非限制性例子,在图5中示出了从MELP 600到MELP2400的向上代码转换的更详尽细节。
像公开在‘914专利中的进程那样对数据执行MELPe 600解码功能(方块170)。指向当前帧解码参数(方块172),并且为这次叠代确定22.5毫秒帧的数量(方块174)。
获取这个帧的内插值(方块176),并且内插新参数(方块178)。迫使最小线序频率(LSF)最小(方块180),并且进行MELP 2400编码(方块182)。写入编码的ECCM MELP 2400位流(方块184),并且更新帧计数(方块186)。如果在这次叠代中存在更多的22.5毫秒帧(方块188),则进程再次从方块176开始。如果不是,作出比较(方块190),并且更新25毫秒帧计数器(方块192)。使进程返回(方块194)。
下面给出所述算法的伪码的例子:
SIG_LENGTH=327
BUFSIZE24=7
X025_Q15=8192
LPC_ORD=10
NUM_GAINFR=2
NUM_BANDS=5
NUM_HARM=10
BWMIN_Q15=50.0
//melp_param format
//structure melp_param{/*MELP参数*/
//var pitch;
//varlsf[LPC_ORD];
//var gain[NUM_GAINFR];
//var jitter;
//var bpvc[NUM_BANDS];
//var uv_flag;
//var fs_mag[NUM_HARM];
//var weights[LPC_ORD];
//};
structure melp_param cur_par,prev_par
var top_lpc[LPC_ORD]
var interp600_down[10][2]=
{//prev,cur
   {0.0000,1.0000},
   {0.0000,0.0000},
   {0.8888,0.1111},
   {0.7777,0.2222},
   {0.6666,0.3333},
   {0.5555,0.4444},
   {0.4444,0.5555},
   {0.3333,0.6666},
   {0.2222,0.7777},
   {0.1111,0.8888}
}
var interp600_up[10][2]=
{//prev,cur
   {0.1000,0.9000},
   {0.2000,0.8000},
   {0.3000,0.7000},
   {0.4000,0.6000},
   {0.5000,0.5000},
   {0.6000,0.4000},
   {0.7000,0.3000},
   {0.8000,0.2000},
   {0.9000,0.1000},
   {0.0000,1.0000}
}
      /*将MELPe 2400编码数据转换为MELPe 600编码数据*/
      function transcode600_down()
      {
         var num frames=0
         var lsp[10]
         var lpc[11]
         var i,alpha_cur,alpha_prev,numBits
1.读取和解码MELPe 2400编码数据
melp_chn_read(&quant_par,&melp_par[0],&prev_par,
         &chbuf[0])
2.从解码参数中生成感知逆功率谱权重
lsp[i]=melp_par->lsf[i]i=0,...,9
lpc_lsp2pred(lsp,lpc,LPC_ORD)
vq_lspw(&melp_par->weights[0],lsp,lpc,LPC_ORD)
3.指向当前帧参数
cur_par=melp_par[0]
4.如果num_frames<2,转到步骤7
if(num_frames<2)goto step7
5.获取这次叠代的内插值
alpha_cur=interp600_down[num_frames][1]
alpha_prev=interp600_down[num_frames][0]
6.内插MELPe话音参数
melp_par->pitch=alpha_cur*cur_par.pitch
      +alpha_prev*prev_par.pitch
melp_par->lsf[i]=alpha_cur*cur_par.lsf[i]
      +alpha_prev*prev_par.lsf[i]i=0,...,9
melp_par->gain[i]=alpha_cur*cur_par.gain[i]
      +alpha_prev*prev_par.gain[i]i=0,...,1
melp_par->jitter=0
melp_par->bpvc[i]=alpha_cur*cur_par.bpvc[i]
      +alpha_prev*prev_par.bpvc[i]i=0,...,4
if(melp_par->bpvc[i]>=8192)thenmelp_par->bpvc[i]=16384i=0,...,4
else melp_par->bpvc[i]=0
melp_par->uv_flag=alpha_cur*cur_par.uv_flag
      +alpha_prev*prev_par.uv_flag
if(melp_par->uv_flag>=16384)then melp_par->uv_flag=1
else melp_par->uv_flag=0
melp_par->fs_mag[i]=alpha_cur*cur_par.fs_mag[i]
      +alpha_prev*prev_par.fs_mag[i]i=0,...,9
melp_par->weights[i]=alpha_cur*cur_par.weights[i]
      +alpha_prev*prev_par.weights[i]i=0,...,9
7.当num_frames<>1时,调用Melp600编码,返回numBits中的编码位计数
if(num_frames<>1)then numBits=Melp600Encode()
else numBits=0
8.保存当前参数以便用在下一次中
prev_par=cur_par
9.更新num_frames
num_frames=num_frame+1
if(num_frames==10)then num_frames=0
10.返回编码MELPe 600位的数目,这个块返回numBits
11.处理下一个输入块
function transcode600_up()
{
  var frame,i,frame_cnt
  var lpc[LPC_ORD+1],weights[LPC_ORD]
var lsp[10]
var num_frames22P5ms=0,num_frames25ms=0
var Frame22P5MSCount[9]={1,1,1,1,1,1,1,1,2}
var alpha_cur,alpha_prev
1.解码MELPe600编码参数
Melp600Decode()
2.指向这个帧的MELPe话音参数
cur_par=melp_par[0]
3.获取这次叠代的帧数以便进行处理
frame_cnt=Frame22P5MSCount[num_frames25ms]
frame=0
4.获取这个帧的内插值
alpha_cur=interp600_up[num_frames22P5ms][1]
alpha_prev=interp600_up[num_frames22P5ms][0]
5.内插新的MELPe话音参数(从Melp600解码中)
melp_par->pitch=alpha_cur*cur_par.pitch
      +alpha_prev*prev_par.pitch
melp_par->lsf[i]=alpha_cur*cur_par.lsf[i]
      +alpha_prev*prev_par.lsf[i]i=0,...,9
melp_par->gain[i]=alpha_cur*cur_par.gain[i]
      +alpha_prev*prev_par.gain[i]i=0,...,1
melp_par->jitter=alpha_cur*cur_par.jitter
      +alpha_prev*prev_par.jitter
if(melp_par->jitter>=4096)then melp_par->jitter=8192
else melp_par->jitter=0
melp_par->bpvc[i]=alpha_cur*cur_par.bpvc[i]
      +alpha_prev*prev_par.bpvc[i]i=0,...,4
if(melp_par->bpvc[i]>=8192)then melp_par->bpvc[i]=16384i=0,...,4
else melp_par->bpvc[i]=0
melp_par->uv_flag=alpha_cur*cur_par.uv_flag
      +alpha_prev*prev_par.uv_flag
if(melp_par->uv_flag>=16384)then melp_par->uv_flag=1
else melp_par->uv_flag=0
meIp_par->fs_mag[i]=alpha_cur*cur_par.fs_mag[i]
      +alpha_prev*prev_par.fs_mag[i]i=0,...,9
6.限制新内插的LSF的最小带宽
lpc_clamp(melp_par->lsf,BWMIN_Q15,LPC_ORD)
7.利用新LSF生成新感知逆功率谱权重
lsp[i]=melp_par->lsf[i]i=0,...,9
lpc_lsp2pred(lsp,lpc,LPC_ORD)
vq_lspw(weights,lsp,lpc,LPC_ORD)
8.不进行分析地编码新MELPe话音参数
melp2400_encode()
10.写入编码的MELPe 2400位流
melp_chn_write(&quant_par,&chbuf[frame*BUFSIZE24])
11.更新22.5ms帧计数器
num_frames22P5ms=num_frames22P5ms+1
if(num_frames22P5ms==10)num_frames22P5ms=0
12.将帧加1
frame=frame+1
13.如果frame<>frame_cnt,转到步骤4
If frame<>frame_cnt then goto step 4
14.保存来自前一次叠代的当前参数
prev_par=cur_par
15.更新25ms帧计数器
num_frames25ms=num_frames25ms+1
if(num_frames25ms==9)num_frames25ms=0
16.返回这个帧的MELP2400位的正确数目
if(frame_cnt==2)then return(108)
else return(54)
17.处理下一个输入块
应该明白,MELP 2400声码器可以使用预测残余的傅里叶幅度编码来提高语音质量,以及使用矢量量化技术来编码LPC傅里叶信息。MELP 2400声码器可以包括22.5ms帧大小和8kHz取样速率。分析器可以具有像截止频率为大约60Hz以及阻带抑制为大约30dB的四阶切比雪夫(Chebychev)II型滤波器那样的高通滤波器。巴特沃斯(Butterworth)滤波器可以用于带通发声分析。该分析器可以包括线性预测分析和利用汉明码的防错。任何合成器都可以使用将滤波脉冲和噪声激励加在一起的混合激励生成。可以使用长度为一个音调周期和噪声的离散傅里叶逆变换,和可以使用均匀随机数发生器。脉冲滤波器可以具有发声频带的带通滤波系数的和,而噪声滤波器可以具有不发声频带的带通滤波系数的和。可以使用自适应谱增强滤波器。还可以存在直接形式滤波和脉冲色散的线性预测合成。
现在描述依照本发明的非限制性例子、可以用在所述的算法上、可以利用MELP参数的继承帧间冗余的600bps声码器算法。给出当使用具有MIL-STD-188-110B波形的声码器时,对于典型HF信道上的信噪比(SNR),示出诊断可接受度测量(DAM)和诊断节律测试(DTR)两者的优点的一些数据。这种类型的声码器可以用在本发明的系统和方法中。
600bps系统使用传统MELP声码器前端、用于累积MELP参数的多个帧的块缓冲器、和用于MELP参数的各自块矢量量化器。MELP的低速实现对于100ms的块持续时间,使用25ms帧长和四个帧的块缓冲器。这产生每100ms的块持续时间总共60个位,或每秒600个位。如编码的典型MELP参数的例子显示在表1中。
表1—MELP 600声码器
 
语音参数 位数
非周期标志 0
带通发声 4
能量 11
傅里叶幅度 0
音调 7
(10+10+9+9)
下面涵盖各种参数编码方法的细节,后面接着基于矢量量化600bps LPC10e的声码器的位差错性能与本发明一个非限制性例子中的MELP 600bps声码器的比较。说明在几种不同条件下对MELP 2400和600的诊断节律测试(DRT)和诊断可接受性测量(DAM)的结果,并且将它们与在相似条件下对基于LPC10e系统的结果相比较。DRT和DAM结果代表Harris公司和国家安全局进行的测试。
应该明白,存在LPC语音模型。LPC10e越来越普及,因为它通常保存许多可懂度信息,并且因为这些参数与声道的人话产生密切相关。可以将LPC10e定义成代表时域中而不是频域中的语音谱。LPC10e分析进程或发送方产生模型化人声道滤波作为以前语音样本的线性组合的预测系数。这些预测系数可以变换成反射系数,以便为更好的量化、内插、和稳定性估计和校正创造条件。来自LPC10e的合成输出语音可以是这些预测系数与以估计的发声语音段音调速率重复的定型声门脉冲的按增益缩放卷积,或与代表不发声语音的随机噪声的卷积。
LPC10e语音模型使用两个半帧发声判定、当前22.5ms帧音调速率的估计、帧的RMS能量、和10阶预测滤波器所代表的短时谱。可以利用简单汉明码来编码帧的一小部分较重要的位,以便对位差错具有一定程度的容差。在不发声帧内,更多的位是空闲的,用于保护帧的更多部分免受信道差错的影响。
LPC10e模型生成高的可懂度。但是,语音听起来非常不自然,往往包含嗡嗡声语音。将这种模型矢量量化成较低速率将仍然包含同样不自然的发声语音。合成语音通常只随速率下降而变差。基于MELP语音模型的声码器可以提供发声质量比基于LPC10e的声码器更好的语音。MELP模型可以进行矢量量化。
还存在MELP语音模型。MELP是美国政府DoD数字话音处理联盟(DDVPC)开发的,作为窄带安全话音编码的下一代标准。新的语音模型代表2.4Kbps数据速率下语音质量和可懂度的提高。该算法在诸如HMMWV、直升飞机和坦克的刺耳噪声下表现得相当好。通常,LPC10e模型的嗡嗡声发声语音被降低到可接受水平。MELP模型代表带宽约束信道中的下一代话音处理。
如MIL-STD-3005定义的MELP模型基于传统LPC10e参数模型,但还包括五个附加特征。这些特征是混合激励、非周期性脉冲、脉冲色散、自适应谱增强、以及发声激励的傅里叶幅度缩放。
混合激励是利用五带混合模型来实现的。该模型可以利用固定滤波器组来模拟频率相关发声强度。这种多带混合激励的主要效果是降低通常与LPC10e声码器相关联的嗡嗡声。语音常常是发声信号和不发声信号两者的复合物。MELP对复合信号进行比LPC10e的布尔(Boolean)发声/不发声判定更好的近似。
MELP声码器可以利用周期性或非周期性脉冲来合成发声话音。最常见的是,在语音信号的发声段和不发声段之间的过渡匹中使用非周期性脉冲。这个特征使合成器可以不引入音调噪声地再现不稳定声门脉冲。
脉冲色散可以利用基于谱平化三角形脉冲的固定脉冲色散滤波器来实现。该滤波器被实现成固定有限脉冲响应(FIR)滤波器。该滤波器具有在音调周期内扩展激励能量的效果。脉冲色散滤波器的目的是:通过使信号在音调脉冲之间衰减更缓慢,在没有共振峰的区域中在原始话音和合成话音之间达到更好匹配。该滤波器降低了合成话音的苛刻质量。
自适应谱增强滤波器基于LPC声道滤波器的极性,并用于增强合成话音中的共振峰结构。该滤波器改善了合成和自然带通波形之间的匹配,并且将更自然的质量引入输出语音。
通过在LPC残余信号的FFT中定位峰值,来获得前十个傅里叶幅度。体现在这些系数中的信息提高了感觉重要的较低频下语音产生模型的精度。这些幅度用于缩放发声激励,以便恢复在10阶LPC进程中丧失的一些能量。这提高了编码话音的感知质量,尤其对于男性和在存在背景噪声的情况下。
还存在MELP 2400参数熵。熵值可以指示MELP声码器语音模型中的现有冗余。MELP的熵显示在下表2中。利用麻省理工学院(MIT)、SRI国际公司、和德州仪器(TI)公司开发的发音平衡句的TIMIT语音数据库,来测量位中的熵。TIMIT包含来自630个说话者和来自美式英语的八种主要方言的语音,每个说话者讲十个发音丰富的句子。还调查了连续数目帧的熵,以便为600bps的块量化确定块长的良好选择。在如下的部分中将讨论为每个参数选择的块长。
表2—MELP 2400的熵
 
话音参数 位数
非周期标志 1 0.4497
带通发声 5 2.4126
能量(G1+G2) 8 6.2673
傅里叶幅度 8 7.2294
音调 7 5.8916
25 19.2981
矢量量化是将源输出分组在一起并将它们编码成单个块的进程。可以将源值的块看作矢量,因此名为矢量量化。将输入源矢量与叫做代码簿的一组参考矢量相比较。最小化一些适当失真度量的矢量被选为量化矢量。作为在信道上取代量化参考矢量而发送代码簿索引的结果,可以使速率降低。
语音参数的矢量量化在当前的探索中已经是得到广泛研究的课题。在低速率量化下,关键是利用尽可能少的位来有效量化参数。使用适当代码簿结构,既可以减小存储器又可以降低计算复杂性。一种有吸引力的代码簿结构是使用多级代码簿。另外,可以将代码簿结构选择成使代码簿索引对位差错的影响最小。可以使用通用劳埃德(Lloyd)算法来设计代码簿,以便将TIMIT语音数据库用作训练矢量来最小化平均加权均方误差。通用劳埃德算法包括针对给定的一组质心,叠代地将训练集划分成判定区。然后,重新优化新的质心,以便使特定判定区上的失真最小。通用劳埃德算法可以像如下那样。
使用一组初始代码簿值{Yi (0)}i=1,M和一组训练矢量{Xn}n=1,N。设置k=0,使用D(0)=0以及选择阈值ε;
量化区{Vi(k)}i=1,M通过如下给出: V i ( k ) = { X n : d ( X n , Y i ) < d ( X n , Y j ) &dtri; j &NotEqual; i } i=1,2,...,M;
计算训练矢量与代表性代码簿值之间的平均失真D(k)
如果(D(k)-D(k-1))/D(k)<ε,则程序停止;否则,程序继续;以及
k=k+1。求出作为每个量化区Vi (k-1)的元素的平均值的新代码簿值{Yi (k)}i=1,M
将非周期性脉冲设计成除去重构语音中的短暂孤立音调的LPC合成假音。当重构语音是纯周期性时,这主要出现在边际发声语音的区域中。非周期标志指示在语音帧中存在抖动发声状态。当发声抖动时,在合成期间根据围绕纯周期性平均位置的均匀分布来随机化激励的脉冲位置。
对非周期状态的运行长度的调查表明,运行长度在整个TIMIT语音数据库中和在测试的几种噪声条件下一般小于三个帧。并且,如果的确发生了非周期发声帧的运行,则在四个帧的同一块内发生第二次运行是不可能的。由于对语音质量的影响没有与更好地量化剩余MELP参数一样重要,决定在信道上不发送非周期性位。
在MELP模型中,带通发声(BPV)强度控制五个激励频带的哪些发声或不发声。MELP标准分别发送最高四个位,而与音调一起编码最低有效位。表3例示了五个带通发声位的概率密度函数的例子。这五个位可以容易地向下量化成通常只有一点可听失真的仅仅两个位。通过利用发声判定的帧到帧冗余,可以获得进一步的降低。当前低速率声码器可以使用四位代码簿来量化发生在四帧块上的最可能发声过渡。从五位带通发声强度的四个帧的速率降低可以减小到四个位。在四个位上,在量化语音中听到一些可听差异。但是,由带通发声引起的失真不是令人讨厌的。
表3—MELP 600 BPV MAP
 
BPV判定 PROB
Prob(u,u,u,u,u) 0.15
Prob(v,u,u,u,u) 0.15
Prob(v,v,v,u,u) 0.11
Prob(v,v,v,v,v) 0.41
Prob(剩余) 0.18
MELP的能量参数呈现可以通过各种块量化技术利用的相当的帧到帧冗余。可以分组来自连续帧的一系列能量值,以形成任意维的矢量。在MELP 600bps模型中,每帧两个增益值的四个帧的矢量长度可以用作一个非限制性例子。可以使用K-均值矢量量化算法来创建能量代码簿。使用多级缩放的训练数据来训练代码簿,以防止对语音输入电平灵敏。在代码簿训练进程中,为每个新帧创建四个能量值的新块,使得在该块内的四个可能位置的每一个中代表能量过渡。搜索所得代码簿,得出使均方误差最小的代码簿矢量。
对于MELP 2400,每个帧周期发送两个各自增益值。使用范围从10.0到77.0dB的32-级均匀量化器将第一增益值量化成五个位。使用自适应算法将第二增益值量化成三个位。在MELP 600bps模型中,越过四个帧的两个MELP增益值量化矢量。当使用2048元代码簿时,每帧能量位数从MELP 2400的每帧8个位下降到MELP 600的每帧2.909个位。已经调查过能量在每帧2.909个位以下的量化值,但在合成输出语音中量化失真变得可听见,并影响词汇开头和开端的可懂度。
通过包括LPC残余信号的傅里叶系数来增加激励信息。这些系数或幅度说明未通过LPC参数模型化的激励的谱形状。利用对LPC残余信号的FFT来估计这些傅里叶幅度。在音调频率的谐频取样FFT。在当前MIL-STD-3005中,可以认为较低十个谐频较重要,并在22.5ms帧上利用八位矢量量化器来编码它们。
将傅里叶幅度矢量量化成两个矢量之一。对于不发声帧,选择谱平坦矢量来代表发送的傅里叶幅度。对于发声帧,使用单个矢量来代表所有发声帧。可以将发声帧矢量选择成降低残留在低速声码器中的一些刺耳声。为其余MELP参数降低速率降低了在较高速率上看到的对傅里叶幅度的影响。不需要什么位进行上面的量化。
MELP模型使用1kHz低通滤波话音的能量归一化关联来估计帧的音调。MELP模型通过内插部分音调值来进一步改进音调。然后,检验改进的部分音调值从实际音调值的倍数中得出的音调误差。MELP 600正是将这个最后音调值用于矢量量化。
首先中值滤波(3阶)MELP的最后音调值,使得平滑一些瞬时值,以使音调轮廓对声音的低速表示更自然。使用具有128个元素的代码簿来矢量量化平滑音调值的四个连续帧。可以使用k-均值方法来训练代码簿。搜索所得代码簿得出使音调的发声帧的均方误差最小的矢量。
将MELP的LPC谱转换成作为LPC谱的更普遍紧凑表示之一的线谱频率(LSF)。利用四阶段矢量量化算法来量化LSF。第一阶段有七个位,而其余三个阶段每一个使用六个位。所得量化矢量是来自四个阶段每一个的矢量与平均矢量的和。在搜索进程中的每个阶段,VQ搜索使用感知加权欧氏(Euclidean)距离来定位与原始的“M个最佳”最接近匹配。这M个最佳矢量用在下一阶段的搜索中。在四个阶段每一个的最后最佳的指标决定最后量化LSF。
谱的低速量化使用四阶段矢量量化进程来依次量化LSF的四个帧。代码簿的前两个阶段使用十个位,而其余两个阶段每一个使用九个位。对最佳矢量的搜索使用与用在MIL-STD-3005声码器上相似的带有感知加权的“M个最佳”技术。谱的四个帧被量化成只有38个位。
代码簿生成进程使用K-均值和通用劳埃德技术两者。K-均值代码簿用作通用劳埃德进程的输入。可以在可选的一组训练语音上使用滑动窗口,以使跨越四帧块的谱过渡在最终代码簿中得到适当表示。训练代码簿的进程在选择输入语音内容的正确平衡时可能需要非常努力。可以通过重复地生成代码簿和记录具有上述平均失真的矢量,来作出训练数据的选择。这个进程可以除去低概率过渡和可以用过渡帧表示的一些静态帧,而不会使总失真增加到不可接受水平。
诊断可接受度测量(DAM)和诊断节律测试(DRT)用于将MELP声码器的性能与现有基于LPC的系统相比较。这两种测试已经被美国政府广泛用于用数量表示话音编码器性能。DAM要求听者判断信号本身和背景环境的基本和复杂感觉质量的分集的可检测性。DRT是基于话音中的可懂度相关信息由少量可区分特征携带的原理的双选可懂度测试。DRT被设计成测量受测试的通信系统多好地保存了有关六个二进制可区分特征(发声、鼻音、维持、发咝声、抑音和紧凑性)的状态的信息。
两种基于MELP的声码器的DRT性能在大多数测试条件下超过LPC声码器的可懂度。600bps MELP DRT仅仅在较高位速率MELP系统的3.5个点内。MELP的矢量量化引起的速率降低未显著影响模型的可懂度。HMMWV的DRT分数证明,在存在声学噪声的情况下,MELP声码器的噪声预处理器使可懂度更好。
表4—声码器DRT/DAM测试
 
测试条件 DRT DAM
源材料(寂静) 95.91 85.81
MELPe 2400(寂静) 94.01 69.11
MELPe 600(寂静) 90.51 54.91
LPC10e 2400(寂静) 89.41 50.01
LPC10e 600(寂静) 86.81 47.11
源材料(HMMWV) 91.02 45.02
MELPe 2400(HMMWV) 74.42 52.62
MELPe 600(HMMWV) 65.01 40.31
LPC10e 2400(HMMWV) 68.71 37.61
LPC10e 600(HMMWV) 61.91 35.31
MELP模型的DAM性能证明了新话音模型的强度。在600bps下MELP的话音可接受度在两个声码器之间存在最显著差异的寂静测试条件下比LPC10e 2400好4.9个点。MELP 2400的说话者识别比LPC10e 2400好得多。基于MELP的声码器具有明显较少的合成发声话音以及少得多的嗡嗡声。MELP的音频与LPC10e相比感觉更亮并具有更多的低端和高端能量。
安全语音可用性与用于传送声码器数据的波形的误码率性能和声码器对位差错的容忍度直接相关。正如在表5的例子中看到的那样,1%的误码率使两个基于MELP和LPC的编码器降低话音可懂度和质量。因此,有用范围对于MELP在大约3%误码率以下,而对于基于LPC的声码器在大约1%误码率以下。
在分别如图6和7所示的曲线图中,对于高斯(Gaussian)和CCIR不良信道两者,可以看到MIL-STD-188-110B波形的1%误码率。这些曲线表明,通过不同于2400bps标准使用600bps波形,可以获得大约7dB的增益。正是在SNR的这个较低区域中允许HF链路在一天的较长部分内起作用。实际上,许多2400bps链路在一天中的任意时间,基于传播和功率级在1%误码率以下不能起作用。使用10-20W功率级的典型单人可携带无线电设备即使承担更关键使命,也可以对声码器速率作出选择。
表5—BER1%DRT/DAM测试
 
测试条件 DRT DAM
MELPe 2400 91.51 54.72
MELPe 600 85.21 43.11
LCP10e 2400 81.42 N/A
LPC10e 600 79.51 38.31
依照一个非限制性例子的MELP声码器可以在譬如十六位固定点德州仪器公司TMS320VC5416数字信号处理器上实时地运行。低功率硬件设计可以驻留在Harris RF-5800H/PRC-150单人可携带无线电设备中,并且可以负责运行几种话音编码器和多种数据相关接口和协议。在这些非限制性例子中,DSP硬件设计可以以150MHz运行片上核心(零等待状态),而片外访问可以限于50MHz(两个等待状态)。数据存储结构可以具有64K零等待状态片内存储器、和按32K存储体分页的256K双等待状态外部存储器。对于程序存储器,该系统可以具有另外64K零等待状态片上存储器、可以通过DSP全面寻址的256K外部存储器。
2400bps MELP源代码的例子可以包括与Harris公司制造的MELP 600声码器组合的德州仪器公司54X汇编语言源代码。这种代码在一个非限制性例子中已经被修改成在使用使DSP程序跨越不止64K的FAR CALLING运行时环境的TMS320VC5416结构上运行。该代码已经集成到使用TI的C初始化机构来初始化MELP的变量的C调用环境中,并且与Harris公司专有的DSP操作系统结合在一起。
MELP 2400目标系统上的运行时装载允许以24.4%装载进行分析、12.44%装载噪声预处理器、和以8.88%装载进行合成。由于该进程不超过表查找,所以作为MELP 600合成的一部分,负载增加非常小。MELP 600声码器的附加循环包含在谱分析的矢量量化中。
新的MIL-STD-3005声码器的话音质量好于较老的FED-STD-1015声码器。正如在美国MIL-STD-188-110B中定义的那样,矢量量化技术可以用在与600bps波形的使用结合的新标准声码器上。结果似乎表明,在一些衰落信道上HF性能可以提高5-7dB。而且,600bps声码器的话音质量在几种测试条件下通常好于现有2400bps LPC10e标准。需要进一步的空中测试来确认给出的模拟结果。如果空中测试证实了该结果,则MELP的低速率编码可以用在MIL-STD-3005上,以便改善单人可携带无线电设备在困难HF链路上的通信和扩大可用性。
权利要求书(按照条约第19条的修改)
1.一种代码转换如来自第一MELP语音编码器(声码器)的语音帧速率的混合激励线性预测(MELP)编码语音数据以便用于第二MELP声码器中的不同语音帧速率的方法,该方法包括:
将代表语音的输入数据转换成第一MELP声码器所使用的MELP语音参数;
缓存MELP参数;
通过量化对来自语音数据帧的MELP参数进行时间内插;以及
对作为与语音数据帧相对应的位块的内插数据执行编码功能,以产生位速率的降低,如处于与第一MELP声码器不同的语音帧速率的第二MELP声码器所使用的。
2.如权利要求1所述的方法,进一步包括:将MELP 2400声码器所使用的位速率向下代码转换成MELP 600声码器所使用的位速率。
3.如权利要求1所述的方法,进一步包括:对于话音数据块,从一个块内的多个相继帧的未量化MELP参数中量化MELP参数。
4.如权利要求1所述的方法,其中,执行编码功能的步骤包括:获取未量化MELP参数以及组合多个帧以形成一个MELP 600bps帧,建立未量化MELP参数,量化MELP 600bps帧的MELP参数,并将它们编码成串行数据流。
5.如权利要求1所述的方法,进一步包括利用一个帧的延迟来缓存MELP参数。
6.如权利要求1所述的方法,进一步包括预测25毫秒间隔点。
7.一种代码转换如来自第一MELP语音编码器(声码器)的语音帧速率的混合激励线性预测(MELP)编码语音数据以便用于第二MELP声码器中的不同语音帧速率的声码器,包括:
解码电路,用于将代表语音的输入数据解码成第一MELP声码器所使用的MELP语音参数;
转换单元,用于缓存MELP参数,以及通过量化对来自语音数据帧的MELP参数进行时间内插;以及
编码电路,用于编码作为与语音数据帧相对应的位块的内插数据,以产生位速率的降低,如处于不同语音帧速率的第二MELP声码器所使用的。
8.如权利要求7所述的声码器,其中,所述编码电路操作用于对于话音数据块,从一个块内的多个相继帧的未量化MELP参数中量化MELP参数。
9.如权利要求7所述的声码器,其中,所述编码电路操作用于获取未量化MELP参数,组合多个帧形成一个MELP 600bps帧,建立未量化MELP参数,量化MELP 600bps帧的MELP参数,并将它们编码成串行数据流。
10.如权利要求9所述的声码器,其中,将MELP 2400编码数据向下代码转换成MELP 600编码数据。

Claims (10)

1.一种代码转换混合激励线性预测(MELP)编码数据以便用于不同语音帧速率的方法,该方法包括:
将输入数据转换成第一MELP声码器所使用的MELP参数;
缓存MELP参数;
通过量化对MELP参数进行时间内插以预测间隔点;和
对作为一个块的内插数据执行编码功能,以产生位速率的降低,如处于与第一MELP声码器不同的语音帧速率的第二MELP声码器所使用的。
2.如权利要求1所述的方法,进一步包括:将MELP 2400声码器所使用的位速率向下代码转换成MELP 600声码器所使用的位速率。
3.如权利要求1所述的方法,进一步包括:对于话音数据块,从一个块内的多个相继帧的未量化MELP参数中量化MELP参数。
4.如权利要求1所述的方法,其中,执行编码功能的步骤包括:获取未量化MELP参数以及组合多个帧以形成一个MELP 600bps帧,建立未量化MELP参数,量化MELP 600bps帧的MELP参数,并将它们编码成串行数据流。
5.如权利要求1所述的方法,进一步包括:利用一帧延迟来缓存MELP参数。
6.如权利要求1所述的方法,进一步包括:预测25毫秒间隔点。
7.一种代码转换编码的混合激励线性预测(MELP)数据以便用于不同语音帧速率的声码器,包括:
解码电路,用于将输入数据解码成第一MELP声码器所使用的MELP参数;
转换电路,用于缓存MELP参数,以及通过量化对MELP参数进行时间内插以预测间隔点;以及
编码电路,用于编码作为一个块的内插数据,以产生位速率的降低,如处于不同语音帧速率的第二MELP声码器所使用的。
8.如权利要求7所述的声码器,其中,所述编码电路操作用于对于话音数据块,从一个块内的多个相继帧的未量化MELP参数中量化MELP参数。
9.如权利要求7所述的声码器,其中,所述编码电路操作用于获取未量化MELP参数,组合多个帧以形成一个MELP 600bps帧,建立未量化MELP参数,量化MELP 600bps帧的MELP参数,并将它们编码成串行数据流。
10.如权利要求9所述的声码器,其中,将MELP 2400编码数据向下代码转换成MELP 600编码数据。
CNA2007800305050A 2006-06-21 2007-06-19 在具有不同语音帧速率的混合激励线性预测(melp)声码器之间进行代码转换的声码器和相关方法 Pending CN101506876A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/425,437 US8589151B2 (en) 2006-06-21 2006-06-21 Vocoder and associated method that transcodes between mixed excitation linear prediction (MELP) vocoders with different speech frame rates
US11/425,437 2006-06-21

Publications (1)

Publication Number Publication Date
CN101506876A true CN101506876A (zh) 2009-08-12

Family

ID=38664457

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007800305050A Pending CN101506876A (zh) 2006-06-21 2007-06-19 在具有不同语音帧速率的混合激励线性预测(melp)声码器之间进行代码转换的声码器和相关方法

Country Status (7)

Country Link
US (1) US8589151B2 (zh)
EP (1) EP2038883B1 (zh)
JP (1) JP2009541797A (zh)
CN (1) CN101506876A (zh)
CA (1) CA2656130A1 (zh)
IL (1) IL196093A (zh)
WO (1) WO2007149840A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101887727A (zh) * 2010-04-30 2010-11-17 重庆大学 从help编码到melp编码的语音编码数据转换系统及方法
CN106463134A (zh) * 2014-03-28 2017-02-22 三星电子株式会社 用于对线性预测系数进行量化的方法和装置及用于反量化的方法和装置
US10504532B2 (en) 2014-05-07 2019-12-10 Samsung Electronics Co., Ltd. Method and device for quantizing linear predictive coefficient, and method and device for dequantizing same
CN112614495A (zh) * 2020-12-10 2021-04-06 北京华信声远科技有限公司 一种软件无线电多制式语音编解码器

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070011009A1 (en) * 2005-07-08 2007-01-11 Nokia Corporation Supporting a concatenative text-to-speech synthesis
WO2007088877A1 (ja) * 2006-01-31 2007-08-09 Honda Motor Co., Ltd. 会話システムおよび会話ソフトウェア
US7937076B2 (en) * 2007-03-07 2011-05-03 Harris Corporation Software defined radio for loading waveform components at runtime in a software communications architecture (SCA) framework
US8521520B2 (en) * 2010-02-03 2013-08-27 General Electric Company Handoffs between different voice encoder systems
US9117455B2 (en) * 2011-07-29 2015-08-25 Dts Llc Adaptive voice intelligibility processor
KR20130114417A (ko) * 2012-04-09 2013-10-17 한국전자통신연구원 훈련 함수 생성 장치, 훈련 함수 생성 방법 및 그것을 이용한 특징 벡터 분류 방법
US9672811B2 (en) * 2012-11-29 2017-06-06 Sony Interactive Entertainment Inc. Combining auditory attention cues with phoneme posterior scores for phone/vowel/syllable boundary detection
CN103050122B (zh) * 2012-12-18 2014-10-08 北京航空航天大学 一种基于melp的多帧联合量化低速率语音编解码方法
US9105270B2 (en) * 2013-02-08 2015-08-11 Asustek Computer Inc. Method and apparatus for audio signal enhancement in reverberant environment
HRP20240674T1 (hr) 2014-04-17 2024-08-16 Voiceage Evs Llc Postupci, koder i dekoder za linearno prediktivno kodiranje i dekodiranje zvučnih signala pri prijelazu između okvira koji imaju različitu brzinu uzorkovanja
KR102244612B1 (ko) 2014-04-21 2021-04-26 삼성전자주식회사 무선 통신 시스템에서 음성 데이터를 송신 및 수신하기 위한 장치 및 방법
US10679140B2 (en) 2014-10-06 2020-06-09 Seagate Technology Llc Dynamically modifying a boundary of a deep learning network
US11593633B2 (en) * 2018-04-13 2023-02-28 Microsoft Technology Licensing, Llc Systems, methods, and computer-readable media for improved real-time audio processing
EP3857541B1 (en) 2018-09-30 2023-07-19 Microsoft Technology Licensing, LLC Speech waveform generation
US12060148B2 (en) 2022-08-16 2024-08-13 Honeywell International Inc. Ground resonance detection and warning system and method

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5602961A (en) * 1994-05-31 1997-02-11 Alaris, Inc. Method and apparatus for speech compression using multi-mode code excited linear predictive coding
US5987506A (en) * 1996-11-22 1999-11-16 Mangosoft Corporation Remote access and geographically distributed computers in a globally addressable storage environment
US7272556B1 (en) * 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
KR20010080646A (ko) 1998-12-01 2001-08-22 린다 에스. 스티븐슨 강화된 파형 보간 코더
US6453287B1 (en) * 1999-02-04 2002-09-17 Georgia-Tech Research Corporation Apparatus and quality enhancement algorithm for mixed excitation linear predictive (MELP) and other speech coders
US6691082B1 (en) 1999-08-03 2004-02-10 Lucent Technologies Inc Method and system for sub-band hybrid coding
US6581032B1 (en) * 1999-09-22 2003-06-17 Conexant Systems, Inc. Bitstream protocol for transmission of encoded voice signals
US7315815B1 (en) 1999-09-22 2008-01-01 Microsoft Corporation LPC-harmonic vocoder with superframe structure
US7010482B2 (en) 2000-03-17 2006-03-07 The Regents Of The University Of California REW parametric vector quantization and dual-predictive SEW vector quantization for waveform interpolative coding
US7363219B2 (en) * 2000-09-22 2008-04-22 Texas Instruments Incorporated Hybrid speech coding and system
US20030028386A1 (en) 2001-04-02 2003-02-06 Zinser Richard L. Compressed domain universal transcoder
US6757648B2 (en) * 2001-06-28 2004-06-29 Microsoft Corporation Techniques for quantization of spectral data in transcoding
US20030195006A1 (en) * 2001-10-16 2003-10-16 Choong Philip T. Smart vocoder
US6934677B2 (en) * 2001-12-14 2005-08-23 Microsoft Corporation Quantization matrices based on critical band pattern information for digital audio wherein quantization bands differ from critical bands
US6829579B2 (en) * 2002-01-08 2004-12-07 Dilithium Networks, Inc. Transcoding method and system between CELP-based speech codes
US6917914B2 (en) * 2003-01-31 2005-07-12 Harris Corporation Voice over bandwidth constrained lines with mixed excitation linear prediction transcoding
US20040192361A1 (en) 2003-03-31 2004-09-30 Tadiran Communications Ltd. Reliable telecommunication
US7668712B2 (en) * 2004-03-31 2010-02-23 Microsoft Corporation Audio encoding and decoding with intra frames and adaptive forward error correction
US8457958B2 (en) * 2007-11-09 2013-06-04 Microsoft Corporation Audio transcoder using encoder-generated side information to transcode to target bit-rate

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101887727A (zh) * 2010-04-30 2010-11-17 重庆大学 从help编码到melp编码的语音编码数据转换系统及方法
CN106463134A (zh) * 2014-03-28 2017-02-22 三星电子株式会社 用于对线性预测系数进行量化的方法和装置及用于反量化的方法和装置
CN106463134B (zh) * 2014-03-28 2019-12-13 三星电子株式会社 用于对线性预测系数进行量化的方法和装置及用于反量化的方法和装置
US10515646B2 (en) 2014-03-28 2019-12-24 Samsung Electronics Co., Ltd. Method and device for quantization of linear prediction coefficient and method and device for inverse quantization
US11450329B2 (en) 2014-03-28 2022-09-20 Samsung Electronics Co., Ltd. Method and device for quantization of linear prediction coefficient and method and device for inverse quantization
US10504532B2 (en) 2014-05-07 2019-12-10 Samsung Electronics Co., Ltd. Method and device for quantizing linear predictive coefficient, and method and device for dequantizing same
US11238878B2 (en) 2014-05-07 2022-02-01 Samsung Electronics Co., Ltd. Method and device for quantizing linear predictive coefficient, and method and device for dequantizing same
US11922960B2 (en) 2014-05-07 2024-03-05 Samsung Electronics Co., Ltd. Method and device for quantizing linear predictive coefficient, and method and device for dequantizing same
CN112614495A (zh) * 2020-12-10 2021-04-06 北京华信声远科技有限公司 一种软件无线电多制式语音编解码器

Also Published As

Publication number Publication date
US20070299659A1 (en) 2007-12-27
WO2007149840B1 (en) 2008-03-13
US8589151B2 (en) 2013-11-19
WO2007149840A1 (en) 2007-12-27
JP2009541797A (ja) 2009-11-26
CA2656130A1 (en) 2007-12-27
IL196093A (en) 2014-03-31
IL196093A0 (en) 2009-09-01
EP2038883B1 (en) 2016-03-16
EP2038883A1 (en) 2009-03-25

Similar Documents

Publication Publication Date Title
CN101506876A (zh) 在具有不同语音帧速率的混合激励线性预测(melp)声码器之间进行代码转换的声码器和相关方法
Kondoz Digital speech: coding for low bit rate communication systems
EP3039676B1 (en) Adaptive bandwidth extension and apparatus for the same
Chu Speech coding algorithms: foundation and evolution of standardized coders
US7496505B2 (en) Variable rate speech coding
JP5037772B2 (ja) 音声発話を予測的に量子化するための方法および装置
US5966688A (en) Speech mode based multi-stage vector quantizer
EP1222659B1 (en) Lpc-harmonic vocoder with superframe structure
JP3446764B2 (ja) 音声合成システム及び音声合成サーバ
EP2805324B1 (en) System and method for mixed codebook excitation for speech coding
Chamberlain A 600 bps MELP vocoder for use on HF channels
US20030055633A1 (en) Method and device for coding speech in analysis-by-synthesis speech coders
JP4287840B2 (ja) 符号化装置
KR960015861B1 (ko) 선 스펙트럼 주파수 벡터의 양자화 방법 및 양자화기
Noll Speech coding for communications.
Ribbum et al. Performance study of stochastic speech coders
Lee Analysis by synthesis linear predictive coding
Gardner et al. Survey of speech-coding techniques for digital cellular communication systems
Sridharan et al. Speech coding
Woodard Digital coding of speech using code excited linear prediction
Spanias Speech coding for mobile and multimedia applications
Langi Code-excited linear predictive coding for high-quality and low bit-rate speech
Dimolitsas Speech Coding
Ravishankar et al. Voice Coding Technology for Digital Aeronautical Communications
JP2003202884A (ja) 音声合成システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20090812