CN1035379A - 具有改进的矢量激发源的数字语音编码器 - Google Patents
具有改进的矢量激发源的数字语音编码器 Download PDFInfo
- Publication number
- CN1035379A CN1035379A CN89100090A CN89100090A CN1035379A CN 1035379 A CN1035379 A CN 1035379A CN 89100090 A CN89100090 A CN 89100090A CN 89100090 A CN89100090 A CN 89100090A CN 1035379 A CN1035379 A CN 1035379A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- vector
- coded word
- signal
- code
- 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
- 239000013598 vector Substances 0.000 title claims abstract description 350
- 238000000034 method Methods 0.000 claims abstract description 109
- 230000005284 excitation Effects 0.000 claims abstract description 88
- 238000001914 filtration Methods 0.000 claims description 27
- 230000004044 response Effects 0.000 claims description 21
- 238000012360 testing method Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000008676 import Effects 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 7
- 238000009825 accumulation Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000011156 evaluation Methods 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 claims description 5
- 230000001427 coherent effect Effects 0.000 claims 4
- 238000012854 evaluation process Methods 0.000 claims 1
- 238000000844 transformation Methods 0.000 claims 1
- 238000005070 sampling Methods 0.000 description 32
- 230000008901 benefit Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000003860 storage Methods 0.000 description 9
- 230000000295 complement effect Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000001373 regressive effect Effects 0.000 description 2
- 238000007634 remodeling Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
- G10L19/135—Vector sum excited linear prediction [VSELP]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
- G10L2019/0001—Codebooks
- G10L2019/0007—Codebook element generation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
- G10L2019/0001—Codebooks
- G10L2019/0013—Codebook search algorithms
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/06—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
根据“矢量求和”方法(120),与激发信号代码字(i)一起采用一组M个基本矢量Vm(n)产生出激发矢量代码本Ui(n),该“矢量求和”方法(120)是将若干选择器代码字转换成多个中间数据信号。再将该组M个基本矢量与该中间数据信号相乘,然后再将该结果矢量进行求和,从而产生该组2M个代码本矢量。此外,可以有效地搜索整个2M个可能的激发矢量代码本—即无需再产生并计算每个代码矢量本身。相对于所有2M个代码矢量来说,只需要把M个基本矢量存入存贮器(114)。
Description
一般来讲,本发明涉及在低位速上进行数字语音编码。更具体来说,本发明为代码激发的线性予示语音编码器,指出一种对激发信息进行编码的改进方法。
代码激发线性予示(CELP)是在低位速,即,每秒4.8至9.6千位(Kbps)上,具有产生高质量合成语言这种潜能的一种语音编码方法。这类语音编码,作为矢量激发线性予示或随机编码也是公知的,将会广泛地用在数字语音通信及语言合成的应用之中。特别是CELP能够用于数字语音加密及数字无线电话通信系统。在这些系统之中,语音的质量、数据的速率、容量,以及成本都是一些比较重要的问题。
在CELP语音编码器中,构成其输入语音信号特点的长项(“音调”)和短项(“构形成份”)予示算子具体体现在一组时间变化的线性滤波器上。从所存贮的修正顺序上的代码本或代码矢量中选取这些滤波器的激发信号。对于每个语音帧,该语音编码器将每个单个的代码矢量加到这些滤波器上,从而产生出一个重新构成的语音信号;然后,再把原来输入的语音信号同该重新构成的语音信号相比较,从而产生出一个误差信号。而后,借助于把该误差信号通过具有人的听觉响应的加权滤波器对该误差信号进行加权。对于现行的语音帧,选择用最低能量产生该加权的误差信号的代码矢量来决定其最佳的激发信号。
该名词“代码激发”或“矢量激发”出自于该语音编码器的激发顺序是矢量量子化的因素,也就是说,采用单个的代码字来表示激发取样的时序或者矢量。这样一来,就有可能以每个取样少于一位的数据速率对该激发顺序进行编码。所存贮的激发代码矢量通常是由独立的随机白高斯序列组成的。采用代码本中的一个代码矢量来表示每个由N个激发取样组成的方块。用一个代码字表示每个存贮的代码矢量,也就是代码矢量存贮单元的地址。随后,正是把这个代码字通过一个通信通道送到语言合成器,从而在接收器上重新建造起语言帧。见M.R.Sctvroeder及B.S Atolj 1985年3月发表在Proeoedingo of tle IEEE Infernational Couferend on Acou Acoustics Speech amd Sgnal Processig(ICASSP)Vo1,3,第937-40页上,关于CELP的详细解释的文章“代码激发的线性予示(CELP):在很低的位速上的高质量语音”。
该CELP语音编码方法的困难在于完成代码本中对所有的激发代码矢量进行周密搜索的相当复杂的计算上。例如,在8千赫(KHz)的取样速率上,一个5毫秒(msec)的语音帧将由40个取样组成。如果在每个取样0.25位(相当于2Kbps)的速率上将其激发信息进行编码,那么对每个帧进行编码就要用10位的信息。因此,该随机的代码本将包含有210或1024个随机的代码矢量。该矢量搜索程序在每个代码矢量中对于这40个取样中的每个取样大约需要15个乘法累积(MAC)计算(假设第三阶为长项予示算子,而第十阶为短项予示算子)。这就相当于每5毫秒语音帧每个代码矢量600MAC,或大约每秒120,000,000MAC(600MAC/5毫秒帧×1024代码矢量)。所以说,为了最好地适应这种超乎寻常的计算工作,它就需要搜索1024个矢量的整个代码本-这是用今天的数字信号处理技术作到实时实现的一种实际上作不到的任务。
况且,为了存贮这些独立的随机矢量的代码本,对存贮单元地址分配来说,也未免要求过高了。对上述例子来说,为了存贮所有这1024个代码矢量,而且每个都有40个取样,每个取样都用16位的字进行表示,则需要一个640千位的只读存贮器(ROM)。目前的许多语音编码应用要求用这种容量的ROM,不论从容量上讲,还是从成本上讲,都是不切合实际的。因此,当前现有技术中的代码激发线性予示对于语音编码来说并不是一个实际可行的方法。
为了减少这种代码搜索处理的计算上的复杂性的一种办法是在变换区域内实现该搜索计算。参见T.M.Trancoso及B.S.Atal1986年4月在Proc.ICASSP Vol.4,第2375-8页上发表的文章“关于在随机编码器中寻找最佳革新的有效方法”之中所描述的就是这种方法的一个例子。采用这种方法,可以用离散富里叶变换(DET)或其他变换在其变换区域内表示滤波器的响应,这样就把该滤波器的计算减少到对每个代码矢量每个取样中的一个单个MAC运算了。然而,为了对该代码矢量求值,还是需要在每个代码矢量每个取样中附加有2个MAC,于是导致一定数目的乘法累积运算,也就是说,在以上例子中每5毫秒帧每个代码矢量是120,或者每秒24,000,000个MAC。再有,由于还必须存贮每个代码矢量的变换,因此这种变换方法至少需要成倍数量的存贮器。在以上例子中,为实现采用变换的CELP,将需要1.3兆位的ROM。
为减少这种计算的复杂性的第二种方法是建立激发代码本,这样一来,这些代码矢量彼此间不再互相无关了。在这种方法中,从前面的代码矢量的滤波方式之中可以计算这个代码矢量的滤波方式,同时每个取样仅只采用一个单个的滤波计算MAC。这种方法导致大体上与变换方法要求作同样多的计算,即每秒24,000,000个MAC,于是显著地减少了所需要的ROM的数量(在以上例子中,可减少到16千位)。这种代码本类型的例子在由D.Lin1987年4月发表在Proc.ICASSP Vol.3第1354-7页上的文章“采用有效的伪随机块代码的语音编码”中已经给出来了。尽管如此,每秒24,000,000MAC现在还是超出了单个DSP的计算能力。况且,ROM的容量是根据2M×#位数/字,在这里的M是该代码字中的位数;因此,该代码本包含有2M个代码矢量。所以说,该存贮要求仍然随着对该激发信息的帧进行编码所采用的位数呈指数性地增加着。例如,当采用12位的代码字时,则该ROM就需要增加到64千位。
因此,为了解决对代码本进行周密搜索这种极端复杂的计算问题以及对于存贮这些激发代码矢量存在如此高的存贮要求的问题,当前需要提出一种改进的语音编码方法。
因此,本发明总的目的是提出一种改进的以低位速产生高质量语音的数字语音编码方法。
本发明的另一目的是指出一种具有降低存贮要求的有效的激发矢量产生方法。
本发明的再一个目的是提出一种采用现在的数字信号处理技术以实时实现实际可行的具有降低计算复杂性的改进的代码本搜索方法。
本发明所达到的这些目的,简要来说,就是一种改进的采用具有激发代码矢量的代码本对语音编码器的激发矢量的产生与搜索的方法。根据本发明的第一方面,按照激发信号代码字采用一组基本矢量产生出根据新的“矢量求和”方法的激发矢量代码本。这种产生2M代码本矢量组的方法包括如下步骤:输入一组选择器代码字;一般根据每个选择器代码字每个位的值,将该选择器代码字转换成多个中间数据信号;输入一组M个基本矢量,一般来讲存贮在存贮器中存贮整个代码本的地方上;将该组M个基本矢量与多个中间数据信号相乘,产生出多个中间矢量;以及将该多个中间矢量进行求和,产生出该组2M的代码矢量。
根据本发明的第二个方面,采用如何从基本矢量中产生代码矢量的知识有效地搜索整个这2M的可能激发矢量的代码本-这就是说,不需要产生并计算出每个代码矢量的本身。这种相应于理想激发矢量的代码字进行选择的方法包括如下步骤:产生相应于输入信号的输入矢量;输入一组M个基本矢量;从这些基本矢量中产生出多个被处理的矢量;将该被处理的矢量同其输入矢量进行比较,产生出比较信号;计算相应于该组2M个激发矢量的每个矢量的每个代码字的参数,这些参数都是以这些比较信号为基础的;对于每个代码字所计算的参数进行求值,并对表示该代码矢量的一个代码字进行选择,这样将会产生出一个重新建造起来的与输入信号最为接近一致的信号,而无需再产生该组2M个激发矢量中的每个矢量。根据予先决定的排序方法,一次只能改变代码字中的一个位,通过从一个代码字到下一个代码字进行排序,达到进一步减少计算上的复杂程度;因此,根据该予定的排序方法,则把对于下一个代码字的计算减化到来自前面代码字的修正参数上。
本发明的这种“矢量求和”代码本产生方法使得CELP语音编码能够比较快地实现,同时还保持以低位速上的高质量语音的优点。更具体来说,本发明提出了一种对于计算复杂性问题以及存贮要求问题的有效解决方案。例如,该矢量求和方法在此揭示出对于每个代码字的求值仅只需要M+3个MAC。根据上述的例子来说,这就相应于仅只13个MAC,相反按照标准的CELP则为600个MAC,或者采用变换方法则为120个MAC。这种改进,换句话说,在计算复杂程度上,大约减少了10倍,致使大约每秒2,600,000个MAC。这种计算复杂程度的降低使得在实际上有可能采用单个DSP以实时实现CECELP。
此外,与要对所有的2M个代码矢量进行存贮相反仅只需要在存贮器中存贮M个基本矢量,因此,本发明对上述例子来说,对ROM的要求就从640千位降低到6.4千位了。本发明的语音编码方法的再一个优点是比起标准的CELP来讲,更不容易出现通道上的误差。采用本发明的矢量求和激发语音编码器,在所接收到的代码字中的单个位误差将会形成一个类同于所希望的一个激发矢量。在同样的条件下,标准的CELP,采用随机代码本,都将会产生一个任意的激发矢量-也就是说,与所希望的激发矢量有可能完全无关。
本发明相信是新颖的若干特征均具体在附后的权利要求书中提出了。本发明的目的及其优点,结合附图参阅说明书,会得到最好的理解。图中对同样的部件均采用相同的标号进行标识。其中:
图1是根据本发明采用矢量求和激发信号产生方法的代码激发线性予示语音编码器的总框图;
图2A/2B是说明图1的语音编码器所完成的操作总次序的一个简化的流程图;
图3是说明本发明的矢量求和方法的,关于图1的代码本产生器方框的一种详细的方框图;
图4是采用本发明的语音合成器的总框图;
图5是说明根据本发明的最佳实施方案所改进的搜索方法的,关于图1的语音编码器的部分方框图;
图6A/6B是说明由图5的语音编码器所完成的操作次序,并实现其最佳实施方案的增益计算方法的一个详细的流程图;以及
图7A/7B/7C是说明由图5另一个实施方案完成的操作次序,并采用予先计算增益的方法的一个详细的流程图。
现在参阅图1。这里示出一个根据本发明采用激发信号产生方法的代码激发线性予示语音编码器100的总方框图。把要进行分析的声学输入信号加到麦克风102上的语音编码器100。而后,将该输入信号,一般是语音信号,加到滤波器104上。一般来讲,滤波器104要呈现出带通滤波的特性来。但是,如果对该语音的带宽来讲足以满足要求的话,那么滤波器104可能就是由一条直接连接的导线组成的。
然后,将来自滤波器104中的模拟语音信号转换成N个脉冲取样的序列,并且按照公知技术中的模/数(A/D)转换器那样,以数字代码表示每个脉冲取样的幅度。用取样时钟SC决定其取样的速率。在本最佳实施方案中该取样速率是8.0KH2。通过时钟112按照帧时钟FC产生该取样时钟SC。
将该可以表示为输入语音矢量S(n)的A/D 108的数字输出信号加给系数分析器110。在各个帧中重复地取得该输入语音矢量S(n),即时间块,并由该帧时钟FC决定该时间块的长度。在本最佳实施方案中,输入语音矢量S(n),1≤n≤N,表示一个含有N=40个取样的5毫秒帧;其中,用一个12至16位的数字代码表示每个取样。对于每个语音块,根据现有技术用系数分析器110产生一组线性予示编码(LPC)的参数。将该短项的予示算子参数STP、长项的予示算子参数LTP、加权的滤波器参数WFP,以及激发增益系数γ(同时还有以下要说明的最佳激发代码字I)加给多路转换器150并且送到语音合成器要使用的通道上。参见由B.S.Atal于1982年4月发表在IEEE Trans.Commun.Vol.COM-30第600-14页上的关于产生这些参数的表示方法的文章“以低位速进行的语音予示编码”。该输入的语音矢量S(n)也加到减法器130上,该减法器的作用将随后加以说明。
基本矢量存贮块114包含有一组M个基本矢量Vm(n),其中1≤m≤M;每个基本矢量又由N个取样组成,其中1≤n≤N。通过代码本产生器120用这些基本矢量产生出一组2M个伪随机激发矢量ui(n),其中0≤i≤2M-1。这M个基本矢量中的每个基本矢量均由一系列的随机白高斯取样组成,虽然本发明也可以采用其他类型的基本矢量。
代码本产生器120采用M个基本矢量Vm(n)及一组2M个激发代码字Ii,在这里0≤i≤2M-1,从而产生出该2M个激发矢量ui(n)。在本最佳最施方案中,每个代码字Ii均等于它的下标指数i,即Ii=i。如果对于这40个取样中的每个取样,以每个取样0.25位的速度将其激发信号进行编码的话,那么这就要用10个基本矢量来产生该1024个激发矢量了。根据矢量求和激发方法产生这些激发矢量。以下将根据图2和图3来说明该矢量求和激发方法。
对于每个单个的激发矢量ui(n)来说,产生一个重建的语音矢量S′i(n)用来对输入的语音矢量S(n)作比较。增益块122用激发增益系数γ定标该激发矢量ui(n)。该激发增益系数γ在该帧期间内是常数。该激发增益系数γ可以通过系数分析器110予先计算出来,并且用来分析如图1所示的全部激发矢量,或者可与对其最好的激发代码字I的搜索一起将它作出最佳选择并且通过代码本搜索控制器140产生出该激发增益系数γ,以下将根据图5来说明这个最佳选择增益的方法。
然后,通过长项予示算子滤波器124及短项予示算子滤波器126将其扫视过的激发信号γui(n)进行滤波,从而产生出重建的语音矢量s′i(n)。滤波器124利用该长项的予示算子参数LTP引进声音的周期数,而滤波器126利用该短项的予示算子参数STP引进其频谱的包络。注意,方块124及126实际上都是递归滤波器。这种滤波器在它们各自的反馈回路上都包含有该长项的予示算子及短项的予示算子。参见以上提到的关于表示这些时间变化的递归滤波器的传输函数的文章。
将对于第i个激发代码矢量的重建的语音矢量S′i(n)去与输入语音矢量S(n)的同样的信息组作比较,也就是在减法器130中将这两个信号进行相减。其差矢量ei(n)表示原始的及重建的语音信息组之间的差。利用由系数分析器110产生出的加权滤波器参数WTP,通过加权滤波器132在感性上对该差矢量进行加权。参见上述提及的关于表示加权的滤波器的传输函数。这种感性加权侧重于那些其误差在感觉上对人眼睛是更为重要的频率上,并衰减掉其他的频率。
能量计算器134计算这个加权的差矢量e′i(n)的能量,并且把这种误差信号加给代码本搜索控制器140。该搜索控制器将该第i个误差信号针对前面的那些误差信号为当前的激发矢量ui(n)作比较,从而决定出产生最小误差的那个激发矢量。然后,将该具有最小误差的第i个激发矢量输出到当作为最好的激发代码I的通道上。换句话说,搜索控制器140可以决定给出具有某些予定标准的误差信号的一个具体的代码字,因而符合予先规定的误差阀值的要求。
现根据图2的流程图来说明语音编码器100的操作。在步骤200取得一帧N个取样的输入语音矢量S(n)。在本最佳实施方案中,N=40个取样。在步骤204,系数分析器110计算出长项的予示算子参数LTP、短项的予示算子参数STP、加权滤波器的参数WTP、以及激发增益系数γ。而后,在步骤206,为了以后的使用,暂且不用其长项予示算子滤波器124、短项予示算子滤波器126及加权滤波器132的滤波状态FS。步骤208,如图所示,起动表示激发代码字标引的变量i及表示最好的误差信号的Eb。
继续到步骤210,将该长项及短项予示算子以及加权滤波器的滤波状态恢复到在步骤206暂时不用的那些滤波状态上。这种恢复确保前面的滤波过程在对每个激发矢量进行比较的过程中都是相同的。在步骤212上,再来测试标引i,看是不是把所有的激发矢量都作过比较了。如果i小于2M,那么该操作将继续对下一个代码矢量作比较。在步骤214上,采用基本矢量Vm(n)通过矢量求和的方法计算该激发矢量Ui(n)。
现在我们用说明代码本产生器120硬件结构的图3来描述该矢量求和方法。产生器块320相当于图1中的代码本产生器120,而存贮器314相当于基本矢量存贮器114。存贮器块314通过VM(n)存贮所有的M个基本矢量V1(n),在此,1≤m≤M,同时1≤n≤N。所有的M个基本矢量都加到产生器320的乘法器361至364上。
第i个激发代码字也加到产生器320上。然后,通过转换器360把这个激发信息转换成多个中间数据信号νi1至νiM,在此,1≤m≤M。在本最佳实施方案中,这些中间数据信号是以选择器代码字i的各个位的值为基础的,所以每个中间数据信号νim都表示对应于第i个激发代码字的第m个位的标记。例如,若激发代码字i的第一个位是0,则νi1就是-1。同样,若激发代码字i的第二个位是1,则νi2就是+1。但是,这里要注意的是,该中间数据信号可以交替地呈现从i到νim的任何其他的变换,例如,由一个ROM查表所决定的那样。还要注意的是,该代码字中的位数并不一定要和基本矢量的数目一样。例如,代码字i可以有2M位,这里每一对位对于每个νim,即0,1,2,3或+1,-1,+2,-2等等均规定了4个值。
这些中间数据信号也加到乘法器361至364上。这些乘法器用来把基本矢量组Vm(n)与中间数据信号νim相乘,从而产生出一组中间矢量。然后,再把这些中间矢量在求和网络365中相加在一起,从而产生出单个的激发代码矢量Ui(n)。在此,我们用公式来说明该矢量求和方法:
〔1〕Ui(n)= θimVm(n)
这里,Ui(n)是第i个激发代码矢量的第n个取样,并且1≤n≤N。
继续到图2A的步骤216,则通过增益块122将激发矢量Ui(n)与激发增益系数γ相乘。然后,在步骤218,用长项及短项的予示算子滤波器将这个定标过的激发矢量γui(n)进行滤波,从而计算出该重建的语音矢量S′i(n)。而后,在步骤220上,通过减法器130计算出差矢量ei(n),于是:
〔2〕ei(n)=S(n)-S′i(n)
对于所有的N个取样均如此,即1≤n≤N。
在步骤222,用加权滤波器132在感性上对该差矢量ei(n)加权,从而得到该加权的差矢量e′i(n)。然后,在步骤224,再根据如下公式:
〔3〕Ei= 〔e′i(n)〕2
能量计算器134计算出该加权的差矢量的能量Ei。
步骤226将第i个误差信号去与前面的最佳误差信号Eb相比较,从而决定出最小的误差。如果该目前的标引i相当于其最小的误差信号,那么就把该最佳误差信号Eb在步骤228修正到第i个误差信号的值上,并因此在步骤230上,将该最佳的代码字I设置为等于i。然后,在步骤240,将该代码字标引i递增,于是控制又返回到步骤210去测试下一个代码矢量。
当测试完所有的2M个代码矢量时,控制则从步骤212进行到步骤232,从而输出最好的代码字I。这个过程在用最好的代码字I将这些实际的滤波状态都作了修正之前是不会完结的。因此,步骤234采用在步骤216上用过的矢量求和方法计算出激发矢量UI(n)。只有在这个时候使用该最好的代码字I。然后,在236上用增益系数γ定标激发矢量,再被滤波,从而在步骤238上计算出重建的语音矢量S′I(n)。然后,在步骤242,计算出差信号eI(n),并在步骤244进行加权,以便修正其加权滤波的状态。而后,再把控制返回到步骤202。
现在参阅图4,根据本发明,它也是采用该矢量求和方法说明语音合成器的方框图。合成器400通过多路分配器450取得从通道中接收到的短项的予示算子参数STP、长项的予示算子参数LTP、激发增益系数γ,以及代码字I。将该代码字I与来自基本矢量存贮器414的基本矢量组Vm(n)一起加到代码本产生器420,从而产生出如图3中所说明的激发矢量Ui(n)。然后,将单个的激发矢量UI(n)在方块422中与增益系数γ相乘,再通过长项予示算子滤波器424及短项予示算子滤波器426进行滤波,从而取得重建的语音矢量S′I(n)。而后,再把这个表示一帧重建语音的矢量加给数/模(D/A)转换器408,从而产生出一个重建的模拟信号。而后,再把这个模拟信号通过滤波器404进行低通滤波,以便减少混淆,然后再加给扬声器402这样的输出换能器上。时钟412产生用于合成器400的取样时钟及帧时钟。
现在参阅图5,它是说明图1语音编码器另一个实施方案的部分方块图,用以便于说明本发明的最佳实施方案。注意,这里与图1的语音编码器100有两个重要的区别。第一,代码本搜索控制器540结合其最适当的代码字选择计算增益系数γ本身。因此,我们将用图6所相应的流程图来说明激发代码字I的搜索以及激发增益系数γ的产生。第二,注意另外的实施方案将是采用由系数分析器510所计算的予定增益。图7的流程图说明这样的实施方案。如果把附加的增益方块542及系数分析器510的增益系数输出插进来的话(如虚线所示)则可以用图7来说明图5的方块图。
在对语音编码器500的操作进行详细的说明之前,给出本发明所采取的基本搜索方法的解释会是很有帮助的。在标准的CELP搜索编码中,将由方程〔2〕:
〔2〕ei(n)=S(n)-S′i(n)
得出的差矢量作加权,从而产生出e′i(n)。然后,再用它根据方程:
〔3〕Ei= 〔e′i(n)〕2
计算出误差信号。而后,再把该误差信号取极小值,以便确定出所要求的代码字I。计算所有的2M个激发矢量,试图找到与S(n)的最佳匹配。这就是该周密搜索策略的基本原理。
在本最佳实施方案中,需要考虑滤波器的衰变响应。这是由于在帧开始的时刻上以所存在着的滤波状态起动这些波波器,并且使这些滤波器的衰变不带有任何外来输入造成的。这种不带有任何输入的滤波器的输出称之谓零输入响应。此外,可以把该进行加权的滤波函数从它的在减法器输出端上的一般位置移动到该减法器的两个输入通路上去。因此,若d(n)是滤波器的零输入响应矢量,并且若y(n)是加权的输入语音矢量,则该差矢量p(n)为:
〔4〕p(n)=y(n)-d(n)
所以,通过减掉滤波器的零输入响应,就完全将其起始的滤波状态作了补偿了。
该加权的差矢量e′i(n)成为:
〔5〕e′i(n)=p(n)-s′i(n)
然而,由于需要在搜索最佳代码字的同一时间上选择该增益系数γ,所以必须用滤波激发矢量fi(n)与每个代码字的增益系数γi相乘来替换方程〔5〕中的S′i(n),于是这就变成为:
〔6〕e′i(n)=p(n)-γifi(n)
该滤波激发矢量fi(n)是Ui(n)将其增益系数置为1,并其滤波状态初始为0的经滤波后的形式。换句话说,fi(n)是由代码矢量Ui(n)激发的滤波器的零状态响应。由于通过方程〔4〕中的零输入响应矢量d(n)已经为此将其滤波状态作过补偿了,所以采用这个零状态响应。
将方程〔6〕中ei′(n)的值代入方程〔3〕,于是给出:
〔7〕Ei= 〔p(n)-γifi(n)〕2
将方程〔7〕展开,得出:
〔8〕Ei= p(n)2-2γi fi(n)p(n)+ri2 fi(n)2
将fi(n)与p(n)之间的互相关函数定义为:
〔9〕Ci= fi(n)p(n)
并且,把滤波代码矢量fi(n)中的能量函数定义为:
〔10〕Gi= 〔fi(n)〕2
于是,可以把方程〔8〕化简为:
〔11〕Ei= p(n)2-2γiCi+γi2Gi
现在,我们想确定方程〔11〕中对Ei取极小值的最佳增益系数γi。将Ei对γi取偏微商,并令该偏微商等于零,以此求解出该最佳增益系数γi。经过这样处理,于是得出:
〔12〕γi=Ci/Gi
再将它代入方程〔11〕,得出:
〔13〕Ei= p(n)2-〔Ci〕2/Gi
现在,可以看出,要在方程〔13〕中使误差Ei取极小值,则必须使〔Ci〕2/G这一项取极大值。在图6的流程图中,将说明对〔Ci〕2/Gi取极大值的代码本搜索方法。
如果用系数分析器510予先计算该增益系数γ的话,那么就可以把方程〔7〕写成:
〔14〕Ei= p(n)2-2 y'i(n)p(n)+ yi'(n)2
这里,yi′(n)是激发矢量Ui(n)乘以予定的增益系数γ时,这些滤波器的零状态响应。若把方程〔14〕中的第二项及第三项再分别定义为:
〔15〕Ci= yi′(n)p(n)
〔16〕Gi= 〔yi′(n)〕2
那么,就可以把方程〔14〕化简成:
〔17〕Ei= p(n)2-2Ci+Gi
为了对所有的代码字用方程〔17〕对Ei取极小值,就必须对〔-2Ci+Gi〕项取极小值。这就是图7流程图中要说明的代码本搜索方法。
回过头来看,本发明是用基本矢量的概念来产生Ui(n)的,所以可以采用矢量求和方程:
〔1〕Ui(n)= θimVm(n)
来替代以下将要说明的Ui。这种代换的实质在于每一帧直接对所有用来作搜索计算所需要的项进行予计算时,都可以用一次该基本矢量Vm(n)。这就使得本发明能够通过完成一系列的对M来说是线性的乘法累积运算来计算该2M个代码字中的每个代码字。在本最佳实施方案中,仅只需要M+3的MAC。
现在,我们根据图6A及图6B的流程图所描述的工作过程来说明采用最佳增益的图5。在起点600上开始,在步骤602,象图1中所进行的那样,从模/数转换器中取得一帧N个输入语音取样S(n)。而后,在步骤604,把该输入语音矢量S(n)加到系数分析器510,并用来计算短项予示算子参数STP、长项予示算子参数LTP,以及进行加权的滤波参数WFP。注意,在本实施方案中,系数分析器510如像用虚箭头说明的那样并不计算予定增益系数γ。该输入语音矢量S(n)也加到开始进行加权的滤波器512上,以便对该输入语音帧加权在步骤606产生出加权的输入语音矢量y(n)。如上所述,该进行加权的滤波器,除了可以把它们从减法器130输出端上的一般定位位置移动到该减法器的两个输入端上之外,完成与图1中进行加权的滤波器132完全相同的功能。注意,矢量y(n)实际上表示一组N个加权的语音矢量,其中1≤n≤N,并且其中的N是该语音帧中的取样数目。
在步骤608,将滤波状态Fs从第一长项予示算子滤波器524传送到第二长项予示算子滤波器525,从第一短项予示算子滤波器526传送到第二短项予示算子滤波器527,从第一进行加权的滤波器528传送到第二进行加权的滤波器529。在步骤610,利用这些滤波状态去计算这些滤波器的零输入响应d(n)。该矢量d(n)表示在每一个语音帧开始时刻上的衰变滤波状态。通过把一个零输入加到这个第二滤波器串525,527,529上,来计算该零输入响应矢量d(n)。这个第二滤波器串525,527,529的每个滤波器都具有与其第一滤波器串中的滤波器524,526,528相连的各个滤波状态。注意,一般在实施过程中,可以把该长项予示算子滤波器,短项予示算子滤波器,以及进行加权的滤波器的作用相组合起来,从而减小其复杂性。
在步骤612中,用减法器530计算出差矢量p(n)。差矢量p(n)表示该加权的输入语音矢量y(n)与零输入响应矢量d(n)之间的差,如上用程〔4〕说明的:
〔4〕p(n)=y(n)-d(n)
然后,把该差矢量p(n)加到在代码本搜索过程中要用到的第一互相关器(Cross-Correla+or)533上。
根据如上所述最终达到的对〔Ci〕2/Gi取极大值,则必须对2M个代码本矢量中的每个矢量计算这一项-而不是计算M个基本矢量。然而,可以根据与M个基本矢量而不是与2M个代码矢量相关的参数对每个代码字计算这个参数。因此,在步骤614,必须对每个基本矢量Vm(n)计算该零状态响应矢量qm(n)。来自基本矢量存贮块514的每个基本矢量Vm(n)直接加到第三长项予示算子滤波器544上(在本实施方案中,无需通过增益块542)。然后,再通过由长项予示算子滤波器544,短项予示算子滤波器546,以及进行加权的滤波器548组成的滤波器串#3将每个基本矢量进行滤波。在该滤波器串#3的输出端上产生的零状态响应矢量qm(n)加到第一互相关器533上以及第二互相关器535上。
在步骤616,该第一互相关器,根据方程:
{18}Rm= qm(n)p(n)。
计算互相关陈列Rm。陈列Rm表示在第m个滤波的基本矢量q(n)与p(n)之间的互相关。同样,在步骤618上,该第二互相关器,根据方程:
{19}Dmj= qm(n)qj(n)
计算互相关矩阵Dmj。在此,1≤m≤j≤M。矩阵Dmj表示在各对单个滤波的基本矢量之间的互相关。注意,该Dmj是一个对称矩阵。因此,大约只需要按照脚标限定的指示计算一半的项。
可以用以上的矢量求和方程:
{1}Ui(n)= θimVm(n)
导出fi(n)如下:
{20}fi(n)= θimqm(n)
这里,f(n)是针对激发矢量u(n)的滤波器的零状态响应,而qm(n)是针对基本矢量Vm(n)的滤波器的零状态响应。用方程{20},可以把方程{9}
{9}Ci= fi(n)p(n)
写成为:
{21}Gi= θim qm(n)p(n)
用方程18,可以再把它化简成:
{22}Ci= θimRm。
对于第一个代码字,即i=0,则所有的位都是零。因此,如上所讨论之,对于1≤m≤M中的θom来说,则等于-1。该第一相关C0,恰好这就是方程{22}中当i=0时的Ci,则变成为:
{23}C0=- Rm。
这正是流程图步骤620所计算的。
用qm(n)和方程{20},还可以把方程{10}:
{10}Gi= [fi(n)]2
中得到的能量项Gi再写成:
{24}Gi= [ θimqm(n)]2
再把它展开成为:
{25}Gi= θimθij qm(n)qj(n)
用方程{19}进行代替,可得:
{26}Gi=2 θimθijDmj Djj
这时,注意,一个代码字及将该代码字的所有各位均反相所得到的互补字,皆具有相同的〔Ci〕2/Gi的值,并且皆可以在同一时间上计算它们的代码矢量。于是,将其代码字的计算量可减半。因此,用方程{26}计算i=0的情况,那么该第一能量项G0则为:
{27}Go=2 Dmj+ Djj
这正是在步骤622中所计算的。所以,到这一步,我们计算了代码字零的相关项C0和能量项G0。
继续到步骤624,参数θim在1≤m≤M的情况下被起始置于-1。这些参数θim表示将用来产生如方程{1}所描述的当前代码矢量的M个中间数据信号(为简单起见,在附图中略去了θim中的脚标i)。下面,则把其最佳相关项Cb设置到等于予先计算的相关C0上,并且把该最佳能量项Gb设置到等于予先计算的G0上。对于具体的输入语音帧S(n)来说,表示用于最佳激发矢量UI(n)的那个代码字I,则被设置到等于0。把计数器变量K予置到零,然后,在步骤626再进行递增。
在图6B中,在步骤628上测试计数器K,观查是否把基本矢量2M个组合都测试完了。注意,由于如上所述之,由于在同一时间上计算一个代码字和它的互补字,因此K的最大值是2M-1。若K小于2M-1,则步骤630定义一个“翻转”函数;其中,变量l表示对代码字i中的翻转,下一位的定位。完成这个功能是由于本发明采用格雷(Gray)码通过该代码矢量一次只改变一位的排序形成的。因此,可以认为每个接连的代码字仅在一个位的位置上与前面一个代码字有所不同。换句话说,如果计算出的每个接连的代码字仅在一位上与前面的代码字有所区别,这一点可用二进制格雷(Gray)码的方法来实现,那么,为了计算相关项及能量项,就只需要M个加法或减法运算了。步骤630还把θl设置成-θl,从而反映出该代码字中位l的变化。
由于采用了这个格雷码假设,于是在步骤632中就可以根据方程:
{28}Ck=Ck-1+2θlRl
计算该新的相关项Ck。这是通过用-θl替换θl,由方程22导出的。
下面,在步骤634中,根据方程:
{29}Gk=Gk-1+4 θmθlDml+4 θmθlDlm'
计算该新的能量项GK。这里假设将DjK作为对称矩阵存贮起来,并且仅只对j≤K的值上被存贮。用同样的方法,由方程{26}推到出方程{29}。
当计算完一次GK与CK之后,则必须将〔CK〕2/GK与前面最佳的〔Cb〕2/Gb进行比较。因为除法本身固有的特性是慢的,所以有必要用交叉乘法来避免作除法的问题。由于所有的项都是正的,所以这个方程等效于将〔CK〕2×Gb与〔Cb〕2×Gb作比较,就象在步骤636所作的比较那样。若第一个量大于第二个量,则控制进入步骤638,其中,分别修正该最佳的相关项Cb及最佳的能量项Gb。步骤642,若θm是+1,则通过将代码字I的位m设置成等于1,从参数θm中,计算其激发代码字I;而若θm是-1,则通过将代码字I的位m设置成等于0,从参数θm中,计算该激发代码字I;之中,对于所有的m个位有1≤m≤M的取值。如果该第一个量不大于第二个量,则控制返回到步骤626,立即测试下一个代码字。
一旦把全部的互补代码字对测试完毕,也就找到了将其〔Cb〕2/Gb取极大值的代码字,于是控制进入步骤646,检查是否相关项小于零。进行这个检查,为的是补偿由互补代码字对所作的对代码本的搜索。若Cb小于零,则在步骤650中,将其增益系数γ设置成等于-〔Cb/Gb〕,并在步骤652中,对代码字工作补码操作。若Cb不小于零,则在步骤648中,就把该增益系数γ设置成等于Gb/Gb。这就确保该增益系数γ是止的了。
下面,在步骤654中,输出该最佳代码字I,并在步骤656中,输出该增益系数γ。然后,步骤658用该最佳激发代码字I计算重建的加权语音矢量Y′(n)。代码本产生器根据方程{1}用代码字I及基本矢量Vm(n)产生出激发矢量UI(n)。而后,再用增益块522中的增益系数γ定标代码矢量UI(n),并通过滤波器串#1的滤波,产生出Y′(n)。语音编码器500并不像图1那样直接地采用重建的加权语音矢量y′(n)。相反,采用滤波器串#1修正滤波状态FS,再把它们传送到滤波器串#2,从而计算下一帧的零输入响应矢量d(n)。因此,控制返回到步骤602,再输入下一个语音帧S(n)。
在图6A/6B中描述的搜索方法里,该增益系数γ是在与将其代码字I作最佳选择的同样的时间上计算出来的。用这种方法,可以找到对于每个代码字的最佳增益系数。在图7A至图7C所说明的另一个搜索方法中,该增益系数是在代码字确定之前,予先计算出来的。这里,一般来说,该增益系数是以对于那个帧上的RMS留数值为基础的。正如B.S.Atal及M.R.Schroeder,1984年5月在Proc,Int,Conf,Commun.Vol,Icc84,Pt2,第1610-1613页上发表的文章“在很低位速上的语音信号随机编码”中所描述的那样。这种予先计算增益系数的方法的缺点是一般来说会对语音编码器轻微地显示出比较低劣的信噪比(SИR)。
现在,参阅图7A的流程图,说明采用予定增益系数的语音编码器500的工作过程。在步骤702中,首先从A/D中取得输入的语音帧矢量S(n);在步骤704中,像在步骤602及602中进行的那样,分别借助于系数分析器510计算出长项予示算子参数LTP、短项予示算子系数STP以及加权的滤波参数WTP。然而,在步骤705中,如前面说明的那样对整个帧计算该增益系数γ。因此,系数分析器510,如同图5虚箭头所示之,输出该予定的增益系数γ;所以,在基本矢量通路中,必须按照虚线所示插进增益块542。
步骤706至712分别与图6A的步骤606至612完全相同,因此不需要再作进一步解释了。步骤714,除了用方块542中的增益系数γ相乘之后,再从基本矢量Vm(n)中计算其零状态响应矢量qm(n)之外,均与步骤614一样。步骤716至722分别与步骤616至622完全相同。步骤723测试相关C0是否小于零,以便确定变量I及Eb如何起始予置。如果C0小于零,则把该最佳的代码字I设置成等于其互补的代码字I=2M-1,因为它将给出比代码字I=0更好的误差信号Eb。那么,则把该最好的误差信号Eb设置成等于2C0+G0,因为CM 2-1等于-C0。如果C0不小于零,则步骤725把I起始予置于零,并如所示之,起始予置Eb到-2C0+G0。
步骤726,如同步骤624所进行的那样,将其中间数据信号起始予置到-1,把计数器的变量K起始予置为零。在步骤727中,将变量K进行递增,并如同步骤626及628中所进行的那样,分别在步骤728中进行测试。然后,在步骤735中,测试相关项CK。若该相关项CK是负的,则把其误差信号EK设置成等于2CK+GK,因为负值的CK同样指示该互补的代码字要比当前的代码字好。若CK是正的,则步骤737如同以上进行的那样,把EK设置成等于-2CK+GK。
继续到图7C,步骤738将新的误差信号EK去与前面最好的误差信号Eb相比较。若EK小于Eb,则在步骤739中把Eb修正到EK。若反之,则控制返回到步骤727。步骤740再测试相关CK,观查它是否小于零。如果它不小于零,则如同图6B步骤642中所进行的那样,从θm之中计算这个最好的代码字I。如果CK小于零,则以同样的方式计算I,从而取得该互补的代码字。将I计算出后,则控制返回到步骤727。
当测试完全部2M个代码字时,步骤728则进入控制步骤754,在此,从该搜索控制器中输出代码字I。步骤758像步骤658中所进行的一样计算出重建的加权语音矢量y′(n)。然后,控制返回步骤702,再开始进行这个流程。
总之,本发明提出一种在有或没有予定增益系数的情况下都可以采用的改进的激发矢量产生方法和搜索方法。从一组仅只M个基本矢量中产生该2M个激发矢量的代码本。采用每个代码矢量计算仅有M+3个乘法累积的运算就可以搜索整个的代码本。这种在存贮量上及计算复杂程度上的降低,使得有可能用当今的数字信号处理机实时实现CELP的语音编码。
在此所描述的本发明的具体实施方案,在其广义上无需脱离本发明可以作出许多进一步的改型及改进。例如,可以将任何型式的基本矢量用到在此描述的矢量求和方法中来。此外,在这些基本矢量上可以完成许多不同的计算,从而达到降低代码本搜索过程的计算复杂程度的这一同样的目的。但是,所有这样的不脱离开在此所揭示出的基本原理的改型,均处于本发明的保护范围之内。
Claims (53)
1、用于矢量编码器的至少产生一个一组y代码本矢量的方法,包括有如下步骤:
(a)至少输入一个选择器代码字;
(b)根据上述选择器代码字定义许多中间数据信号;
(c)输入一组x基本矢量,在此x<y;
(d)通过在上述x基本矢量上完成若干线性变换,产生上述代码本矢量;该线性变换由上述中间数据信号来确定。
2、根据权利要求1中的方法,其中上述代码本矢量的产生步骤包括如下若干步骤:
(ⅰ)将其x基本矢量组与其多个中间数据信号进行相乘,产生出多个中间矢量;以及
(ⅱ)将该多个中间矢量进行求和,产生上述代码本矢量。
3、根据权利要求1中的方法,其中可以用各个位表示上述每一个选择器代码字,并且其中的中间数据信号是以每个选择器代码字中的每个位值为基础的。
4、根据权利要求1中的方法,其中y≥2x。
5、用于矢量编码器的一组2M代码本矢量的产生装置包括有:
用于将一组选择器代码字转换成多个中间数据信号的装置;
用于输入一组M基本矢量的装置;
用于将上述基本矢量组与上述多个中间数据信号相乘产生多个中间矢量的装置;以及
用于将上述多个中间矢量进行求和产生出上述代码本矢量组的装置。
6、根据权利要求5中的产生装置,其中上述转换装置通过鉴别每个选择器代码字i中每位的状态产生出上述多个中间数据信号im,在此,0≤i≤2M-1,并且1≤m≤M;因此,若代码字i中的位m处于第一状态,则im具有第一值;若代码字i中的位m处于第二状态,则im具有第二值。
7、根据权利要求5中的产生装置,其中上述基本矢量的输入装置包括有用于存贮上述基本矢量的存贮器装置。
9、从一组基本矢量中一个具体的激发代码字中重建信号的方法包括如下步骤:
(a)根据上述具体的代码字定义多个中间数据信号;
(b)将上述基本矢量组与上述多个中间数据信号相乘,产生出多个中间矢量;
(c)将上述多个中间矢量进行求和,产生出一个单个的激发矢量;以及
(d)对上述激发矢量进行信号处理,产生出上述重建信号。
10、根据权利要求9中的方法,其中将上述基本矢量组存入存贮器。
11、根据权利要求9中的方法,其中上述信号处理的步骤包括对上述激发信号进行线性滤波。
12、根据权利要求9中的方法,上述进行定义的步骤,通过鉴别上述具体代码字i每一位的状态,产生出上述多个中间数据信号,其中0≤i≤2M-1,1≤m≤M;于是,若代码字i的位m处于第一状态,则该θim具有第一值;若代码字i的位m处于第二状态,则该θim具有第二值。
13、一种用于代码激发信号编码器的选择相应于具有最适用于给定输入信号特性的一个具体的激发矢量的代码字的方法包括如下步骤:
(a)鉴别测试的代码字;
(b)根据上述测试的代码字,定义多个中间数据信号;
(c)输入一组x基本矢量,在此,x<y;
(d)从上述基本矢量组中及上述多个中间数据信号中,产生出一个测试的激发矢量;
(e)对上述测试的激发矢量进行信号处理,产生出重建的信号;
(f)计算表示上述重建信号与上述输入信号之差的误差信号;以及
(g)重复步骤{a}至{f},鉴别不同的测试代码字,从中选择一个能够使其误差信号符合予定误差标准的测试代码字。
14、根据权利要求13中的方法,其中y≥2x。
15、根据权利要求13中的方法,其中将上述基本矢量组存入存贮器。
16、根据权利要求13中的方法,其中上述信号处理步骤包括对上述激发矢量进行线性滤波。
17、根据权利要求13中的方法,其中若上述具体的误差信号在所有的误差信号中具有最小的能量,则这个具体的误差信号符合上述予定误差的标准。
18、根据权利要求13中的方法,其中上述每个测试的激发矢量是通过如下方法产生的:
(ⅰ)将上述基本矢量组与上述多个中间数据相乘,产生出多个中间矢量;以及
(ⅱ)将上述多个中间矢量进行求和,产生出一个单个测试的激发矢量。
19、一种用于代码激发信号编码器的选择一个单个激发代码字的方法;该单个代码字对应于具有最适用那些给定输入信号部分的特性的一个具体的激发矢量,而且该单个代码字是相应于一组y个可能激发的矢量的一组代码字中的一个代码字;这种代码字的选择方法包括如下步骤:
(a)产生相应于上述输入信号部分的输入矢量;
(b)输入一组x基本矢量,在此x<y;
(c)从上述基本矢量中,产生出多个处理矢量;
(d)根据上述处理矢量及上述输入矢量,产生比较信号;
(e)根据上述比较信号,计算用于上述每组代码字的参数,以及
(f)对上述用于每个代码字所计算的参数进行求值,并选择具有符合予定标准的参数的一个具体的代码字,而无须产生上述y个可能的激发矢量组。
20、根据权利要求19中的方法,其中由上述对每个代码字的计算步骤所完成的计算数目是与x成线性的。
21、根据权利要求19中的方法,其中根据予定的排序方法,上述从当前代码字到下一个代码字的计算步骤排序,是借助于一次仅只改变代码字中的一个位进行的。
22、根据权利要求21中的方法,其中根据上述予定的排序方法,上述计算步骤是借助于修正来自当前代码字的参数,对用于下一个代码字的参数作计算的。
23、根据权利要求19中的方法,其中上述比较信号包括有在上述处理矢量与上述输入矢量之间的互相关。
24、根据权利要求19中的方法,其中上述比较信号包括有在上述每个处理矢量与每个其他的处理矢量之间的互相关。
25、根据权利要求19中的方法,其中将上述基本矢量组存入存贮器,但并不把上述可能的代码本矢量组存入存贮器。
26、根据权利要求19中的方法,其中y≥2x。
27、根据权利要求19中的方法,其中上述处理矢量的产生步骤包括有对上述基本矢量进行线性滤波。
28、根据权利要求19中的方法,还包括有通过以下措施产生上述具体的激发矢量的步骤:
(ⅰ)根据上述单个激发代码字,定义多个中间数据信号;
(ⅱ)借助于在上述基本矢量上实现由上述中间数据信号确定的线性变换来产生上述具体的激发矢量。
29、根据权利要求28中的方法,其中上述激发矢量的产生步骤包括有如下步骤:
(ⅰ)将上述基本矢量组与上述多个中间数据信号相乘,产生出多个中间矢量;以及
(ⅱ)将上述多个中间矢量进行求和,产生出上述具体的激发矢量。
30、一个用于代码激发信号编码器的代码本搜索控制器能够从一组代码字中选择出上述相应于在2M个可能的代码矢量中至少一个是理想代码矢量的具体的代码字;并且根据在给定的输入信号与从上述理想代码矢量中导出的重建信号之间的类似特征选择出该具体的代码字;而且该代码本搜索控制器包括有:
从一组M个基本矢量中,产生出一组处理矢量的装置;
产生出与上述输入信号相对应的一个输入矢量的装置;
根据上述处理矢量与上述输入矢量,产生出若干比较信号的装置;
计算每个对应于在上述2M个可能的代码矢量中的每个代码矢量的代码字的参数的装置,该参数是以上述比较信号为基础的;以及
选择一个其计算出的参数符合予定标准,而无需产生上述2M个可能的代码矢量的具体的代码字的装置。
31、根据权利要求30中的代码本搜索控制器,其中,对每个代码字,由上述代码本搜索控制器完成的计算数目是与M成线性的。
32、根据权利要求30中的代码本搜索控制器,还包括有用于存贮上述M基本矢量组的存贮器装置。
33、根据权利要求32中的代码本搜索控制器,其中上述存贮器装置的容量与M是成线性的,并且不把上述2M个可能的代码矢量存入上述信号编码器。
34、根据权利要求30中的代码本搜索控制器,其中上述计算装置根据予定的排序方法,按照一次只改变代码字中的一个位的变化,从当前的代码字到下一个代码字进行排序。
35、根据权利要求34中的代码本搜索控制器,其中上述计算装置根据予定的排序方法,通过修正来自当前代码字的参数,计算下一个代码字的参数。
36、根据权利要求30中的代码本搜索控制器,其中上述比较信号包括在上述处理矢量与上述输入矢量之间的互相关。
37、根据权利要求30中的代码本搜索控制器,其中上述处理矢量的产生装置包括有对上述基本矢量进行线性滤波的装置。
38、根据权利要求30中的代码本搜索控制器,还包括用于产生上述理想代码矢量的装置,并且该装置还包括有:
用于根据上述具体的代码字定义多个中间数据信号的装置;以及
用于在上述基本矢量上完成由上述中间数据信号定义的线性变换的装置。
39、根据权利要求38中的代码本搜索控制器,其中上述理想代码矢量产生装置包括有:
用于将上述基本矢量组与上述多个中间数据信号进行相乘产生出多个中间矢量的装置;以及
用于将上述多个中间矢量进行求和产生出上述理想代码矢量的装置。
40、在一个代码激发信号编码器中,从一组y个激发代码字中,选择代表能够对划分成许多И个信号取样的一个给定的部分输入信号进行编码的一个理想激发矢量Ui(n)的一个具体的激发代码字I的方法包括如下步骤:
(a)从上述部分输入信号中,产生出输入矢量y(n),在此,1≤n≤N;
(b)将上述输入矢量y(n),前面的滤波状态进行补偿,由此给出补偿的矢量p(n);
(c)输入一组M个基本矢量Vm(n),在此,1≤m≤M≤y;
(d)将上述基本矢量进行滤波,对上述M个基本矢量中的每个矢量产生出零状态响应矢量qm(n)。
(e)从上述零状态响应矢量qm(n)及上述补偿矢量p(n)之中产生出若干相关信号;
(f)从y激发代码字组中,鉴别一个测试代码字i;
(g)根据上述相关信号,计算上述测试代码字i的若干参数;以及
(h)只重复步骤{f}及{g},从上述y激发代码字组中鉴别出不同的测试代码字i,并且选择出具有符合予定标准的经计算出的若干参数的具体的激发代码字I。
41、根据权利要求40中的方法,其中上述代码字的选择方法,为了选择每个与M成线性的代码字,完成的乘法累积运算数最多。
42、根据权利要求40中的方法,上述进行计算的步骤,按照予定的排序方法,通过一次仅只改变代码字的一个位的变化,从当前代码字到下一个代码字进行排序。
43、根据权利要求42中的方法,其中上述计算步骤,根据上述予定的排序方法,通过修正当前代码字中的参数,计算下一个代码字的参数。
44、根据权利要求42中的方法,其中上述予定的排序方法是格雷(Gray)码。
45、根据权利要求40中的方法,其中上述相关信号包括由方程:
在此,1≤m≤M,
决定的互相关Rm。
46、根据权利要求40中的方法,其中上述相关信号包括由方程:
在此,1≤m≤j≤M,
决定的互相关Dmj。
47、根据权利要求40中的方法,进一步包括产生上述理想激发矢量UI(n)的步骤:
(ⅰ)鉴别用于代码字I中每一位的信号Im,于是,若代码字I中的位m处于第一状态,则该Im具有第一值;若代码字I中的位m处于第二状态,则该Im具有第二值;以及
(ⅱ)根据方程:
在此,1≤n≤N,
计算UI(n)。
48、根据权利要求40中的方法,其中y=2M。
49、一种产生用于代码激发语音编码器的激发信号的方法包括有如下步骤:
(a)对输入信号进行信号处理,产生一个输入矢量;
(b)从存贮器中提出一组基本矢量;
(c)对上述基本矢量进行信号处理,产生出多个处理矢量;
(d)将上述处理矢量与上述输入矢量进行比较,产生出若干比较信号;
(e)给出一组地址字;
(f)用上述比较信号,对每个地址字的参数进行计算;
(g)选择所计算的参数符合予定误差标准的一个具体的地址字;
(h)将上述具体的地址字转换成多个中间数据字;以及
(i)从上述基本矢量组与上述多个中间数据字中,产生出上述激发信号。
50、一个语音编码器包括有:
用于给出相应于输入语音段的一个输入矢量的装置;
用于给出相应于一组y个可能的激发矢量的一组代码字的装置;
一个包括有对激发矢量进行滤波的装置的第一信号通路;
一个包括有:给出x个基本矢量的装置的,之中x<y;用于对上述基本矢量进行滤波的装置的;将上述经滤波的基本矢量与上述输入矢量进行比较,由此产生出比较信号的装置的第二信号通路;
用于计算上述代码字组及上述比较信号,并且用于提出一个代表单个激发矢量的具体的代码字的控制装置;这个代码字,当通过上述第一信号通路时,最与上述输入矢量相类似;以及
通过在上述由该具体的代码字定义的基本矢量上,实现一个线性变换来产生上述单个激发矢量的产生器装置,
借此,无需把每个上述y个可能的激发矢量通过上述第一信号通路,既模拟了上述y个可能的激发矢量的计算。
51、根据权利要求50中的语音编码器,其中上述产生器装置包括有:
用于根据上述具体的代码字,定义多个中间数据信号的装置;
用于将上述基本矢量与上述中间数据信号进行相乘,产生出多个中间矢量的装置;以及
用于将该多个中间矢量进行求和,产生出上述单个激发矢量的装置。
52、根据权利要求50中的语音编码器,其中上述第一信号通路包括有通过由上述控制器装置产生的增益系数,定标上述激发矢量的装置。
53、根据权利要求50中的语音编码器,其中在摸拟对每个上述可能的激发矢量的求值过程中所完成的计算数目是与x成线性的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US141446 | 1988-01-07 | ||
US07/141,446 US4817157A (en) | 1988-01-07 | 1988-01-07 | Digital speech coder having improved vector excitation source |
US141,446 | 1988-01-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1035379A true CN1035379A (zh) | 1989-09-06 |
CN1021938C CN1021938C (zh) | 1993-08-25 |
Family
ID=22495733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN89100090A Expired - Lifetime CN1021938C (zh) | 1988-01-07 | 1989-01-06 | 控制代码激发信号编码器的方法和装置 |
Country Status (16)
Country | Link |
---|---|
US (1) | US4817157A (zh) |
EP (1) | EP0372008B1 (zh) |
JP (2) | JP2523031B2 (zh) |
KR (2) | KR930010399B1 (zh) |
CN (1) | CN1021938C (zh) |
AR (1) | AR246631A1 (zh) |
AT (1) | ATE123352T1 (zh) |
BR (1) | BR8807414A (zh) |
CA (1) | CA1279404C (zh) |
DE (1) | DE3853916T2 (zh) |
DK (1) | DK176383B1 (zh) |
FI (1) | FI105292B (zh) |
IL (1) | IL88465A (zh) |
MX (1) | MX168558B (zh) |
NO (1) | NO302849B1 (zh) |
WO (1) | WO1989006419A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101467459B (zh) * | 2006-03-21 | 2011-08-31 | 法国电信公司 | 信号的矢量量化字典生成方法、编解码器及编解码方法 |
Families Citing this family (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4896361A (en) * | 1988-01-07 | 1990-01-23 | Motorola, Inc. | Digital speech coder having improved vector excitation source |
US5359696A (en) * | 1988-06-28 | 1994-10-25 | Motorola Inc. | Digital speech coder having improved sub-sample resolution long-term predictor |
CA2005115C (en) * | 1989-01-17 | 1997-04-22 | Juin-Hwey Chen | Low-delay code-excited linear predictive coder for speech or audio |
JPH02250100A (ja) * | 1989-03-24 | 1990-10-05 | Mitsubishi Electric Corp | 音声符合化装置 |
JPH02272500A (ja) * | 1989-04-13 | 1990-11-07 | Fujitsu Ltd | コード駆動音声符号化方式 |
JPH02287399A (ja) * | 1989-04-28 | 1990-11-27 | Fujitsu Ltd | ベクトル量子化制御方式 |
US5261027A (en) * | 1989-06-28 | 1993-11-09 | Fujitsu Limited | Code excited linear prediction speech coding system |
JPH0332228A (ja) * | 1989-06-29 | 1991-02-12 | Fujitsu Ltd | ゲイン―シェイプ・ベクトル量子化方式 |
US5263119A (en) * | 1989-06-29 | 1993-11-16 | Fujitsu Limited | Gain-shape vector quantization method and apparatus |
US5097508A (en) * | 1989-08-31 | 1992-03-17 | Codex Corporation | Digital speech coder having improved long term lag parameter determination |
US5216745A (en) * | 1989-10-13 | 1993-06-01 | Digital Speech Technology, Inc. | Sound synthesizer employing noise generator |
IL95753A (en) * | 1989-10-17 | 1994-11-11 | Motorola Inc | Digits a digital speech |
WO1991006093A1 (en) * | 1989-10-17 | 1991-05-02 | Motorola, Inc. | Digital speech decoder having a postfilter with reduced spectral distortion |
US5241650A (en) * | 1989-10-17 | 1993-08-31 | Motorola, Inc. | Digital speech decoder having a postfilter with reduced spectral distortion |
FR2654542B1 (fr) * | 1989-11-14 | 1992-01-17 | Thomson Csf | Procede et dispositif de codage de filtres predicteurs de vocodeurs tres bas debit. |
US5754976A (en) * | 1990-02-23 | 1998-05-19 | Universite De Sherbrooke | Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech |
US5701392A (en) * | 1990-02-23 | 1997-12-23 | Universite De Sherbrooke | Depth-first algebraic-codebook search for fast coding of speech |
CA2010830C (en) * | 1990-02-23 | 1996-06-25 | Jean-Pierre Adoul | Dynamic codebook for efficient speech coding based on algebraic codes |
DE9006717U1 (de) * | 1990-06-15 | 1991-10-10 | Philips Patentverwaltung GmbH, 22335 Hamburg | Anrufbeantworter für die digitale Aufzeichnung und Wiedergabe von Sprachsignalen |
SE466824B (sv) * | 1990-08-10 | 1992-04-06 | Ericsson Telefon Ab L M | Foerfarande foer kodning av en samplad talsignalvektor |
US5293449A (en) * | 1990-11-23 | 1994-03-08 | Comsat Corporation | Analysis-by-synthesis 2,4 kbps linear predictive speech codec |
IT1241358B (it) * | 1990-12-20 | 1994-01-10 | Sip | Sistema di codifica del segnale vocale con sottocodice annidato |
DE4193230C1 (de) * | 1990-12-20 | 1997-10-30 | Motorola Inc | Sendeschaltung in einem Funktelefon mit einem Pegelsender |
US5528723A (en) * | 1990-12-28 | 1996-06-18 | Motorola, Inc. | Digital speech coder and method utilizing harmonic noise weighting |
US5195137A (en) * | 1991-01-28 | 1993-03-16 | At&T Bell Laboratories | Method of and apparatus for generating auxiliary information for expediting sparse codebook search |
JP2776050B2 (ja) * | 1991-02-26 | 1998-07-16 | 日本電気株式会社 | 音声符号化方式 |
US5504936A (en) * | 1991-04-02 | 1996-04-02 | Airtouch Communications Of California | Microcells for digital cellular telephone systems |
FI98104C (fi) * | 1991-05-20 | 1997-04-10 | Nokia Mobile Phones Ltd | Menetelmä herätevektorin generoimiseksi ja digitaalinen puhekooderi |
US5396576A (en) * | 1991-05-22 | 1995-03-07 | Nippon Telegraph And Telephone Corporation | Speech coding and decoding methods using adaptive and random code books |
US5646606A (en) * | 1991-05-30 | 1997-07-08 | Wilson; Alan L. | Transmission of transmitter parameters in a digital communication system |
US5265190A (en) * | 1991-05-31 | 1993-11-23 | Motorola, Inc. | CELP vocoder with efficient adaptive codebook search |
US5179594A (en) * | 1991-06-12 | 1993-01-12 | Motorola, Inc. | Efficient calculation of autocorrelation coefficients for CELP vocoder adaptive codebook |
US5255339A (en) * | 1991-07-19 | 1993-10-19 | Motorola, Inc. | Low bit rate vocoder means and method |
US5410632A (en) * | 1991-12-23 | 1995-04-25 | Motorola, Inc. | Variable hangover time in a voice activity detector |
ES2042410B1 (es) * | 1992-04-15 | 1997-01-01 | Control Sys S A | Metodo de codificacion y codificador de voz para equipos y sistemas de comunicacion. |
US5457783A (en) * | 1992-08-07 | 1995-10-10 | Pacific Communication Sciences, Inc. | Adaptive speech coder having code excited linear prediction |
US5357567A (en) * | 1992-08-14 | 1994-10-18 | Motorola, Inc. | Method and apparatus for volume switched gain control |
CA2110090C (en) * | 1992-11-27 | 1998-09-15 | Toshihiro Hayata | Voice encoder |
JPH06186998A (ja) * | 1992-12-15 | 1994-07-08 | Nec Corp | 音声符号化装置のコードブック探索方式 |
US5434947A (en) * | 1993-02-23 | 1995-07-18 | Motorola | Method for generating a spectral noise weighting filter for use in a speech coder |
US5491771A (en) * | 1993-03-26 | 1996-02-13 | Hughes Aircraft Company | Real-time implementation of a 8Kbps CELP coder on a DSP pair |
CA2135629C (en) * | 1993-03-26 | 2000-02-08 | Ira A. Gerson | Multi-segment vector quantizer for a speech coder suitable for use in a radiotelephone |
DE4315319C2 (de) * | 1993-05-07 | 2002-11-14 | Bosch Gmbh Robert | Verfahren zur Aufbereitung von Daten, insbesondere von codierten Sprachsignalparametern |
JP3685812B2 (ja) * | 1993-06-29 | 2005-08-24 | ソニー株式会社 | 音声信号送受信装置 |
US5659659A (en) * | 1993-07-26 | 1997-08-19 | Alaris, Inc. | Speech compressor using trellis encoding and linear prediction |
JP2626492B2 (ja) * | 1993-09-13 | 1997-07-02 | 日本電気株式会社 | ベクトル量子化装置 |
US5621852A (en) * | 1993-12-14 | 1997-04-15 | Interdigital Technology Corporation | Efficient codebook structure for code excited linear prediction coding |
JP3119063B2 (ja) * | 1994-01-11 | 2000-12-18 | 富士通株式会社 | 符号情報処理方式並びにその符号装置及び復号装置 |
US5487087A (en) * | 1994-05-17 | 1996-01-23 | Texas Instruments Incorporated | Signal quantizer with reduced output fluctuation |
JP3224955B2 (ja) * | 1994-05-27 | 2001-11-05 | 株式会社東芝 | ベクトル量子化装置およびベクトル量子化方法 |
US5602961A (en) * | 1994-05-31 | 1997-02-11 | Alaris, Inc. | Method and apparatus for speech compression using multi-mode code excited linear predictive coding |
TW271524B (zh) | 1994-08-05 | 1996-03-01 | Qualcomm Inc | |
US5742734A (en) * | 1994-08-10 | 1998-04-21 | Qualcomm Incorporated | Encoding rate selection in a variable rate vocoder |
JPH08179796A (ja) * | 1994-12-21 | 1996-07-12 | Sony Corp | 音声符号化方法 |
DE19600406A1 (de) * | 1995-01-09 | 1996-07-18 | Motorola Inc | Verfahren und Vorrichtung zur Bereitstellung verschlüsselter Nachrichten |
US5991725A (en) * | 1995-03-07 | 1999-11-23 | Advanced Micro Devices, Inc. | System and method for enhanced speech quality in voice storage and retrieval systems |
US5742640A (en) * | 1995-03-07 | 1998-04-21 | Diva Communications, Inc. | Method and apparatus to improve PSTN access to wireless subscribers using a low bit rate system |
JPH08272395A (ja) * | 1995-03-31 | 1996-10-18 | Nec Corp | 音声符号化装置 |
US5673361A (en) * | 1995-11-13 | 1997-09-30 | Advanced Micro Devices, Inc. | System and method for performing predictive scaling in computing LPC speech coding coefficients |
US5864795A (en) * | 1996-02-20 | 1999-01-26 | Advanced Micro Devices, Inc. | System and method for error correction in a correlation-based pitch estimator |
US5696873A (en) * | 1996-03-18 | 1997-12-09 | Advanced Micro Devices, Inc. | Vocoder system and method for performing pitch estimation using an adaptive correlation sample window |
US5774836A (en) * | 1996-04-01 | 1998-06-30 | Advanced Micro Devices, Inc. | System and method for performing pitch estimation and error checking on low estimated pitch values in a correlation based pitch estimator |
US5778337A (en) * | 1996-05-06 | 1998-07-07 | Advanced Micro Devices, Inc. | Dispersed impulse generator system and method for efficiently computing an excitation signal in a speech production model |
US6047254A (en) * | 1996-05-15 | 2000-04-04 | Advanced Micro Devices, Inc. | System and method for determining a first formant analysis filter and prefiltering a speech signal for improved pitch estimation |
JP2914305B2 (ja) * | 1996-07-10 | 1999-06-28 | 日本電気株式会社 | ベクトル量子化装置 |
US5751901A (en) * | 1996-07-31 | 1998-05-12 | Qualcomm Incorporated | Method for searching an excitation codebook in a code excited linear prediction (CELP) coder |
US5797120A (en) * | 1996-09-04 | 1998-08-18 | Advanced Micro Devices, Inc. | System and method for generating re-configurable band limited noise using modulation |
DE19643900C1 (de) * | 1996-10-30 | 1998-02-12 | Ericsson Telefon Ab L M | Nachfiltern von Hörsignalen, speziell von Sprachsignalen |
DE69712535T2 (de) * | 1996-11-07 | 2002-08-29 | Matsushita Electric Industrial Co., Ltd. | Vorrichtung zur Erzeugung eines Vektorquantisierungs-Codebuchs |
US5832443A (en) * | 1997-02-25 | 1998-11-03 | Alaris, Inc. | Method and apparatus for adaptive audio compression and decompression |
JP3593839B2 (ja) * | 1997-03-28 | 2004-11-24 | ソニー株式会社 | ベクトルサーチ方法 |
US6704705B1 (en) | 1998-09-04 | 2004-03-09 | Nortel Networks Limited | Perceptual audio coding |
US6415029B1 (en) * | 1999-05-24 | 2002-07-02 | Motorola, Inc. | Echo canceler and double-talk detector for use in a communications unit |
US6510407B1 (en) | 1999-10-19 | 2003-01-21 | Atmel Corporation | Method and apparatus for variable rate coding of speech |
US6681208B2 (en) | 2001-09-25 | 2004-01-20 | Motorola, Inc. | Text-to-speech native coding in a communication system |
ATE322069T1 (de) * | 2002-08-08 | 2006-04-15 | Cit Alcatel | Verfahren zur signalkodierung mittels einer vektorquantisierung |
US7337110B2 (en) * | 2002-08-26 | 2008-02-26 | Motorola, Inc. | Structured VSELP codebook for low complexity search |
US7054807B2 (en) * | 2002-11-08 | 2006-05-30 | Motorola, Inc. | Optimizing encoder for efficiently determining analysis-by-synthesis codebook-related parameters |
US9105270B2 (en) * | 2013-02-08 | 2015-08-11 | Asustek Computer Inc. | Method and apparatus for audio signal enhancement in reverberant environment |
US10931293B1 (en) | 2019-12-27 | 2021-02-23 | Seagate Technology Llc | Transform domain analytics-based channel design |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3631520A (en) * | 1968-08-19 | 1971-12-28 | Bell Telephone Labor Inc | Predictive coding of speech signals |
US4133976A (en) * | 1978-04-07 | 1979-01-09 | Bell Telephone Laboratories, Incorporated | Predictive speech signal coding with reduced noise effects |
US4220819A (en) * | 1979-03-30 | 1980-09-02 | Bell Telephone Laboratories, Incorporated | Residual excited predictive speech coding system |
US4472832A (en) * | 1981-12-01 | 1984-09-18 | At&T Bell Laboratories | Digital speech coder |
US4701954A (en) * | 1984-03-16 | 1987-10-20 | American Telephone And Telegraph Company, At&T Bell Laboratories | Multipulse LPC speech processing arrangement |
-
1988
- 1988-01-07 US US07/141,446 patent/US4817157A/en not_active Expired - Lifetime
- 1988-11-23 IL IL88465A patent/IL88465A/xx not_active IP Right Cessation
- 1988-12-28 MX MX014375A patent/MX168558B/es unknown
- 1988-12-29 WO PCT/US1988/004394 patent/WO1989006419A1/en active IP Right Grant
- 1988-12-29 EP EP89901408A patent/EP0372008B1/en not_active Expired - Lifetime
- 1988-12-29 KR KR1019930701288A patent/KR930010399B1/ko active
- 1988-12-29 BR BR888807414A patent/BR8807414A/pt not_active IP Right Cessation
- 1988-12-29 JP JP1501333A patent/JP2523031B2/ja not_active Expired - Lifetime
- 1988-12-29 DE DE3853916T patent/DE3853916T2/de not_active Expired - Lifetime
- 1988-12-29 KR KR1019890701670A patent/KR930005226B1/ko not_active IP Right Cessation
- 1988-12-29 AT AT89901408T patent/ATE123352T1/de not_active IP Right Cessation
-
1989
- 1989-01-04 CA CA000587480A patent/CA1279404C/en not_active Expired - Lifetime
- 1989-01-06 CN CN89100090A patent/CN1021938C/zh not_active Expired - Lifetime
- 1989-08-09 NO NO893202A patent/NO302849B1/no unknown
- 1989-09-04 FI FI894151A patent/FI105292B/fi not_active IP Right Cessation
- 1989-09-05 DK DK198904381A patent/DK176383B1/da not_active IP Right Cessation
- 1989-12-15 AR AR89312745A patent/AR246631A1/es active
-
1996
- 1996-02-09 JP JP8048371A patent/JP2820107B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101467459B (zh) * | 2006-03-21 | 2011-08-31 | 法国电信公司 | 信号的矢量量化字典生成方法、编解码器及编解码方法 |
Also Published As
Publication number | Publication date |
---|---|
EP0372008A1 (en) | 1990-06-13 |
IL88465A0 (en) | 1989-06-30 |
AR246631A1 (es) | 1994-08-31 |
IL88465A (en) | 1992-06-21 |
NO893202D0 (no) | 1989-08-09 |
CA1279404C (en) | 1991-01-22 |
DK438189D0 (da) | 1989-09-05 |
DE3853916D1 (de) | 1995-07-06 |
KR930010399B1 (ko) | 1993-10-23 |
FI894151A0 (fi) | 1989-09-04 |
MX168558B (es) | 1993-05-31 |
KR930005226B1 (ko) | 1993-06-16 |
JP2523031B2 (ja) | 1996-08-07 |
FI105292B (fi) | 2000-07-14 |
BR8807414A (pt) | 1990-05-15 |
NO302849B1 (no) | 1998-04-27 |
JPH02502135A (ja) | 1990-07-12 |
WO1989006419A1 (en) | 1989-07-13 |
NO893202L (no) | 1989-08-09 |
CN1021938C (zh) | 1993-08-25 |
DE3853916T2 (de) | 1995-12-14 |
DK176383B1 (da) | 2007-10-22 |
EP0372008B1 (en) | 1995-05-31 |
JP2820107B2 (ja) | 1998-11-05 |
ATE123352T1 (de) | 1995-06-15 |
US4817157A (en) | 1989-03-28 |
KR900700994A (ko) | 1990-08-17 |
DK438189A (da) | 1989-11-07 |
JPH08234799A (ja) | 1996-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1021938C (zh) | 控制代码激发信号编码器的方法和装置 | |
CN1154086C (zh) | Celp转发 | |
AU707307B2 (en) | Depth-first algebraic-codebook search for fast coding of speech | |
AU714752B2 (en) | Speech coder | |
CN1185624C (zh) | 具有自适应编码配置的语音编码系统 | |
CN102169692B (zh) | 信号处理方法和装置 | |
US6408268B1 (en) | Voice encoder, voice decoder, voice encoder/decoder, voice encoding method, voice decoding method and voice encoding/decoding method | |
US6385576B2 (en) | Speech encoding/decoding method using reduced subframe pulse positions having density related to pitch | |
CN1379899A (zh) | 语音可变速率编码方法与设备 | |
CN1410970A (zh) | 用于语音快速编码的被选信号脉冲幅度的代数码本 | |
CN1026274C (zh) | 采用长期预测器的语言合成方法及其装置 | |
KR20070029754A (ko) | 음성 부호화 장치 및 그 방법과, 음성 복호화 장치 및 그방법 | |
JPH08263099A (ja) | 符号化装置 | |
CN1334952A (zh) | 用于改善编码通信信号性能的编码增强特性 | |
CN1885405A (zh) | 语音速度转换装置以及语音速度转换方法 | |
CN1074846C (zh) | 产生用于话音编码器的频谱噪音加权滤波器的方法 | |
US5826221A (en) | Vocal tract prediction coefficient coding and decoding circuitry capable of adaptively selecting quantized values and interpolation values | |
JPH1063297A (ja) | 音声符号化方法および装置 | |
JP3579276B2 (ja) | 音声符号化/復号化方法 | |
KR100341398B1 (ko) | 씨이엘피형 보코더의 코드북 검색 방법 | |
KR950001437B1 (ko) | 음성부호화방법 | |
JP3284874B2 (ja) | 音声符号化装置 | |
JP2005215502A (ja) | 符号化装置、復号化装置、およびこれらの方法 | |
JP2005062410A (ja) | 音声信号の符号化方法 | |
Mumolo | A multiplication-free binary multipulse modelling algorithm based on simulated annealing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C53 | Correction of patent of invention or patent application | ||
COR | Change of bibliographic data |
Free format text: CORRECT: PATENTEE; FROM: MOTOROLA INC. TO: MOTOROLA, INC. |
|
CP01 | Change in the name or title of a patent holder |
Patentee after: Motorola Inc. Patentee before: Motorola. Inc |
|
C15 | Extension of patent right duration from 15 to 20 years for appl. with date before 31.12.1992 and still valid on 11.12.2001 (patent law change 1993) | ||
OR01 | Other related matters | ||
C17 | Cessation of patent right | ||
CX01 | Expiry of patent term |