国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      可變速率聲碼器的制作方法

      文檔序號:2837153閱讀:358來源:國知局
      專利名稱:可變速率聲碼器的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及語音處理。具體講,本發(fā)明涉及一種用于壓縮語音的新穎且已改進(jìn)的方法和系統(tǒng),其中,壓縮量動(dòng)態(tài)地變化,但對再生語音的質(zhì)量影響最小。此外,由于壓縮后的語音數(shù)據(jù)要通過一個(gè)有可能引入錯(cuò)誤的信道傳送,故而本發(fā)明的方法和系統(tǒng)還會(huì)將信道傳輸錯(cuò)誤對聲音的影響減至最小。
      (2)背景技術(shù)利用數(shù)字技術(shù)傳送聲音已經(jīng)得到廣泛的應(yīng)用,在遠(yuǎn)距離和數(shù)字式無線電話設(shè)備中尤其如此。這轉(zhuǎn)而使人們有興趣確定在保持再生語音聽覺質(zhì)量的信道上能夠傳送的最低信息量。如果語音是在簡單取樣并數(shù)字化后傳送的,那么,為了達(dá)到普通模擬式電話機(jī)的語音質(zhì)量,就需要64千比特/每秒(Kbps)數(shù)量級的數(shù)據(jù)速率。但是,通過采用語音分析,再進(jìn)行適當(dāng)?shù)木幋a、傳送,在接收器中進(jìn)行再合成,就能顯著地降低數(shù)據(jù)速率。
      采用人類語言信號產(chǎn)生模型所提取的參數(shù)來完成語聲壓縮技術(shù)的裝置通常稱為聲碼器。這類裝置由一個(gè)分析傳入的語音以提取相關(guān)參數(shù)的編碼器和一個(gè)利用在傳輸信道中接收到的參數(shù)重新合成語音的譯碼器組成。為了精確些,模型必須不時(shí)地變化。這樣,語音被劃分成時(shí)間段或分析幀,每一幀內(nèi)進(jìn)行參數(shù)的計(jì)算。然后對每一新的幀更新參數(shù)。
      在不同類別的語音編碼器中,編碼激勵(lì)線性預(yù)測編碼(CELP)、隨機(jī)編碼或矢量激勵(lì)語音編碼是屬于一類的。在湯姆斯E.特萊門等人所著,發(fā)表于1988年移動(dòng)衛(wèi)星研討會(huì)論文集上的論文“一種4.8Kbps編碼激勵(lì)線性預(yù)測編碼器”中描述了這一特定類別的一個(gè)編碼算法例子。
      聲碼器的功能是消除語音中固有的自然冗余,從而將數(shù)字化語音信號壓縮成低比特率信號。通常,語音中含有主要是因聲道的濾波動(dòng)作而產(chǎn)生的短期冗余,和因發(fā)聲區(qū)域聲帶的激勵(lì)而產(chǎn)生的長期冗余。在CELP編碼器中,這些發(fā)聲區(qū)域的動(dòng)作用兩個(gè)濾波器來模擬,一個(gè)是短期共振峰濾波器,另一個(gè)是長期音調(diào)濾波器(pitch filter)。一旦除去這些冗余,得到的剩余信號就能模擬成白色高斯噪聲,這也必須編碼。這種技術(shù)的基礎(chǔ)是計(jì)算一個(gè)稱為LPC濾波器的參數(shù),該濾波器利用人的聲道模型來進(jìn)行語音波形的短期預(yù)測。另外,與語音的音調(diào)有關(guān)的長期作用則通過計(jì)算一個(gè)主要模擬人的聲帶的音調(diào)濾波器的參數(shù)而得到模擬。最后,這些濾波器還必須被激勵(lì),這是通過從碼書的大量隨機(jī)激勵(lì)波形中確定一個(gè)在激勵(lì)上述兩個(gè)濾波器的時(shí)候產(chǎn)生最接近原始語音的效果的波形而完成的。這樣,被傳送的參數(shù)涉及到三項(xiàng)(1)LPC濾波器,(2)音調(diào)濾波器,(3)碼書激勵(lì)。
      聲碼技術(shù)的應(yīng)用在嘗試減少信道中傳送的信息量而仍舊保持再生語音的質(zhì)量這一點(diǎn)上離目標(biāo)更進(jìn)了一步,雖然如此,但還需要采用其它技術(shù),來實(shí)現(xiàn)進(jìn)一步的縮減。以前用來縮減信息傳送量的一種技術(shù)是聲音動(dòng)作選通。在這種技術(shù)中,語音停頓時(shí)不傳送信息。這種技術(shù)實(shí)現(xiàn)了預(yù)期的數(shù)據(jù)縮減效果,但存在著幾個(gè)缺陷。
      在許多情況下,由于削去了字語的初始部分,語音質(zhì)量降低了。在不動(dòng)作時(shí)切斷信道的另一問題是系統(tǒng)用戶感覺到缺少了通常伴隨著語音的背景噪聲,因此認(rèn)為信道的質(zhì)量低于普通電話。動(dòng)作選通的再一個(gè)問題是,在沒有語音時(shí)背景中偶然的突發(fā)噪聲會(huì)引發(fā)發(fā)送器,在接收器中產(chǎn)生惱人的噪聲群。
      改進(jìn)聲音動(dòng)作選通系統(tǒng)中合成語音的質(zhì)量的一個(gè)嘗試是在譯碼過程中加入合成的令人舒適的噪聲。雖然通過加入舒適的噪聲達(dá)到了質(zhì)量上的某些提高,但是,由于舒適的噪聲并不模擬編碼器中的實(shí)際背景噪聲,所以它并不能顯著地改進(jìn)總體質(zhì)量。
      進(jìn)行數(shù)據(jù)壓縮以實(shí)現(xiàn)需要傳送的信息的縮減的一種更好的技術(shù)是進(jìn)行可變速率聲音編碼。因?yàn)檎Z音本身含有靜默期間,例如停頓,所以,代表這些期間所需的數(shù)據(jù)量可以縮減??勺兯俾事曇艟幋a通過降低這些靜默期間的數(shù)據(jù)速率而最有效地利用了這一事實(shí)。在靜默期間數(shù)據(jù)速率的降低,與數(shù)據(jù)傳送完全停止相反,克服了與聲音動(dòng)作選通相關(guān)的難題,同時(shí)實(shí)現(xiàn)了傳送信息的縮減。
      因而,本發(fā)明的一個(gè)目的是提供一種利用可變速率聲音編碼技術(shù)來壓縮語音的新穎和改進(jìn)的方法和系統(tǒng)。
      (3)

      發(fā)明內(nèi)容
      本發(fā)明采用了上述類別語音編碼器的聲音編碼算法,即編碼激勵(lì)線性預(yù)測編碼(CELP)、隨機(jī)編碼或矢量激勵(lì)語音編碼。CELP技術(shù)本身就能使表示語音所必需的數(shù)據(jù)量顯著減少,并在重新合成時(shí)給出高質(zhì)量的語音。如前所述,聲碼器參數(shù)就每一幀進(jìn)行更新。本發(fā)明的聲碼器藉助于改變模型參數(shù)的頻率和精度,形成可變的輸出數(shù)據(jù)速率。
      本發(fā)明極顯著地不同于基本的CELP技術(shù),在語音動(dòng)作的基礎(chǔ)上產(chǎn)生可變的輸出數(shù)據(jù)速率。其結(jié)構(gòu)被定義后,使得參數(shù)在語音停頓過程中較少或以較低精度進(jìn)行更新。該技術(shù)使得要傳送的信息量更加減少。被利用來降低數(shù)據(jù)速率的關(guān)鍵是聲音動(dòng)作因子,它是某一指定說話者在交談過程中實(shí)際說話的平均時(shí)間百分比,就通常的雙向電話交談而言,該平均數(shù)據(jù)速率可降到1/2或更多。在語音停頓過程中,聲碼器只對背景噪聲進(jìn)行編碼。在這些時(shí)候,與人的聲道模型有關(guān)的某些參數(shù)勿需傳送。
      如前所述,先前在靜默過程中限制信息傳送量的途徑稱為聲音動(dòng)作選通,這是一種在靜默的期間不傳送信息的技術(shù)。在接收側(cè),該期間中加入合成的“舒適噪聲”。與此相反,可變速率聲碼器持續(xù)不斷地進(jìn)行數(shù)據(jù)傳送,在較佳實(shí)施例中是以大約介于8Kbps和1Kbps之間的速率進(jìn)行的。進(jìn)行連續(xù)數(shù)據(jù)傳送的聲碼器消除了對“舒適噪聲”的需求,而以背景噪聲的編碼給重新合成的語音提供更真實(shí)的質(zhì)量。因而,本發(fā)明在語音和背景音之間進(jìn)行平滑的轉(zhuǎn)變,藉此,在重新合成的語音質(zhì)量上,比聲音動(dòng)作選通有了更顯著的改善。
      本發(fā)明還結(jié)合了一種掩蓋發(fā)生的錯(cuò)誤的新穎技術(shù)。因?yàn)閿?shù)據(jù)要通過一個(gè)可能有噪音的信道傳送,如在無線電線路中傳送,所以,它必須在數(shù)據(jù)中能容錯(cuò)。利用信道編碼來減少所遇到的出錯(cuò)總數(shù)的先有技術(shù)在減少錯(cuò)誤方面能夠有某些成功之處。但是,僅有信道編碼還不能完全達(dá)到保證高質(zhì)量再生語言所必需的錯(cuò)誤警戒水平。在聲音編碼持續(xù)進(jìn)行的可變速率聲碼器中,一個(gè)錯(cuò)誤可能會(huì)破壞涉及到某個(gè)重要的語音內(nèi)容的數(shù)據(jù),例如與一個(gè)單詞或一個(gè)音節(jié)開頭部分有關(guān)的數(shù)據(jù)?;诰€性預(yù)測編碼的聲碼器所帶來的一個(gè)典型難題是,與聲道模型有關(guān)的參數(shù)中的錯(cuò)誤會(huì)產(chǎn)生類似人聲的聲音,還會(huì)將原始單詞的發(fā)音改變到足以使聽者迷惑的程度。在本發(fā)明中,錯(cuò)誤被掩蓋住,以降低其可覺察程度。這樣,本發(fā)明所采用的錯(cuò)誤掩蓋技術(shù)使得錯(cuò)誤對語音清晰度的影響急劇減少。
      因?yàn)槿魏螀?shù)能夠改變的最大數(shù)量在低速率下被限制在較小范圍中,所以,在這些速率下所傳送的參數(shù)中的錯(cuò)誤會(huì)較少地影響語音質(zhì)量。由于在不同速率下的錯(cuò)誤對語音質(zhì)量有不同的可覺察的影響,所以,傳送系統(tǒng)可以最優(yōu)化,以對較高速率的數(shù)據(jù)提供更多保護(hù)。因而,作為一個(gè)附加特征,本發(fā)明容忍信道錯(cuò)誤能力較強(qiáng)(具有魯棒性)。
      本發(fā)明通過采用可變速率輸出形式的CELP算法,使得語音壓縮率根據(jù)聲音大小不同在8∶1到64∶1范圍內(nèi)動(dòng)態(tài)地變動(dòng)。剛才的壓縮因子是對μ律輸入而言的,對于線性輸入,該壓縮因子將增大一倍。速率的確定是對各個(gè)幀分別進(jìn)行的,以便充分地得益于聲音動(dòng)作因子。即使由于語音停頓而產(chǎn)生較少的數(shù)據(jù),重新合成的背景噪聲讓人察覺到的質(zhì)量降低也是最小的。利用本發(fā)明的技術(shù),在最大數(shù)據(jù)速率8Kbps下可以實(shí)現(xiàn)質(zhì)量近似于長途電話的語音,在普通對話中的平均數(shù)據(jù)速率處于3.5Kb-ps的量級。
      本發(fā)明能夠檢測出語音中的短暫停頓,因而實(shí)現(xiàn)了有效聲音動(dòng)作因子的降低。速率確定是逐幀進(jìn)行的,沒有遺漏,因而,在短到一個(gè)幀周期的語音停頓間隙內(nèi)數(shù)據(jù)速率可放慢,對較佳實(shí)施例,幀周期的典型值為20msec。因而,可以捕捉諸如在音節(jié)之間的那些停頓。因?yàn)椴粌H詞組之間的長間歇停頓可以編碼成較低速率,而且短暫停頓也可以,所以,這一技術(shù)降低了聲音動(dòng)作因子,在程度上超過了通常所考慮到。
      因?yàn)樗俾蚀_定是逐幀進(jìn)行的,所以不會(huì)象聲音動(dòng)作選通系統(tǒng)那樣,削去單詞的初始部分。在聲音動(dòng)作選通系統(tǒng)中發(fā)生的這種性質(zhì)的削去歸因于語音檢測和數(shù)據(jù)傳送再開始之間的延遲。在每一幀基礎(chǔ)上進(jìn)行的速率確定使得語音中所有的變化都有自然的聲調(diào)。
      在聲碼器正常傳送的情況下,在接收端一直能聽到講話者周圍的背景噪聲,因而在語音停頓時(shí)有更自然的聲音。這樣,本發(fā)明實(shí)現(xiàn)了向背景噪聲的平穩(wěn)轉(zhuǎn)換。聽者在語音中聽到的背景音不會(huì)象聲音動(dòng)作選通系統(tǒng)中那樣,在停頓時(shí)突然轉(zhuǎn)變成一種合成的舒適噪聲。
      因?yàn)楸尘霸肼暢掷m(xù)地被編碼后進(jìn)行傳送,所以,背景中的重要事件可以完整清晰地得到傳送。在某些情況下,重要的背景噪聲甚至可以以最高速率進(jìn)行編碼。例如,當(dāng)背景中有一個(gè)人大聲說話,或者有一輛救護(hù)車從站在街角處的一個(gè)用戶身旁開過的時(shí)候,可能進(jìn)行最高速率編碼。但是,一成不變或者緩慢變化的背景噪聲會(huì)以低速率進(jìn)行編碼。
      利用可變速率聲音編碼能夠確?;诖a分多路訪問(CDMA)的數(shù)字蜂窩式電話系統(tǒng)的容量增加一倍以上。因?yàn)樵贑DMA中,信道間的干擾隨著任一信道中數(shù)據(jù)傳送速率的降低而自動(dòng)地減少,所以,CDMA和可變速率聲音編碼是完全匹配的。與此相反,看一下指定傳送時(shí)隙的系統(tǒng),如TDMA或FDMA等。為了使這種系統(tǒng)得益于數(shù)據(jù)傳送速率的降低,需要進(jìn)行外部干預(yù),以協(xié)調(diào)將不用的時(shí)隙轉(zhuǎn)讓給其它用戶。這種系統(tǒng)中固有的延遲意味著只有在長時(shí)的語音停頓過程中才可能轉(zhuǎn)讓信道。因而,不能充分地得益于聲音動(dòng)作因子。但是,出于上述其它原因,在外部協(xié)調(diào)下,可變速率聲音編碼在CDMA之外的系統(tǒng)中有用。
      在CDMA系統(tǒng)中,當(dāng)需要附加的系統(tǒng)容量時(shí)可以略微降低語音質(zhì)量。簡而言之,該聲碼器可以看作是多個(gè)聲碼器以不同的速率工作,產(chǎn)生不同的語音質(zhì)量。因而,語音質(zhì)量可以混合起來,以進(jìn)一步降低平均數(shù)據(jù)傳送速率。初步的實(shí)驗(yàn)顯示出,將全速和半速聲音編碼語音混合起來,亦即最大允許數(shù)據(jù)速率在8Kbps與4Kbps之間逐幀變化,藉此,得到的語音比半速可變,即最大值為4Kbps情況下質(zhì)量要好,而差于全速可變,即8Kbps最大值的情況。
      眾所周知,在絕大多數(shù)電話交談中,每次只有一個(gè)人說話。全雙工電話線路可以增加一個(gè)速率聯(lián)鎖的附加功能。如果線路的一個(gè)方向上以最高傳送速率進(jìn)行傳送,那么,另一方向就被迫以最低速率傳送。鏈路兩個(gè)方向上的聯(lián)鎖保證對鏈路每一方向的平均使用不超過50%。但是,當(dāng)信道切斷時(shí),例如在動(dòng)作選通中速率聯(lián)鎖情況下,收聽者在對話中無法打斷對方的談話,成為說話者。本發(fā)明容易地提供了藉助于設(shè)定聲音編碼速率的控制信號進(jìn)行速率聯(lián)鎖的能力。
      最后應(yīng)該注意到,利用可變速率聲音編碼系統(tǒng),通信信息可以和對語音質(zhì)量影響極小的語音數(shù)據(jù)分享信道。例如,一個(gè)高速率幀可以分割成兩半,一半用于傳送較低速率聲音數(shù)據(jù),另一半用于通信數(shù)據(jù)。在較佳實(shí)施例的聲碼器中實(shí)現(xiàn)了聲音傳送在全速率和半速率聲音編碼語音之間僅有輕微的語音質(zhì)量降低。因而,為了與其它數(shù)據(jù)分享傳送而以較低速率進(jìn)行語音的聲音編碼在語音質(zhì)量上只給用戶帶來幾乎不能察覺的差異。
      (4)


      從下文中與附圖相結(jié)合的詳細(xì)說明中,本發(fā)明的特征、目的和優(yōu)點(diǎn)將更為顯而易見,在所有附圖中,類似的標(biāo)號標(biāo)志相應(yīng)的對象,其中圖1a-1e以圖線形式示出聲碼器在各種速率下的分析幀和子幀;圖2a-2d是一系列表示聲碼器在不同速率下輸出位分布的圖表;圖3是一例示編碼器的大致框圖;
      圖4是編碼器的流程圖;圖5是例示譯碼器的大致框圖;圖6是譯碼器流程圖;圖7是編碼器更詳細(xì)的功能性框圖;圖8是一例示漢明窗口和自相關(guān)子系統(tǒng)的框圖;圖9是一例示速率確定子系統(tǒng)的框圖;圖10是一例示LPC分析子系統(tǒng)的框圖;圖11是一例示LPC至LSP轉(zhuǎn)換子系統(tǒng)的框圖;圖12是一例示LPC量化子系統(tǒng)的框圖;圖13是例示LSP插值及LSP至LPC轉(zhuǎn)換子系統(tǒng)的框圖;圖14是用于音調(diào)檢索的自適應(yīng)碼書的框圖;圖15是編碼器的譯碼器的框圖;圖16是音調(diào)檢索子系統(tǒng)的框圖;圖17是碼書檢索子系統(tǒng)的框圖;圖18是數(shù)據(jù)壓縮子系統(tǒng)的框圖;圖19是譯碼器更詳盡的功能性框圖;圖20a-20d是顯示譯碼器在不同速率下接收到的參數(shù)和子幀譯碼數(shù)據(jù)的圖表;圖21a-21c是進(jìn)一步顯示譯碼器在特定場合下接收到的參數(shù)及子幀譯碼數(shù)據(jù)的圖表;圖22是LSP反量化子系統(tǒng)的框圖;圖23是帶有后置濾波及自動(dòng)增益控制的譯碼器更詳細(xì)的框圖;圖24是自適應(yīng)亮度濾波器特性的圖線。
      (5)具體實(shí)施方式
      根據(jù)本發(fā)明,利用眾所周知的技術(shù)對諸如語音和/或背景噪聲之類聲音進(jìn)行取樣并數(shù)字化。例如,模擬信號可以用標(biāo)準(zhǔn)的8位/μ律格式轉(zhuǎn)換成數(shù)字格式,然后進(jìn)行μ律/標(biāo)準(zhǔn)編碼轉(zhuǎn)換。在另一方式下,模擬信號可以直接轉(zhuǎn)換成標(biāo)準(zhǔn)脈沖編碼調(diào)制(PCM)格式的數(shù)字形式。這樣,在該較佳實(shí)施例中,每一取樣由一16位的數(shù)據(jù)字表示。眾多取樣被組織成輸入數(shù)據(jù)的幀,每一幀由預(yù)定量的取樣組成。在現(xiàn)在揭示的實(shí)施例中,就8KHz的取樣頻率進(jìn)行考慮。對于8KHz取樣頻率,每幀由160個(gè)取樣或20msec的語音組成。應(yīng)該理解,其它取樣頻率和幀尺寸也可以采用。
      聲音編碼領(lǐng)域包括許多不同的語音編碼技術(shù),其中之一是CELP編碼技術(shù)。在前文提到論文“一種4.8Kbps的編碼激勵(lì)線性預(yù)測編碼器”中描述了這種CELP編碼技術(shù)的概要。本發(fā)明采用一種形式的CELP編碼技術(shù),以提供編碼語音數(shù)據(jù)的可變速率,其中,LPC分析是對一定量的取樣進(jìn)行的,而音調(diào)和碼書檢索則是根據(jù)傳送速率對變量的取樣進(jìn)行的。在原理上,參照圖3和5討論應(yīng)用于本發(fā)明中的CELP編碼技術(shù)。
      在本發(fā)明的該較佳實(shí)施例中,語音分析幀為20ms長,意味著所提取的參數(shù)以每秒50次的脈沖進(jìn)行傳送。此外,數(shù)據(jù)傳送速率大致從8Kbps變化至4Kbps、2Kbps和1Kbps。在全速率(亦稱為速率1)下,數(shù)據(jù)傳送處于8.55Kbps的速率下,為每一幀而編碼的參數(shù)用了171位,其中包括一個(gè)11位的內(nèi)部CRC(循環(huán)冗余檢驗(yàn))。除去CRC位,速率將是8Kbps。在半速率(亦稱為速率1/2)下,數(shù)據(jù)傳送以4Kbps的速率進(jìn)行,每一幀的編碼參數(shù)用了80位。在四分之一速率(亦稱為速率1/4)下,數(shù)據(jù)傳送為2Kbps的速率,每幀的編碼數(shù)據(jù)用了40位。在八分之一速率(亦稱為速率1/8)下,數(shù)據(jù)傳送速率略低于1Kbps,各幀的編碼參數(shù)使用16位。
      圖1例示出語音數(shù)據(jù)的一個(gè)分析幀10,以及它與在LPC分析中采用的漢明窗口12的關(guān)系。不同速率下的LPC分析幀、音調(diào)和碼書子幀以圖表形式在圖2a-2d中示出。應(yīng)該理解,LPC分析幀在所有速率下是大小相同的。
      現(xiàn)在參見附圖,具體講是圖1a,LPC分析是采用幀10的160個(gè)語音數(shù)據(jù)取樣完成的,它們由漢明窗口12窗口化。如圖1a所示,各個(gè)幀中的取樣s(n)記數(shù)為0-159。漢明窗口12是這樣定位的,偏離幀10中的60個(gè)取樣。該漢明窗口12從當(dāng)前的數(shù)據(jù)幀10的第60個(gè)取樣s(59)開始,延續(xù)進(jìn)入下一數(shù)據(jù)幀14,包括其第59個(gè)取樣s(58)。因而,為當(dāng)前幀幀10產(chǎn)生的加權(quán)數(shù)據(jù)也含有以下一幀幀14的數(shù)據(jù)為依據(jù)的數(shù)據(jù)。
      根據(jù)數(shù)據(jù)傳送速率,對于圖1b-1e中示出的數(shù)據(jù)幀10的不同子幀進(jìn)行多次檢索,以計(jì)算出音調(diào)濾波器和碼書激勵(lì)參數(shù)。應(yīng)該理解成,在本實(shí)施例中,給幀10只選擇一個(gè)速率,因而音調(diào)和碼書檢索在不同大小的子幀中對應(yīng)于下面說明的選擇速率進(jìn)行。然而為了示意,在圖1b-1e中示出在本較佳實(shí)施例的各種允許速率下對幀10的音調(diào)和碼書檢索的子幀結(jié)構(gòu)。
      如圖1a所示,在所有速率下,對每一幀10都有一次LPC計(jì)算。如圖1b所示,在全速率下,對應(yīng)每一音調(diào)子幀16有兩個(gè)碼書子幀18。在全速率下有四次音調(diào)更新,四個(gè)音調(diào)子幀16各一次,每次長為40個(gè)取樣(5ms)。此外,在全速率下,有八次碼書更新,八個(gè)碼書子幀18各一次,每次長為20個(gè)取樣(2.5ms)。
      在半速率下,如圖1C所示,對應(yīng)每一音調(diào)子幀20,有兩個(gè)碼書子幀22。音調(diào)更新兩次,兩個(gè)音調(diào)子幀20各一次,而碼書更新四次,四個(gè)碼書子幀22各一次。在四分之一速率下,如圖1d所示,對單個(gè)音調(diào)子幀20有兩個(gè)碼書子幀26。對音調(diào)子幀24進(jìn)行一次音調(diào)更新,而碼書則為兩次,兩個(gè)碼書子幀26各一次。如圖1e所示,在八分之一速率下,不確定音調(diào),在對應(yīng)于幀10的幀28中碼書只更新一次。
      另外,雖然LPC系數(shù)每幀只計(jì)算一次,但是,在線頻譜對(LSP)表示式中,利用從前一幀得到的LSP頻率對它們線性內(nèi)插達(dá)四次,以逼近漢明窗口位于每一幀中心時(shí)的LPC分析的結(jié)果。其例外情況是在全速率下對碼書子幀LPC系數(shù)不被內(nèi)插。 LSP頻率計(jì)算的細(xì)節(jié)在此后說明。
      在較低速率下音調(diào)和碼書檢索較少地進(jìn)行,此外,給LPC系數(shù)的傳送也分配少量位數(shù)。在不同速率下配置的位的數(shù)量示出在圖2a-2d中。圖2a-2d中的每一個(gè)表示出分配給語音的每一160取樣幀的聲碼器編碼數(shù)據(jù)位的數(shù)量。在圖2a-2d中,各個(gè)LPC塊30a-30d中的數(shù)量是在相應(yīng)速率下用于短期LPC系數(shù)編碼的位數(shù)。在本較佳實(shí)施例中,用于LPC系數(shù)編碼的位數(shù)在全、半、四分之一和八分之一速率下分別是40、20、10和10。
      為了采用可變速率編碼,LPC首先變換成線頻譜對(LSP),得到的LSP頻率用DPCM編碼器單獨(dú)進(jìn)行編碼。LPC的階數(shù)為10,因而有10個(gè)LSP頻率和10個(gè)獨(dú)立的DPCM編碼器。對DPCM編碼器的位分配按照表I進(jìn)行。
      表I


      在編碼器和譯碼器中,LSP頻率都在用于音調(diào)和碼書檢索之前轉(zhuǎn)換回LPC濾波器系數(shù)。
      關(guān)于音調(diào)檢索,圖2a示出在全速率下,音調(diào)更新計(jì)算四次,對語音幀的每四分之一長度各一次。對于全速率下的每次音調(diào)更新,新的音調(diào)參數(shù)編碼用了10位。如圖2b-2d所示,在其它速率下,音調(diào)更新的次數(shù)不相同。當(dāng)速率降低時(shí),更新的次數(shù)也減少。圖2b示出在半速率下的音調(diào)更新,它計(jì)算兩次,對語音幀的每一半各進(jìn)行一次。與此類似,圖2c示出在四分之一速率下的音調(diào)更新,對每個(gè)語音幀計(jì)算一次。同全速率一樣,每次半速率和四分之一速率音調(diào)更新也用了10位來將新的音調(diào)參數(shù)編碼。但在八分之一速率下,如圖2d所示,不計(jì)算音調(diào)更新,因?yàn)樵跊]有或很少語音以及音調(diào)冗余不存在的時(shí)候,就采用該速率來對各個(gè)幀編碼。
      在每10位音調(diào)更新值中,7位表示音調(diào)滯后,而3位表示音調(diào)增益。音調(diào)滯后限制在17和143之間。音調(diào)增益線性是量化至0和2之間,以便用3位的值來表示。
      關(guān)于碼書檢索,圖2a示出,在全速率下碼書更新計(jì)算八次,語音幀的每八分之一各一次。全速率下的每次碼書更新用10位來進(jìn)行新的碼書參數(shù)編碼。圖2b-2d中示出,在其它速率下進(jìn)行不同次數(shù)的碼書更新。然而,隨著速率降低,碼書更新次數(shù)也減少。圖2b示出半速率下的碼書更新,它計(jì)算四次,對語音幀的每四分之一各一次。圖2c示出四分之一速率下的碼書更新,計(jì)算兩次,對語音幀的每一半各一次。同全速率下一樣,每個(gè)半速率和四分之一速率音調(diào)更新用10位來將新碼書參數(shù)編碼。最后,圖2d示出八分之一速率下的碼書更新,對每一語音幀進(jìn)行一次計(jì)算。要注意到,在八分之一速率下,傳送了6位,其中兩位代表碼書增益,其余四位是隨機(jī)位。后文將進(jìn)一步討論碼書更新的位分配。
      為碼書更新而分配的位數(shù)表示將音調(diào)預(yù)測余量矢量量化所需的數(shù)據(jù)位。在全、半和四分之一速率下,每次碼書更新由7位碼書索引加3位碼書增益總共10位數(shù)據(jù)組成。碼書增益是用工作在對數(shù)區(qū)域的差分脈碼調(diào)制(DPCM)編碼器進(jìn)行編碼的。對于八分之一速率,雖然也可以采用類似的位分布,但最好用一不同的方案。在八分之一速率下,碼書增益用兩位表示,而四個(gè)隨機(jī)產(chǎn)生的位則與接收到的數(shù)據(jù)一起使用,作為替代碼書的偽隨機(jī)數(shù)發(fā)生器的種子。
      參見圖3所示的編碼器框圖,LPC分析是以開環(huán)方式進(jìn)行的。從輸入語音取樣s(n)的各個(gè)幀中計(jì)算出LPC系數(shù)(α1-α10),如后文中說明,由LPC分析/量化器50來完成,已供共振峰合成濾波器60使用。
      然而,音調(diào)檢索的計(jì)算是以閉環(huán)方式進(jìn)行的,通常這稱作分析-合成方法。但是,在實(shí)際應(yīng)用中,采用一種新穎的閉環(huán)/開環(huán)混合技術(shù)來進(jìn)行音調(diào)檢索。在音調(diào)檢索中,通過選取使輸入語音與合成語音的均方之差為最小的參數(shù)而進(jìn)行編碼。為了簡化這部分的討論,速率的問題不作考慮。但在下文中將更詳細(xì)地討論選出的速率對音調(diào)和碼書檢索的影響。
      在圖3所示的初步實(shí)施例中,感知加權(quán)濾波器52由下列等式特征化W(z)=A(z)A(z/&mu;)----(1)]]>其中A(z)=1-&Sigma;i=110&alpha;iZ-i----(2)]]>它是共振峰預(yù)測濾波器,μ是感知加權(quán)參數(shù),在本實(shí)施例中,μ=0.8。音調(diào)合成濾波器58由下列等式特征化1P(z)=11-bz-L----(3)]]>下文討論共振峰合成濾波器60,它是加權(quán)濾波器,由下列等式特征化H(z)=(1A(z))W(z)=1A(z/&mu;)----(4)]]>輸入語音取樣S(n)由感知加權(quán)濾波器52加權(quán),所產(chǎn)生的加權(quán)語音取樣X(n)作為和輸入提供給加法器62。感知加權(quán)用于給低信號功率頻率中的錯(cuò)誤加權(quán)。在這些低信號功率頻率中,噪聲更易察覺。合成的語音取樣X(n)從共振峰合成濾波器60輸出作為差輸入加到加法器62與X(n)作減法運(yùn)算。加法器62輸出的取樣值之差輸入至均方差(MSE)單元64,它們被平方后累加。WSE單元64的結(jié)果提供給最小化單元66,它產(chǎn)生音調(diào)滯后L、音調(diào)增益b、碼書索引I和碼書增益G的數(shù)值。
      在最小化單化66中P(z)中的音調(diào)滯后參數(shù)L的所有可能值與來自乘法器56的數(shù)值c(n)一起輸入音調(diào)合成濾波器58。在音調(diào)檢索過程中,碼書沒有任何貢獻(xiàn),即c(n)=0。由最小化單元66選出使輸入語音與合成語音的加權(quán)差最小的L和b的數(shù)值。音調(diào)合成濾波器58產(chǎn)生并輸出P(n)值給共振峰合成濾波器60,一旦找到音調(diào)濾波器的音調(diào)滯后L和音調(diào)增益b,就以類似方式進(jìn)行碼書檢索。
      應(yīng)該理解,圖3是本發(fā)明所采取的分析-合成方法的原理表示。在本發(fā)明的例示應(yīng)用中,這些濾波器不應(yīng)用在典型的閉環(huán)反饋結(jié)構(gòu)中。在本發(fā)明中,在檢索過程中反饋聯(lián)系被切斷,而代之以開環(huán)共振峰余量,其細(xì)節(jié)在下文中提供。
      最小化單元66然后產(chǎn)生碼書索引I和碼書增益G的值。碼書54的輸出值是按照碼書索引I從許多隨機(jī)高斯矢量值中選出的,在乘法器56中乘以碼書增益G,產(chǎn)生音調(diào)合成濾波器58中所用的c(n)值序列。選取使均方差為最小的碼書索引I和碼書增益G用于傳送。
      應(yīng)注意到,感知加權(quán)W(z)既通過感知加權(quán)濾波器52加在輸入語音上,也通過共振峰合成濾波器60中包含的加權(quán)功能加在合成語音上。因而,共振峰合成濾波器60實(shí)際上是加權(quán)后的共振峰合成濾波器,它把等式1的加權(quán)功能與典型的共振峰預(yù)測濾波器特性 組合起來,產(chǎn)生等式3的加權(quán)共振峰合成功能。
      應(yīng)該理解的是,換種方式,感知加權(quán)濾波器52可以放在加法器62和MSE單元64之間。在這種情況下,共振峰合成濾波器60具有通常的濾波器特性 圖4示出用圖3的編碼器對語音編碼時(shí)所需步驟的流程。為了說明,涉及速率判定的步驟包含在圖4的流程中。在步驟80,從取樣電路獲取數(shù)字化語音取樣,在步驟82中計(jì)算出LPC系數(shù)。在LPC系數(shù)計(jì)算中用到了漢明窗口和自相關(guān)技術(shù)。在步驟84,在本實(shí)施例中依據(jù)幀能量對重要的幀作出初步的速率確定。
      為了有效地以少量位數(shù)將LPC系數(shù)編碼,在步驟86,LPC系數(shù)轉(zhuǎn)成線頻譜對(LSP)頻率,然后在步驟88量化,以便傳送。一種選擇方案是,在步驟90可以進(jìn)行附加的速率確定,在步驟92,如果認(rèn)為對初始速率作的LSP量化不充分,則可增加速率。
      在步驟94,對于處在分析中的語音幀的第1個(gè)音調(diào)子幀,LSP頻率經(jīng)內(nèi)插后轉(zhuǎn)換成LPC系數(shù),用于進(jìn)行音調(diào)檢索。在音調(diào)檢索中,碼書激勵(lì)設(shè)置為零。在步驟96和98的作為由先前討論的合成方法所進(jìn)行的一種分析的音調(diào)檢索中,就每一可能的音調(diào)滯后L,將合成語音與原始語音比較。對于每一L值,確定一個(gè)取整數(shù)值的最佳音調(diào)增益b。在L和b值的組合中,最佳的L和b值組合給出合成語音與原始語音之間的最小感知加權(quán)均方誤差。在所確定的音調(diào)子幀的L、b最佳值中,在步驟100將b值量化,以便與對應(yīng)的L值一起傳送。在音調(diào)檢索的另一種實(shí)現(xiàn)方法中,b值可以作為音調(diào)檢索一部分進(jìn)行量化,這些量化值用于進(jìn)行音調(diào)檢索。因而,在這種實(shí)現(xiàn)方式中消除了在音調(diào)檢索之后選中的b值在步驟100的量化要求。
      對于處在分析中的語音幀的第1碼書子幀,在步驟102,LSP頻率經(jīng)內(nèi)插后轉(zhuǎn)換成LPC系數(shù),以用于進(jìn)行碼書檢索。然而,在本實(shí)施例中,在全速率下,LSP頻率僅僅內(nèi)插至音調(diào)子幀水平。由于在各個(gè)頻率下音調(diào)和碼書子幀的大小有差異,在音調(diào)檢索之外,對碼書檢索也進(jìn)行這種內(nèi)插和轉(zhuǎn)換步驟。只有速率1/8是例外,因?yàn)椴挥?jì)算音調(diào)數(shù)據(jù),所以這一問題懸而未決。在步驟104和106的碼書檢索中,在音調(diào)合成濾波器中用到音調(diào)滯后L和音調(diào)增益b的最佳值,使得就每一個(gè)可能的碼書索引I,將會(huì)成語音與原始語音作比較。對于每個(gè)I值,確定一個(gè)取整數(shù)值的最佳碼書增益G。I和G值組合中,最佳的I和G值組合給出合成語音與原始語音之間最小的誤差。在給碼書子幀確定的最佳值I和G中,G值在步驟108被量化,以便與對應(yīng)I值一起傳送。在碼書檢索的另一種變換應(yīng)用中,G值可以量化成碼書檢索的一部分,這些量化值用于進(jìn)行碼書檢索。在這種變換應(yīng)用中,省除了碼書檢索之后在步驟108將選中的G值量化的要求。
      在碼書檢索之后,編碼器中的一個(gè)譯碼器在I、G、L和b的最佳值下運(yùn)行。編碼中的譯碼器的運(yùn)行使得編碼濾波存儲器重組,以用于以后的子幀。
      然后在步驟110進(jìn)行驗(yàn)證,以確定剛完成分析的該碼書子幀是否對應(yīng)于已進(jìn)行音調(diào)檢索的音調(diào)子幀的碼書子幀組中的最后一個(gè)碼書子幀。換句話說,確認(rèn)是否還有其他對應(yīng)于該音調(diào)子幀的碼書子幀。在本實(shí)施例中,對應(yīng)每一音調(diào)子幀有兩個(gè)碼書子幀。如果確認(rèn)有另一個(gè)對應(yīng)于該音調(diào)幀的碼書子幀,則對該碼書子幀重復(fù)步驟102-108 。
      如果不再有對應(yīng)于該音調(diào)幀的碼書子幀,則在步驟112進(jìn)行驗(yàn)證,以確定處于分析中的語音幀中是否有其他任何音調(diào)子幀存在。如果在當(dāng)前處于分析中的語音幀中有另一個(gè)音調(diào)子幀存在,則對每個(gè)音調(diào)子幀和對應(yīng)的碼書子幀重復(fù)步驟94-110。當(dāng)目前處于分析中的語音幀的計(jì)算都已完成之后,在步驟114,將代表語音幀的LPC系數(shù)的數(shù)值,即各音調(diào)子幀的音調(diào)滯后L和增益b和各碼書子幀的碼書索引I和增益G進(jìn)行壓縮,以便傳送。
      參見圖5,其中示出一個(gè)譯碼器框圖,按收到的LPC系數(shù)(αi),音調(diào)滯后和增益(L&amp;b)、碼書索引和增益(I&amp;G)用來合成語音。同圖3一樣,為了簡化討論,在圖5中也不考慮速率信息。數(shù)據(jù)速率信息可以作為輔助信息傳送,在某些情況下,可以在信道解調(diào)級導(dǎo)出。
      譯碼器由碼書130組成,得到所接收到的碼書索引,或者在八分之一速率下得到隨機(jī)種子。碼書130的輸出提供給乘法器132的一個(gè)輸入端,而乘法器132的另一輸出端接收碼書增益G。乘法器132的輸出與音調(diào)滯后L和增益b一起供給音調(diào)合成濾波器134。音調(diào)合成濾波器134的輸出與LPC系數(shù)αi一起供給共振峰合成濾波器136。共振峰合成濾波器136的輸出供給自適應(yīng)后置濾波器138,其中濾波和輸出的是再生語音。后文中將討論,有一種形式譯碼器是在編碼器中實(shí)現(xiàn)的。編碼器的譯碼器不包括自適應(yīng)后置濾波器138,但是包括一個(gè)感知加權(quán)濾波器。
      圖6是與圖5譯碼器的動(dòng)作相對應(yīng)的流程。在步驟150譯碼器中,根據(jù)接收到的參數(shù)重建語音。具體來講,在步驟152,接收到的碼書索引值輸入進(jìn)碼書,產(chǎn)生碼矢量或碼書輸出值。在步驟154,乘法器接收該碼矢量和碼書增益G,并將這些值相乘,得出的信號提供給音調(diào)濾波器。應(yīng)該注意到,碼書增益G是通過將收到的DPCM參數(shù)譯碼和反量化而得以重建的。在步驟156,音調(diào)合成濾波器得到所接收到的音調(diào)滯后L和增益b,以及乘法器輸出信號,以對乘法器輸出進(jìn)行濾波。
      音調(diào)合成濾波器對碼書矢量濾波后得到的數(shù)值輸入共振峰合成濾波器。在步驟158,LPC系數(shù)αi與供給共振峰合成濾波器,用于對音調(diào)合成濾波器的輸出信號濾波。在譯碼器中,將收到的參數(shù)譯碼成量化LSP頻率,將LSP頻率反量化并轉(zhuǎn)換成LPC系數(shù)αi,藉此重建LPC系數(shù),以進(jìn)行內(nèi)插。在步驟160,共振峰合成濾波器的輸出提供給自適應(yīng)后置濾波器,量化噪聲在其中被掩蓋,重建后的語音得到增益控制。在步驟162,重建后的語音輸出,以轉(zhuǎn)換成模擬形式。
      現(xiàn)在參見圖7a和7b的框圖,說明本發(fā)明的語音編碼技術(shù)的進(jìn)一步細(xì)節(jié)。在圖7a中,各個(gè)數(shù)字化語音取樣的幀提供給一個(gè)漢明窗口系統(tǒng)200,在該子系統(tǒng)中,輸入語音在自相關(guān)子系統(tǒng)202進(jìn)行自相關(guān)系數(shù)計(jì)算之前被窗口化。
      圖8的例示應(yīng)用中示出了漢明窗口子系統(tǒng)200和自相關(guān)子系統(tǒng)202。漢明窗口子系統(tǒng)200由通常是80×16位的ROM的查算表250和乘法器252組成。在每一速率下,語音的窗口中心處于160個(gè)取樣長的分析幀的第139和140個(gè)取樣之間。這樣,用于計(jì)算自相關(guān)系數(shù)的窗口偏移分析幀60個(gè)取樣。
      因?yàn)闈h明窗口是中心對稱的,所以窗口化是利用包含有160個(gè)WH(n)值中的80個(gè)值的ROM表進(jìn)行的。漢明窗口的偏移是通過將ROM的地址指針相對于分析幀的第一個(gè)取樣偏移60個(gè)位置而實(shí)現(xiàn)的。這些值由乘法器以單精度與對應(yīng)的輸入語音取樣相乘。在分析窗口中,將s(n)作為輸入語音信號,因而窗口化的語音信號Sw(n)被定義為Sw(n)=s(n+60)WH(n)0<=n<=79 (5)和Sw(n)=s(n+60)WH(159-n)80<=n<=159(6)查算表250內(nèi)容的16進(jìn)制例示值在表II中給出。這些數(shù)值解釋成具有14個(gè)小數(shù)位的二進(jìn)制補(bǔ)碼,表格要從左到右、從上到下閱讀。
      表II0×051f0×05250×05360×05540×057d0×05b10×05f20×063d0×06940×06f60×07640×07dc0×085e0×08ec0×09830×0a240×0ad00×0b840×0c420×0d090×0dd90×0eb00×0f900×10770×11660×125b0×13570×14590×15600×166d0×177f0×18950×19af0×1acd0×1bee0×1d110×1e370×1f5e0×20870×21b00×22da0×24030×252d0×26550×277b0×28a00×29c20×ae10×2bfd0×2d150×2e290×2f390×30430×31480×32470×333f0×34310×351c0×36000×36db0×37af0×387a0×393d0×39f60×3aa60×3b4c0×3be90×ec7b0×3d030×3d800×df3 0×3e5b0×3eb70×3f090×3f4f0×3f890×3fb80×3fdb0×3ff30×3fff自相關(guān)子系統(tǒng)202由寄存器254、多路轉(zhuǎn)換器256、移位寄存器258、乘法器260、加法器262、循環(huán)移位寄存器264和緩存器266組成。窗口化的語音取樣Sw(n)每隔20ms運(yùn)算一次并鎖存在寄存器254中。在LPC分析幀的第一個(gè)取樣Sw(o)上,移位寄存器258和264中復(fù)位到0。在每一個(gè)新的取樣Sw(n)上,多路轉(zhuǎn)換器256接收一個(gè)新的取樣選擇信號。該信號使取樣能夠從寄存器254進(jìn)入多路轉(zhuǎn)換器。新的取樣Sw(n)也提供給乘法器260。與取樣Sw(n-10)相乘,取樣Sw(n-10)處在移位寄存器258的未位SR10上。得到的數(shù)值在加法器262中與循環(huán)移位寄存器264的未位CSR11上的數(shù)值相加。
      移位寄存器258和260每收到一次時(shí)鐘脈沖,就在移位寄存器258的首位SR1中用Sw(n)替換Sw(n-1),并替換先前在位置CSR10中的數(shù)值。在移位寄存器258有時(shí)鐘脈沖時(shí),新脈沖選擇信號從多路轉(zhuǎn)換器256的輸入端中去除,使得當(dāng)前處在移位寄存器260位SR10中的取樣Sw(n-9)被允許進(jìn)入多路轉(zhuǎn)換器256。在循環(huán)移位寄存器264中,先前在位CSR11上的數(shù)值移入首位CSR1中。新取樣選擇信號從多路轉(zhuǎn)換器中去除后,移位寄存器258置位,以和循環(huán)移位寄存器264一樣,進(jìn)行數(shù)據(jù)的循環(huán)移位。
      對每個(gè)取樣,移位寄存器258和264總共都得到11次時(shí)鐘脈沖,因而執(zhí)行11次乘積/累加動(dòng)作。在對160個(gè)取樣進(jìn)行時(shí)鐘輸入后包含在循環(huán)移位寄存器264中的自相關(guān)結(jié)果作為R(0)-R(10)值時(shí)鐘輸入緩存器266。所有移位寄存器復(fù)位到零,對窗口化語音取樣的下一個(gè)幀重復(fù)此過程。
      回頭再參見圖7a,對語音幀計(jì)算好自相關(guān)系數(shù)后,速率確定子系統(tǒng)204和LPC分析子系統(tǒng)206就利用該數(shù)據(jù)來分別計(jì)算幀數(shù)據(jù)速率和LPC系數(shù)。由于這些運(yùn)算是彼此獨(dú)立的,所以,它們可以以任何順序甚至同時(shí)計(jì)算。這里為了說明,而首先討論速率確定。
      速率確定子系統(tǒng)204有兩個(gè)功能;(1)確定當(dāng)前幀的速率,(2)重新估算背景噪聲水平。當(dāng)前分析幀的速率最初是依據(jù)當(dāng)前幀的能量、背景噪聲水平的先前估值、先前速率和來自一控制微機(jī)的速率指令確定的。而新的背景噪聲水平是利用背景噪聲水平的先前估值和當(dāng)前幀能量估算出的。
      本發(fā)明將自適應(yīng)閾值技術(shù)用于速率確定。當(dāng)背景噪聲變化時(shí),用于選擇速率的閾值也變化。在本實(shí)施例中,計(jì)算三個(gè)閾值,以確定初始的速率選擇RTP。這些閾值是背景噪聲先前估值的二次函數(shù),示出如下T1(B)=-5.544613(10-6)B2+4.047152B+363.1293(7)T2(B)=-1.529733(10-5)B2+8.750045B+1136.214(8)和T3(B)=-3.957050(10-5)B2+18.89962B+3346.789(9)其中,B是背景噪聲的先前估值。
      幀能量與三個(gè)閾值T1(B)、T2(B)和T3(B)作比較。如果幀能量低于所有三個(gè)閾值,則選擇最低的傳送速率(1Kbps),即RTp=4速率1/8。如果幀能量低于兩個(gè)閾值,則選擇第二個(gè)傳送速率(2Kbps),即RTP=3,速率1/4。如果幀能量僅低于一個(gè)閾值,就選擇第三個(gè)傳送速率(4Kbps),即RTP=2,速率1/2。如果幀能量高于所有閾值,則選取最高傳送速率(8Kbps),即RTp=1,速率1。
      此后,可以依據(jù)前一幀的最終速率RTr來修改初始速率RTp。如果初始速率RTp低于前一幀的最終速率減1,即(RTr-1),則設(shè)定一個(gè)中間速率RTm=(RTr-1)。在發(fā)生高能量信號向低能量信號的轉(zhuǎn)換時(shí),這種修改過程使得速率緩慢地降低。然而,如果初始速率選擇等于或大于前一速率減1,即(RTr-1),則中間速率RTm設(shè)置成與初始速率RTp相同,即RTm=RTp。在這種場合,當(dāng)發(fā)生低能量信號向高能量信號的轉(zhuǎn)換時(shí),速率會(huì)立即提高。
      最后,中間速率RTm由來自微機(jī)的速率約束指令作進(jìn)一步修改。如果速率RTm大于微機(jī)所允許的最高速率,則設(shè)定初始速率RTi為最高允許值。與此類似,如果中間速率RTm小于微機(jī)允許的最低速率,則初始速率RTi設(shè)為最低允許值。
      在某些情況下,可能會(huì)要求以微機(jī)決定的速率對所有語音編碼。速率約束指令通過將最高和最低允許速率設(shè)為期望速率,而將幀速率設(shè)置成期望速率。速率約束指令可用于特殊的速率控制場合,如用于速率聯(lián)鎖和模糊及突發(fā)傳送,這些都在后文說明。
      圖9給出速率確定算法的例示執(zhí)行過程。要起動(dòng)運(yùn)算,寄存器270要預(yù)先裝入提供給加法器272的數(shù)值1。循環(huán)移位寄存器274、276和278分別裝載二次閾值等式(7)-(9)的第1、2和3系數(shù)。例如,循環(huán)移位寄存器274的末位、中位和首位分別裝載計(jì)算T1、T2和T3的等式的第1系數(shù)。與此類似,循環(huán)移位寄存器276的末位、中位和首位分別裝入計(jì)算T1、T2和T3的等式的第2系數(shù)。最后,循環(huán)移位寄存器278的末位、中位和首位分別裝入計(jì)算T1、T2和T3的等式的常數(shù)項(xiàng)。在各個(gè)循環(huán)移位寄存器274、276和278中,數(shù)值從末位輸出。
      在計(jì)算第1閾值T1時(shí),先前幀的背景噪聲估值B在乘法器280中自乘。得到的B2值乘以第1系數(shù)-5.544613(10-6),該系數(shù)從循環(huán)移位寄存器274的末位輸出。得到的結(jié)果在加法器286中加上來自乘法器284的背景噪聲B與循環(huán)移位寄存器276末位輸出的第2系數(shù)4.047152的乘積。然后,加法器286的輸出值在加法器288中加上循環(huán)移位寄存器278的末位輸出的常數(shù)項(xiàng)363.1293。加法器288的輸出即為T1的計(jì)算值。
      加法器288輸出的T1計(jì)算值在加法器290中減去幀能量值Ef,在本實(shí)施例中,Ef是線性區(qū)域中的數(shù)值R(0),由自相關(guān)子系統(tǒng)提供。
      換種方式,幀能量Ef也可以以分貝數(shù)在對數(shù)域中表示,它近似為由有效窗口長度歸一化后的第一自相關(guān)系數(shù)R(0)的對數(shù)值Ef=10log10R(0)LA/2----(10)]]>其中,LA是自相關(guān)窗口長度。應(yīng)該理解到,聲音動(dòng)作也可以從包括音調(diào)預(yù)測增益或共振峰預(yù)測增益Ga在內(nèi)的其它各種參數(shù)中測得Ga=10log10E(10)E(10)----(11)]]>其中,E(10)是第10次疊代后的預(yù)測殘留能量,而E(0)是初始LPC預(yù)測殘留能量,后文中說明,在LPC分析中與R(0)相等。
      利用比較器或限幅器292,從加法器290的輸出中提取二進(jìn)制補(bǔ)碼差值符號位的補(bǔ)碼,并提供給加法器272,與寄存器270的輸出相加。這樣,如果R(0)與T1之差為正,則寄存器270增量1。如果差值為負(fù),寄存器270保持原樣。
      然后,循環(huán)寄存器274、276和278進(jìn)行循環(huán),因而,T2的等式(8)的系數(shù)出現(xiàn)在其輸出端。同討論閾值T1的過程一樣,重復(fù)計(jì)算閾值T2和將它與幀能量比較的過程。然后,循環(huán)寄存器264、276和278再次循環(huán),使T3的等式(9)的系數(shù)出現(xiàn)在其輸出端。閾值T3的計(jì)算和與幀能量的比較與上文中說明的相同。在完成所有三個(gè)閾值的計(jì)算和比較后,寄存器270包含有初始速率估算值RTi。初始速率估算值RTp提供給速率緩降邏輯294。存儲在寄存器298中來自LSP頻率量化子系統(tǒng)的先前幀最終速率RTr也供給邏輯294。邏輯296計(jì)算數(shù)值(RTr-1),并提供初始速率估算值RTp和數(shù)值(RTr-1)中的較大者作為輸出。數(shù)值RTm給到速率限制邏輯296。
      前面說到,微機(jī)提供速率限制指令給聲碼器,具體講是給邏輯296。在用到數(shù)字信號處理器時(shí),該指令在編碼過程的LPC分析部分結(jié)束之前送入邏輯296中。邏輯296確認(rèn)該速率不超過速率限制值,并在RTm值超出限制值時(shí)修改它。如果RTm值在允許速率范圍內(nèi),它就作為初始速率值RTi從邏輯296中輸出。初始速率值RTi從邏輯296輸出到圖7a的LSP量化子系統(tǒng)210中。
      前面提到的背景噪聲估算值用于計(jì)算自適應(yīng)速率閾值。先前幀的背景噪聲估算值B用于建立當(dāng)前幀的速率閾值。然而,對于每一個(gè)幀,背景噪聲估算值被更新后用于為下一個(gè)幀確定速率閾值。新的背景噪聲估算值B′是根據(jù)先前幀的背景噪聲估算值B和當(dāng)前幀能量Ef在當(dāng)前幀中確定的。
      在確定用于下一幀的新的背景噪聲估算值B′(作為先前幀背景噪聲值B)時(shí),要計(jì)算兩個(gè)數(shù)值。第1個(gè)值V1僅僅是當(dāng)前幀能量Ef。第2個(gè)值V2是B+1和KB中的較大者,K=1.00547。為了防止第2個(gè)值變得太大,將其限制在一個(gè)很大的常數(shù)M=160,000之下。選擇兩個(gè)值V1和V2中小的一方作為新的背景噪聲估算值B′。
      數(shù)學(xué)表示為V1=R(0) (12)V2=min(160000,max(KB,B+1))(13)新的背景噪聲估算值B′是B′=min(V1,V2)(14)其中,min(x,y)是x,y中的最小值,而max(x,y)是x,y中的最大值。
      圖9進(jìn)一步示出了背景噪聲估算算法的例示執(zhí)行過程。第一個(gè)值V1僅僅是直接提供給多路轉(zhuǎn)換器300一個(gè)輸入端的當(dāng)前幀能量Ef。
      第二個(gè)值V2從首先算出的數(shù)值KB和B+1中計(jì)算得到。在計(jì)算數(shù)值KB和B+1時(shí),存儲在寄存器302中的先前幀背景噪聲估算值B輸出到加法器304和乘法器306中。應(yīng)該注意到,存儲在寄存器302中的用于當(dāng)前幀的先前幀背景噪聲估算值B與在先前幀中計(jì)算出的新的背景噪聲估算值B′相等。加法器304還得到一個(gè)輸入值1與數(shù)值B相加,從而產(chǎn)生B+1。乘法器304還得到一個(gè)輸入值K與數(shù)值B相乘,從而產(chǎn)生KB。B+1和KB分別從加法器304和乘法器306輸出到多路轉(zhuǎn)換器308和加法器310的各個(gè)輸入端。
      加法器310和比較器或限幅器312用于選擇B+1和KB中較大的一方。加法器310從KB中減去B+1并將結(jié)果提供給比較器或限幅器312。限幅器312提供一個(gè)控制信號給多路轉(zhuǎn)換器308,選擇B+1和KB較大的一方作為輸出。選出的B+1或KB(選中項(xiàng))從多路轉(zhuǎn)換器308輸出到限幅器314,限幅器314是飽和型限幅器,當(dāng)選中項(xiàng)低于常數(shù)值M時(shí),輸出選中項(xiàng)或者在選中項(xiàng)超出數(shù)值M時(shí)輸出數(shù)值M。限幅器314的輸出作為第二輸入供給多路轉(zhuǎn)換器300并作為加法器316的一個(gè)輸入。
      加法器316在另一個(gè)輸入端還接收到幀能量值Ef。加法器316和比較器或限幅器318用于選擇數(shù)值Ef和限幅器314的輸出中較小的一方。加法器316從限幅器314的輸出值中減去幀能量值,并將結(jié)果提供給比較器或限幅器318。限幅器318向多路轉(zhuǎn)換器300提供一個(gè)控制信號。用于選擇Ef值和限幅器314的輸出值中較小的一方。多路轉(zhuǎn)換器300輸出的選中數(shù)值作為新的背景噪聲估算值B′提供給寄存器302,存儲后作為當(dāng)前幀背景噪聲估算值B用在下一幀中。
      再參見圖7,各自相關(guān)系數(shù)R(0)-R(10)從自相關(guān)子系統(tǒng)202輸出到LPC分析子系統(tǒng)206中。在LPC分析子系統(tǒng)206中計(jì)算出的LPC系數(shù)用在感知加權(quán)濾波器52和共振峰合成濾波器60中。
      LPC系數(shù)可以通過采用德賓(Durbin)遞推式的自相關(guān)方法獲得,該方法在“語音信號數(shù)字化處理”(賴賓納和謝弗,普藍(lán)蒂斯-豪公司1978年出版)一書中討論過。這種技術(shù)是用于獲得LPC系數(shù)的高效計(jì)算方法。該算法可以用下列等式表示E(0)=R(0),i=1; (15)ki={R(i)-&Sigma;j=1i-1&alpha;j(i-1)R(i-j)}/Ei-1;----(16)]]>&alpha;i(i)=ki;----(17)]]>&alpha;j(i)=-&alpha;j(i-1)-ki&alpha;i-j(i-1)---1&lt;=j&lt;=i-1;----(18)]]>E(i)=(1-ki2)E(i-1)----(19)]]>如果i<10,則進(jìn)到等式(16),并取i=i+1 (20)十個(gè)LPC系數(shù)標(biāo)為 ,1<=j(luò)<=10。
      在將LPC系數(shù)編碼之前必須確保濾波器的穩(wěn)定性。濾波器的穩(wěn)定性是這樣實(shí)現(xiàn)的,將濾波器的極點(diǎn)沿徑向向內(nèi)微量移動(dòng),這一變化減小峰值頻率響應(yīng)的幅值而擴(kuò)展峰值的帶寬。這種技術(shù)作為帶寬擴(kuò)展是眾所周知的,在拖苦拉等人所著的“PARCOR語音分析-合成中的頻譜平滑”一文(ASSP學(xué)報(bào))中有進(jìn)一步說明。在現(xiàn)情況下通過按比例改變各LPC系數(shù),可以迅速地完成帶寬擴(kuò)展。因而如表III中所得到的LPC都乘以對應(yīng)的十六進(jìn)制數(shù)值以產(chǎn)生LPC分析子系統(tǒng)206的最終輸出LPC系數(shù)α1-α10。應(yīng)該注意到,表III中列出的數(shù)值是十六進(jìn)制形式的。用二進(jìn)制補(bǔ)碼標(biāo)記時(shí)有十五位。在這種形式下數(shù)值0×8000表示-1.0,向數(shù)值0×7333(或29491)表示0.899994等于29491/32768。
      表III&alpha;1=&alpha;1(10)&CenterDot;0&times;7333]]>&alpha;2=&alpha;2(10)&CenterDot;0&times;67ae]]>&alpha;3=&alpha;3(10)&CenterDot;0&times;5d4f]]>&alpha;4=&alpha;4(10)&CenterDot;0&times;53fb]]>&alpha;5=&alpha;5(10)&CenterDot;0&times;4b95]]>&alpha;6=&alpha;6(10)&CenterDot;0&times;4406]]>&alpha;7=&alpha;7(10)&CenterDot;0&times;3d38]]>&alpha;8=&alpha;8(10)&CenterDot;0&times;3719]]>&alpha;9=&alpha;9(10)&CenterDot;0&times;3196]]>&alpha;10=&alpha;10(10)&CenterDot;0&times;2ca1]]>這些運(yùn)算最好以雙精度進(jìn)行,即進(jìn)行32位的除法、乘法和加法。最好有雙精度的準(zhǔn)確度,以保持自相關(guān)函數(shù)和濾波器系數(shù)的動(dòng)態(tài)范圍。
      在圖10中示出了LPC子系統(tǒng)206的一個(gè)例示實(shí)施例的方框圖,它用到上述等式(15)-(20)。LPC子系統(tǒng)206由三個(gè)電路部分組成,一個(gè)計(jì)算電路330和兩個(gè)用于更新主計(jì)算電路330的寄存器的緩存更新電路332和334。計(jì)算首先是從數(shù)值R(1)到R(10)裝入緩存器340中開始的。為了啟動(dòng)計(jì)算寄存器346,通過多路轉(zhuǎn)換器344預(yù)先裝入數(shù)值R(1)。寄存器由多路轉(zhuǎn)換器354用R(0)初始化,緩存器352(它保存十個(gè) 數(shù)值)由多路轉(zhuǎn)換器354初始化為全零,緩存器356(它保持十個(gè) 數(shù)值)由多數(shù)轉(zhuǎn)換器358初始化為全零,對于計(jì)算循環(huán)i設(shè)定為1。為了明了起見,計(jì)數(shù)器i和j以及其它運(yùn)算循環(huán)控制在圖中未畫出,但是這種類型的邏輯電路的設(shè)計(jì)和綜合是處在數(shù)字邏輯設(shè)計(jì)領(lǐng)域中普通熟練者的能力范圍之內(nèi)的。
      數(shù)值從緩存器356輸出,以計(jì)算等式(14)中的KiE(1-1)項(xiàng)。各個(gè)數(shù)值R(i-j)從緩存器340輸出,在乘法器360中與 相乘。得到的數(shù)值與來自寄存器346的數(shù)值在加法器362中作減法,每次相減的結(jié)果存儲在寄存器346中以供作下一項(xiàng)減法。在第i個(gè)循環(huán)中,如等式(14)的求和項(xiàng)中所示,有i-1次乘法和累加運(yùn)算。在該循環(huán)的最后,寄存器346中的數(shù)值在除法器364中除以來自寄存器348的數(shù)值E(i-1),產(chǎn)生數(shù)值ki。
      然后,該數(shù)值ki用在緩存更新電路332中,計(jì)算等式(19)中的E(i),數(shù)值E(i)在ki的下一個(gè)計(jì)算循環(huán)中用作為數(shù)值E(i-1)。當(dāng)前循環(huán)的數(shù)值ki在乘法器366中自乘以獲得數(shù)值ki2。然后,數(shù)值ki2在加法器368中被減去1。這一加法器運(yùn)算的結(jié)果在乘法器370中乘以來自寄存348的數(shù)值E(i)。其結(jié)果E(i)通過多路轉(zhuǎn)換器350輸入寄存器348存儲起來作為下一周期的數(shù)值E(i-1)。
      然后,數(shù)值ki用來以等式(15)計(jì)算數(shù)值 。在這種情況下,數(shù)值ki通過多路轉(zhuǎn)換器358輸出緩存器356。數(shù)值ki還用在緩存更新電路334中,以等式(18)從數(shù)值 計(jì)算出數(shù)值 。緩存器352中現(xiàn)存的數(shù)值用于計(jì)算 。如等式(18)所示,在第i個(gè)循環(huán)中有i-1次運(yùn)算。在i=1的迭代中,不需要這些運(yùn)算。對于第i次循環(huán)的各個(gè)j值,計(jì)算出一個(gè) 值。在計(jì)算各 值時(shí),各 值在乘法器372中乘以數(shù)值ki,以輸出到加法器374。在加法器374中,從另外輸入加法器374的數(shù)值 中減去數(shù)值 。各個(gè)乘法和加法的結(jié)果作為 值通過多路轉(zhuǎn)換器358供給緩存器356。
      對當(dāng)前循環(huán)計(jì)算出 和 值后,就將剛算出并存儲于緩存器356中的這些數(shù)值通過多路轉(zhuǎn)換器354輸出給緩存器352。存在緩存器356中的數(shù)值存儲于緩存器352的相應(yīng)位置中。這樣,緩存器352得到更新,以計(jì)算i+1循環(huán)的數(shù)值ki。
      在前一循環(huán)的最后產(chǎn)生的數(shù)據(jù) 在當(dāng)前循環(huán)中用于為下一循環(huán)產(chǎn)生更新數(shù)據(jù) ,注意到這一點(diǎn)是很重要的。必須保留該前一循環(huán)的數(shù)據(jù),以便為下一循環(huán)完整地產(chǎn)生更新數(shù)據(jù)。這樣,兩個(gè)緩存器356和352用于將前一循環(huán)的數(shù)據(jù)保存到更新數(shù)據(jù)完全產(chǎn)生為止。
      上述說明是針對在完成更新數(shù)值的計(jì)算時(shí)數(shù)據(jù)從緩存器356向緩存器352并行轉(zhuǎn)送作出的。這種執(zhí)行方式確保舊的數(shù)據(jù)在計(jì)算新數(shù)據(jù)的整個(gè)過程中得以保留,而不會(huì)象在設(shè)置單個(gè)緩存器情況下,舊的數(shù)據(jù)在完全利用之前就丟失了。上述方式是實(shí)現(xiàn)相同結(jié)果的現(xiàn)有幾個(gè)方式之一。例如,緩存器352和356可以經(jīng)過多路轉(zhuǎn)換,以使得在當(dāng)前循環(huán)中依據(jù)存儲在一個(gè)第一緩存器中的數(shù)值計(jì)算數(shù)值ki時(shí),更新數(shù)據(jù)存在第二緩存器中,用在下一計(jì)算循環(huán)中。在下一循環(huán)中,數(shù)值ki依據(jù)存在第二緩存器中的數(shù)值算出。第二緩存器中的數(shù)值和數(shù)值ki用于為下一循環(huán)產(chǎn)生更新數(shù)據(jù),這些更新數(shù)據(jù)存在第一緩存器中。緩存器的這種替換使得前一計(jì)算循環(huán)的數(shù)據(jù)得以保存,以此產(chǎn)生更新數(shù)據(jù),并在不重寫需要用來產(chǎn)生更新數(shù)據(jù)的先前數(shù)據(jù)的情況下存儲更新數(shù)據(jù)。使用這種技術(shù)能夠?qū)⑴c下一循環(huán)ki值的計(jì)算相關(guān)的延遲減至最小。因而,在計(jì)算ki時(shí)乘積/累加的更新可以在計(jì)算下一 值的同時(shí)進(jìn)行。
      在完成最后一個(gè)計(jì)算循環(huán)(i=10)后存在緩存器356中的10個(gè)LPC系數(shù) 換算到相應(yīng)的最后LPC系數(shù)αj。向多路轉(zhuǎn)換器344、376和378提供一個(gè)換算選擇信號,因而,存在系數(shù)查算表342中的換算數(shù)值,即表III的十六進(jìn)制數(shù)值,被選中,通過多路轉(zhuǎn)換器344輸出。存在表342中的數(shù)值按順序在時(shí)鐘脈沖控制下輸出,并輸入乘法器360。乘法器360還通過多路轉(zhuǎn)換器370接收從寄存器356順序輸出的數(shù)值 。換算后的數(shù)值通過多路轉(zhuǎn)換器378從乘法器360輸出到LPC至LSP轉(zhuǎn)換子系統(tǒng)208(圖7)。
      為了迅速有效地以少量位數(shù)將10個(gè)換算后的LPC系數(shù)編碼,各系數(shù)轉(zhuǎn)換成線頻譜對頻率,在宋和江發(fā)表于ICASSP′84中的文章“線頻譜對(LSP)和語音數(shù)據(jù)壓縮”中對此有說明。在下列等式(21)和(22)及表IV中示出了LSP參數(shù)的計(jì)算。
      LSP頻率是處在0和π之間的下列等式的十個(gè)根P(ω)=cos5ω+P1cos4ω+…+P4cosω+P5/2 (21)Q(ω)=cos5ω+q1cos4ω+…+q4cosω+q5/2 (22)其中,Pn和qn對n=1、2、3、4分別取值,并在表IV中遞歸定義表IVP1=-(α1+α10)-1 q1=-(α1-α10)+1P2=-(α2+α9)-P1q2=-(α2-α9)+q1P3=-(α3+α8)-P2q3=-(α3-α8)+q2P4=-(α4+α7)-P3q4=-(α4-α7)+q3P5=-(α5+α6)-P4q5=-(α5-α6)+q4表IV中,α1,……,α10是從LPC分析得到的換算系數(shù)。為了簡化,等式(21)和(22)的10個(gè)根換算成0到0.5之間的值。LSP頻率的特性是,當(dāng)LPC濾波器穩(wěn)定時(shí),兩個(gè)等式的根變動(dòng);即,最低的根ω1是P(ω)的最低的根,次最低的根ω2是Q(ω)的最低的根,以此類推。在10個(gè)頻率中,奇頻率是P(ω)的根,而偶頻率是Q(ω)的根。
      根的查找方法如下。首先,如上面所示那樣將LPC系數(shù)加入,從而以雙精度計(jì)算出P和q系數(shù)。然后,每隔π/256弧度計(jì)算一次P(ω),再觀察這些值的符號變化,辨別在該子區(qū)域中的一個(gè)根。如果找到一個(gè)根,則在該區(qū)域兩端之間進(jìn)行一次線性內(nèi)插,以迫近根的真實(shí)位置。由于頻率的定序特性,在每對P根之間保證存在一個(gè)Q根(第5個(gè)Q根處于第5個(gè)P根與π之間)。在每對P根之間進(jìn)行對分查找,確定Q根的位置。為了簡便,每個(gè)P根近似取最近的π/256數(shù)值,在這些近似值之間進(jìn)行對分查找。如果未找到根,則使用先前找到根的最近的幀的LSP頻率的非量化值。
      現(xiàn)在參見圖11,其中示出一個(gè)用于產(chǎn)生LSP頻率的例示電路。上述操作需要總共257個(gè)在0和π之間的可能的余弦值,它們在雙精度下存儲在余弦表400中,該表格由模256計(jì)數(shù)器402尋址。對于輸入表400的各個(gè)j值,給出cosω、cos2ω、cos3ω、cos4ω和cos5ω輸出,其中ω=j(luò)π/256 (23)j是計(jì)數(shù)值。
      余弦表400輸出的數(shù)值cosω、cos2ω、cos3ω和cos4ω輸入到相應(yīng)的各個(gè)乘法器404、406、408和410,而數(shù)值cos5ω則直接輸入加法器412中。這些值在各乘法器404、406、408和410中分別乘以通過多路轉(zhuǎn)換器414、416、418和420輸入其中的數(shù)值P4、P3、P2和P1。
      相乘結(jié)果也輸入累加器412。此外,數(shù)值P5通過多路轉(zhuǎn)換器422送到乘法器424,同時(shí),常數(shù)0.5,即1/2也送到乘法器424。乘法器424的輸出結(jié)果也作為另一個(gè)輸入給加法器412。為了利用同一電路計(jì)算P(ω)和Q(ω)值,根據(jù)P/q系數(shù)選通信號,多路轉(zhuǎn)換器414-422在P1-P5或q1-q5之間作出選擇。圖中未示出產(chǎn)生P1-P5或q1-q5的電路,但是,利用一系列將LPC系數(shù)和P1-P5或q1-q5進(jìn)行加減運(yùn)算的加法器,以及存儲P1-P5或q1-q5值的寄存器,很容易實(shí)現(xiàn)該電路。
      加法器412將輸入值相加,依情況而定,輸出P(ω)或Q(ω)。為了簡便,在以后的討論中將考慮P(ω)值的情況,Q(ω)值以類似方式利用q1-q5數(shù)值算出。加法器412輸出P(ω)的當(dāng)前值,存儲在寄存器426中。先前存在寄存器426中的前一P(ω)值移位至寄位器428中。當(dāng)前和先前的P(ω)值的符號位在異或門430中異或,以傳給線性內(nèi)插器434的起動(dòng)信號的形式顯示零交叉或符號變換。P(ω)的當(dāng)前和先前數(shù)值也從寄存器426和428輸出到線性內(nèi)插器434,該內(nèi)插器響應(yīng)起動(dòng)信號,在P(ω)發(fā)生零交叉的兩個(gè)值之間進(jìn)行內(nèi)插。該線性內(nèi)插小數(shù)值結(jié)果,即與數(shù)值j-1的距離,與來自計(jì)數(shù)器256的數(shù)值j一起提供給緩存器436。門430還將起動(dòng)信號提供給緩存器436,緩存器436允許數(shù)值j和對應(yīng)的小數(shù)值FVj存入。
      在加法器438中,數(shù)值j中減去該小數(shù)值,作為緩存器436的輸出,或者換種方式,減去后輸入緩存器436。在替換方式下,在輸入緩存器436的j線中用一個(gè)寄存器,使得數(shù)值j-1與小數(shù)值輸入一起輸入緩存器436。小數(shù)值可以在存入寄存器436之前或從中輸出時(shí)加到數(shù)值j-1上。在任何情況下,混合值j+FVj或(j-1)+FVj輸出到除法器440,除以輸入的常數(shù)512。只需改變二進(jìn)制字中的二進(jìn)制小數(shù)點(diǎn)位置,就可以簡單地完成除法操作。這一除法操作為達(dá)到處于0和0.5之間的LSP頻率而提供必需的換算。
      P(ω)或Q(ω)的函數(shù)計(jì)算需要5次余弦值查表,4次雙精度乘法運(yùn)算和4次加法運(yùn)算。算出的根通常只精確到大約13位,并在單精度下存放。 LSP頻率提供給LSP量化子系統(tǒng)210(圖7),用于量化。
      LSP頻率算出之后,就必須量化,以便傳送。十個(gè)LSP頻率中的每一個(gè)都大致以一偏置數(shù)為中心。應(yīng)該注意到,當(dāng)輸入語音具有平坦的LSP頻譜特性曲線并且不能做任何短期預(yù)測時(shí)LSP頻率接近偏置數(shù)。偏置數(shù)從編碼器中取出,并且用到一個(gè)簡單的DPCM量化器。在譯碼器中,偏置數(shù)又加回去。由LPC至LSP轉(zhuǎn)換子系統(tǒng)所提供的各LSP頻率ω1-ω10的偏置數(shù)的非,以十六進(jìn)制形式給出在表V中。表V中給出的數(shù)值也是二進(jìn)制補(bǔ)碼,有15個(gè)小數(shù)位。十六進(jìn)制數(shù)值0×8000(或-32768)表示-1.0。這樣,表V的第一個(gè)值0×fa2f(或-1489)表示-0.045441=-1489/32768。
      表V


      子系統(tǒng)中用的預(yù)測器等于子系統(tǒng)一個(gè)緩存器中存儲的來自先前幀的量化LSP頻率的0.9倍。加入衰減常數(shù)0.9,因而信道錯(cuò)誤最終將消除掉。
      用到的量化器是線性的,但動(dòng)態(tài)范圍和步長隨速率而變。在高速率幀中,每一LSP頻率有更多位數(shù)要傳送,因而,量化級數(shù)依賴于速率。在表VI中,示出了每速率下對各頻率的量化的位分配和動(dòng)態(tài)范圍。例如,在速率1,ω1統(tǒng)一量化成4位(即16級),最高量化級為0.025,而最低的是-0.025。
      表 VI


      如果由速率確定算法選中的速率的量化范圍不夠大,或者發(fā)生斜率溢出,則速率提高到下一個(gè)較高的速率上。速率持續(xù)提升,一直到動(dòng)態(tài)范圍得到調(diào)節(jié)或達(dá)到全速率為止。在圖12中,給出了運(yùn)用選擇速率提高技術(shù)的裝置的一個(gè)例示框圖。
      圖12以框圖形式示出了LSP量化子系統(tǒng)210的一個(gè)例示設(shè)備,它包括速率提升電路。圖12中,當(dāng)前幀LSP頻率從除法器440(圖11)輸出到寄存器442,存儲起來,以在下一幀中進(jìn)行速率提升限定時(shí)輸出。先前幀LSP頻率和當(dāng)前幀LSP頻率分別從寄存器442和除法器440輸出到速率提升邏輯444,進(jìn)行當(dāng)前幀的速率提升限定。速率提升邏輯442還接收到初始速率決定,以及來自速率限定子系統(tǒng)204的速率限制指令。在確定是否必須增大速率時(shí),邏輯444根據(jù)當(dāng)前和先前幀LSP頻率差值的平方之和,將先前幀LSP頻率與當(dāng)前幀LSP頻率比較。其結(jié)果再與一個(gè)閾值比較,閾值如被超出,則顯示有必要提升速率來確保高質(zhì)量的語音編碼。在超出閾值時(shí),邏輯444將初始速率增加一個(gè)速率級別,從而給出整個(gè)編碼器通用的最終速率。
      圖12中,各LSP頻率值ω1-ω10逐個(gè)與對應(yīng)的偏置數(shù)一起輸入加法器450。從輸入的LSP值中減去偏置數(shù),其結(jié)果輸出給加法器452。加法器452還收到一個(gè)輸入—預(yù)測值,即乘以衰減常數(shù)后的先前幀對應(yīng)的LSP值。加法器452從加法器450的輸出中減去預(yù)測值。加法器452的輸出作為量化器454的一個(gè)輸入。
      量化器454由限幅器456、最小動(dòng)態(tài)范圍查算表458、逆步長查算表460、加法器462、乘法器464和位屏蔽466組成。在量化器454中進(jìn)行量化,首先確定輸入值是否處在量化器454的動(dòng)態(tài)范圍內(nèi)。輸入值提供給限幅器456,如果該輸入超出了表458提供的限定值,限幅器456就將它限制在動(dòng)態(tài)范圍的上界和下界內(nèi)。查算表458按照表VI,響應(yīng)輸入其中的速率和LSP頻率索引i,向限幅器456提供存儲的限定值。限幅器456的輸出值輸入加法器462,從中減去表458提供的動(dòng)態(tài)范圍的最小值。按照表VI中所列的最小動(dòng)態(tài)范圍值,先不管其符號,依據(jù)速率和LSP頻率索引i再次確定表格458的輸出值。例如,對于(全速率,ω1),查算表458的值為0.025 。
      加法器462的輸出在乘法器464中乘以一個(gè)選自查算表460的數(shù)值。查算表460包含有與表VI中所列數(shù)值一致的、各個(gè)速率下的各LSP值的步長之逆相對應(yīng)的數(shù)值。依據(jù)速率和LSP頻率索引i來選擇查算表460的輸出值。對于各個(gè)速率和LSP頻率索引i,存在查表460中的數(shù)值是((2n-1)/動(dòng)態(tài)范圍),其中,n是代表量化值的位數(shù)。例如,對于(速率1,ω1),查算表460的數(shù)值是(15/0.05)或300。
      乘法器464的輸出是介于0和2n-1之間的一個(gè)數(shù)值,它供給位屏蔽466。位屏蔽466響應(yīng)速率和LSP頻率索引,根據(jù)表VI,從輸入值中提取適當(dāng)?shù)奈粩?shù)。提出的是輸入值中的n個(gè)整數(shù)位,從而形成位限制輸出Δωi。數(shù)值Δωi是量化未偏置差分編碼LSP頻率,從代表LPC系數(shù)的信道中傳送。
      數(shù)值Δωi也通過一個(gè)由逆量化器468、加法器470、緩存器472和乘法器474組成的預(yù)測器反饋。逆量化器468由步長查算表476、最小動(dòng)態(tài)范圍查算表478、乘法器480和加法器482組成。
      數(shù)值Δωi與選自查算表476的一個(gè)數(shù)值一起輸入乘法器480。查算表476含有在各個(gè)速率下依據(jù)于表VI中所列數(shù)值的各LSP數(shù)值的步長所對應(yīng)的數(shù)值。依據(jù)速率和LSP頻率索引i,從查算表476中選擇輸出值。對于各個(gè)速率和LSP頻率索引i,存在查算表460中的數(shù)值是(動(dòng)態(tài)范圍/2n-1),其中,n是代表量化值的位數(shù)。乘法器480將輸入值相乘,提供輸出給加法器482。
      加法器482從另一輸入接收表478的一個(gè)數(shù)值。表478的輸出數(shù)值根據(jù)表VI中所列最小動(dòng)態(tài)范圍數(shù)值,無視其符號,由速率和LSP頻率索引i來確定。加法器482將表478提供的最小動(dòng)態(tài)范圍值與乘法器480的輸出值相加,結(jié)果輸出給加法器470。
      加法器470在另一輸入端接收到乘法器474的預(yù)測值輸出。這些值在加法器470中相加,并存儲在十個(gè)字容量的緩存器472中。在當(dāng)前幀中緩沖器472的每個(gè)先前幀輸出值在乘法器474中乘以常數(shù)0.9。乘法器474輸出的預(yù)測值如前面討論過的那樣,供給加法器452和470。
      在當(dāng)前幀中,緩存器472中存儲的數(shù)值是先前幀重建LSP值減去偏置值。相類似,在當(dāng)前幀中,加法器470的輸出值是不帶偏置的當(dāng)前幀重建的LSP值。在當(dāng)前幀中,緩存器472和加法器470的輸出分別提供給加法器484和486,加上偏置數(shù)。加法器484和486的輸出值分別是先前幀重建LSP頻率和當(dāng)前幀重建LSP頻率值。依照下列等式在更低速率下進(jìn)行LSP平滑化平滑后LSP=a(當(dāng)前LSP)+(1-a)(先前LSP) (24)其中a=0全速率下a=0.1 半速度下a=0.5 四分之一速率下a=0.85 八分之一速率下先前幀(f-1)重建LSP頻率值ω′i,f-1和當(dāng)前幀(f)重建頻率值ω′i,f從量化子系統(tǒng)210輸出到音調(diào)子幀LSP內(nèi)插子系統(tǒng)216和碼書子幀LSP內(nèi)插子系統(tǒng)226。量化后的LSP頻率值Δωj從LSP量化子系統(tǒng)210輸出到數(shù)據(jù)匯編子系統(tǒng)236,用于傳送。
      以后說明的加權(quán)濾波器和共振峰合成濾波器所用到的LPC系數(shù)對于正在編碼的音調(diào)子幀是合適的。對各個(gè)音調(diào)子幀,LPC系數(shù)的內(nèi)插對每個(gè)音調(diào)子幀進(jìn)行一次,如表VII表VII束率1ωi=0.75ω′i,f-1+0.25ω′i,f音調(diào)子幀1ωi=0.5ω′i,f-1+0.5ω′i,f音調(diào)子幀2ωi=0.25ω′i,f-1+0.75ω′i,f音調(diào)子幀3ωi=ω′i,f音調(diào)子幀4速率1/2ωi=0.625ω′i,f-1+0.375ω′i,f音調(diào)子幀1ωi=0.125ω′i,f-1+0.875ω′i,f音調(diào)子幀2速率1/4ωi=0.625ω′i,f-1+0.375ω′i,f音調(diào)子幀1速率1/8不進(jìn)行音調(diào)檢索音調(diào)子幀計(jì)數(shù)器224用于跟蹤計(jì)算音調(diào)參數(shù)的音調(diào)子幀,計(jì)數(shù)器的輸出提供給音調(diào)子幀LSP內(nèi)插子系統(tǒng)216,用于音調(diào)子幀LSP內(nèi)插。音調(diào)子幀計(jì)數(shù)器224還提供一個(gè)輸出給數(shù)據(jù)壓縮子系統(tǒng)236,指示在選中速率下音調(diào)子幀的結(jié)束。
      圖13示出音調(diào)子幀LSP內(nèi)插子系統(tǒng)216的一個(gè)例示裝置,它用于對相關(guān)音調(diào)子幀的LSP頻率進(jìn)行內(nèi)插。在圖13中,先前和當(dāng)前LSP頻率ω′i,f-1和ω′i,f分別從LSP量化子系統(tǒng)輸出到乘法器500和502,再分別乘以存儲器504提供的常數(shù)。存儲器504存儲一組常數(shù),并且,根據(jù)來自音調(diào)子幀計(jì)數(shù)器的音調(diào)子幀數(shù)輸入(這在后文討論),提供一個(gè)表VII中所列的常數(shù)輸出,與先前和當(dāng)前幀LSP數(shù)值相乘。乘法器500和502的輸出按照表VII中的等式在加法器506中相加,形成該音調(diào)子幀的LSP頻率值。對于各音調(diào)子幀,LSP頻率的內(nèi)插一旦完成,就執(zhí)行LSP至LPC的反向轉(zhuǎn)換,以獲得感知加權(quán)濾波器和A(z)的當(dāng)前系數(shù)值。這樣,內(nèi)插后的LSP頻率提供給圖7的LSP至LPC轉(zhuǎn)換子系統(tǒng)218。
      LSP至LPC轉(zhuǎn)換子系統(tǒng)218將內(nèi)插LSP頻率逆轉(zhuǎn)換成LPC系數(shù),用于語音的再合成。先前的參考文章,宋和江所著的“線頻譜對(LSP)和語音數(shù)據(jù)壓縮”中對本發(fā)明在轉(zhuǎn)換過程中用的算法有全面的討論和推導(dǎo)。計(jì)算特征是這樣的,P(z)和Q(z)可以利用LSP頻率由下列等式表示P(z)=(1+Z-1)&pi;i=15(1-2cos(&omega;2i-1)Z-1+Z-2)----(25)]]>其中,ωi是P′多項(xiàng)式的根(奇頻率),Q(z)=(1-Z-1)&pi;i=15(1-2cos(&omega;2i)Z-1+Z-2)----(26)]]>其中,ωi是Q′多項(xiàng)式的根(偶頻率),A(z)=Pz+Qz2----(27)]]>這一運(yùn)算首先是對所有奇頻率i算出數(shù)值2cos(ωi)。利用零附近的余弦的5階單精度泰勒級數(shù)展開式完成該計(jì)算。在余弦表中最接近點(diǎn)處的泰勒展開式可能更準(zhǔn)確,但是,零附近的展開式有足夠精度,并且,不會(huì)帶來多余的計(jì)算。
      接下去,計(jì)數(shù)P多項(xiàng)式的系數(shù)。多項(xiàng)式之積的系數(shù)是單個(gè)多項(xiàng)式的系數(shù)序列的卷積。上述等式(25)中6個(gè)z多項(xiàng)式系數(shù)序列的卷積{1,-2cos(ω1),1},{1,-2cos(ω3),1}……{1,-2cos(ω9),1}和{1,1}被算出。
      P多項(xiàng)式一經(jīng)算出,就對Q多項(xiàng)式重復(fù)相同的程序,上述等式(26)中的6個(gè)z多項(xiàng)式系數(shù)序列{1,-2cos(ω2),1},{1,-2cos(ω4),1}……{1,-2cos(ω10),1}和{1,1}以及適當(dāng)?shù)南禂?shù)被加起來,并除以2,即移動(dòng)1位,以形成LPC系數(shù)。
      圖13還詳細(xì)地示出LSP至LPC轉(zhuǎn)換子系統(tǒng)的例示執(zhí)行過程。電路部分508依據(jù)輸入值ωi計(jì)算出數(shù)值-2cos(ωi)。電路部分508由緩存器509、加法器510和515、乘法器511、512、514、517和518、寄存器513和516組成。在計(jì)算數(shù)值-2cos(ωi)時(shí),寄存器513和516被初始化為零。因?yàn)樵撾娐肥怯?jì)算sin(ωi)的,所以,在加法器510中首先先以輸入常數(shù)值π/2減ωi。該數(shù)值由乘法器511取平方,然后,用乘法器512和寄存器513依次計(jì)算數(shù)值(π/2-ωi)2、(π/2-ωi)4、(π/2-ωi)6和(π/2-ωi)8。
      泰勒級數(shù)展開式系數(shù)C〔1〕-C〔4〕依次和乘法器512的輸出值一起輸入乘法器514。乘法器514的輸出值輸入加法器515,與寄存器516的輸出相加,這些值累加形成輸出C〔1〕(π/2-ωi)2+C〔2〕(π/2-ωi)4+C〔3〕(π/2-ωi)6+C〔4〕(π/2-ωi)8,輸給乘法器517。來自寄存器516的乘法器的輸入與來自加法器510的輸出 在乘法器517中相乘。來自乘法器517的數(shù)值cos(ωi)在乘法器518中乘以常數(shù)-2,從而形成輸出-2cos(ωi),提供給電路部分520。
      電路部分520用于計(jì)算P多項(xiàng)式的系數(shù),它由存儲器512、乘法器522和加法器523組成。存儲器單元P(1)…P(11)的陣列除P(1)置為1之外其余初始化為0。已標(biāo)到的-2cos(ωi)數(shù)值送入乘法器524,執(zhí)行卷積(1,-2cos(ωi),1),其中,1≤i≤5,1≤j≤2i+1,j<1時(shí)P(j)=0。電路部分520是雙份的(未示出),以便計(jì)算Q多項(xiàng)式的系數(shù)。得到的P(1)-P(11)和Q(1)-Q(11)新的最終值送給電路部分524。
      電路524用來完成i=1至i=10的十個(gè)音調(diào)子幀LPC系數(shù)αi的計(jì)算。它由緩存器525和526、加法器527、528和529、除法器或位移位器530組成。最終值P(i)和Q(i)存儲在緩存器525和526中。P(i)和P(i+1)數(shù)值在加法器527中相加,而相應(yīng)的Q(i)和Q(i+1)值在加法器528中相減,這里1≤i≤10。加法器527和528的輸出,分別為P(z)和Q(z),輸入加法器529,相加并輸出數(shù)值(P(z)+Q(z))。將各個(gè)位移動(dòng)一位,從而將加法器的輸出除以2。各移位后的數(shù)值(P(z)+Q(z))/2是LPC系數(shù)αi輸出。音調(diào)子幀LPC系數(shù)送給圖7的音調(diào)檢索子系統(tǒng)220。
      除了全速率之外,對選中速率所確定的各個(gè)碼書子幀,LSP頻率也經(jīng)過內(nèi)插。內(nèi)插的計(jì)算方式與音調(diào)子幀LSP內(nèi)插的相同。碼書子幀LSP內(nèi)插在碼書子幀LSP內(nèi)插子系統(tǒng)226中運(yùn)算,并提供給LSP至LPC轉(zhuǎn)換子系統(tǒng)228,轉(zhuǎn)換是以類似于LSP至LPC轉(zhuǎn)換子系統(tǒng)218的方式進(jìn)行的。
      在參見圖3時(shí)討論過,音調(diào)檢索是一種利用合成技術(shù)的分析,通過選擇使輸入語音和合成語音的誤差最小的參數(shù)來進(jìn)行編碼。在音調(diào)檢索中,語音是用等式(2)表示頻率特性的音調(diào)合成濾波器合成的。每隔20ms,語音幀被劃分成一定量的音調(diào)子幀,如前所述,它依賴于為該幀所選擇的數(shù)據(jù)速率。對于每一個(gè)音調(diào)子幀分別計(jì)算一次參數(shù)b和L,即音調(diào)增益和滯后。在這兒例示的執(zhí)行過程中,音調(diào)滯后L介于17和143之間的,在b=0的情況下,為了傳送原因L=16。
      語音編碼器用到了在等式(1)中所列形式的感知噪聲加權(quán)濾波器。如前所述,感知加權(quán)濾波器的目的是給處在低能量的頻率中的錯(cuò)誤加權(quán),從而減少錯(cuò)誤引起的噪聲的影響。感知加權(quán)濾波器是從以前建立的短期預(yù)測濾波器中導(dǎo)出的。在該加權(quán)濾波器以及后文將說明的共振峰合成濾波器中用到的LPC系數(shù)是為正在編碼的子幀適當(dāng)?shù)貎?nèi)插過的數(shù)值。
      在進(jìn)行合成一分析操作時(shí),在編碼器中用到語音譯碼器/合成器的備份。在語音編碼器中所用的合成濾波器的形式由等式(3)和(4)給出。等式(3)和(4)對應(yīng)于一個(gè)其后有感知加權(quán)濾波器的譯碼語音合成濾波器,因而稱其為加權(quán)合成濾波器。
      在假設(shè)當(dāng)前幀時(shí)碼書基值為零,即G=0情況下,進(jìn)行音調(diào)檢索。對于每個(gè)可能的音調(diào)滯后L進(jìn)行語音合成,并將它與原始語音比較。輸入語音和合成語音之間的誤差在計(jì)算其均方誤差(MSE)之前由感知加權(quán)濾波器加權(quán)。其目的是從所有可能的L和b值中選取使感知加權(quán)語音和感知加權(quán)合成語音之間的誤差最小的L和b數(shù)值。誤差的最小化可以用下列等式表示MSE=1LP&Sigma;n=0Lp-1(x(n)-x&prime;(n))2----(28)]]>其中,Lp是音調(diào)子幀中取樣的數(shù)量,在本實(shí)施例中,對全速率音調(diào)子幀為40。計(jì)算出使MSE最小的音調(diào)增益b。對所有允許的L數(shù)值重復(fù)這些運(yùn)算,并給音調(diào)濾波器選擇產(chǎn)生最小MSE的L和b。
      最佳音調(diào)滯后的計(jì)算涉及在n=-Lmax與n=(Lp-Lmin)-1之間所有時(shí)間下的共振峰余量(圖3中的P(n)),其中Lmax是最大音調(diào)滯后值,Lmin是最小音調(diào)滯后值,而Lp是選中速率下的音調(diào)子幀長度,n=0是音調(diào)子幀的起點(diǎn)。在本實(shí)施例中,Lmax=143,而Lmax=17。采用圖14中給出的編號方案,對于速率1/4,n=-143到n=142,而對于速率1/2,n=-143到n=62,對于速率1,n=-143到n=22。當(dāng)n<0時(shí),共振峰余量就是來自先前音調(diào)子幀的音調(diào)濾波器輸出,它保存在音調(diào)濾波器存儲器中,稱為閉環(huán)共振峰余量。在n>=0的時(shí)候,共振峰余量是共振峰分析濾波器的輸出,該濾波器具有濾波特性A(z),其輸入是當(dāng)前分析幀語音取樣。在n>=0時(shí),共振峰余量稱為開環(huán)共振峰余量,并且當(dāng)音調(diào)濾波器和碼書在該子幀中作了極好的預(yù)測時(shí),正好為P(n)。對于從相關(guān)的共振峰余量值計(jì)算出最佳音調(diào)滯后的說明將參照圖14-17給出。
      音調(diào)檢索是對143個(gè)重建的閉環(huán)共振峰余量取樣P(n)(n<0)以及Lp-Lmin非量化開環(huán)共振峰余量取樣Po(n)(n≥0)作出的。該檢索有效地從一種基本開環(huán)檢索,其中L是小的,并且所用到的大部分余量取樣為n>0,逐漸轉(zhuǎn)變成一種基本閉環(huán)檢索,其中L是大的,因而用到的所有余量取樣是n<0。例如,在全速率下利用圖14中的編號方案,其中,音調(diào)子幀由40個(gè)語音取樣組成,則語音檢索從采用號碼n=-17到n=22的共振峰余量取樣組開始進(jìn)行。在這一方案中,從n=-17到n=-1,取樣為閉環(huán)共振峰余量取樣,而從n=0到n=22,取樣為開環(huán)共振峰余量取樣。用于確定最佳音調(diào)滯后的下一組共振峰余量取樣是編號由n=-18到n=21的取樣。而從n=-18到n=-1,取樣是閉環(huán)共振峰余量取樣,從n=0到n=21,則是開環(huán)共振峰余量取樣。對所有取樣組進(jìn)行該過程,直到給最后的共振峰余量取樣組n=-143至n=-104計(jì)算出音調(diào)滯后為止。
      前面就等式(28)討論過,目的是在隨機(jī)碼書給出零基值(G=0)的情況下,對于所有可能的L和b值,使x(n)與x′(n)之間的誤差最小,這里x(n)是感知加權(quán)語音減去加權(quán)共振峰濾波器的零輸入特性曲線(ZIR),x′(n)是濾波器中無存儲時(shí)的感知加權(quán)合成語音。等式(28)可以重寫成關(guān)于b的等式MSE=1Lp&Sigma;n=0Lp-1(x(n)-by(n))2----(29)]]>其中y(n)=h(n)*P(n-L)0≤n≤Lp-1(30)其中,y(n)當(dāng)b=1時(shí)是帶有音調(diào)滯后L的加權(quán)合成語音,而h(n)是具有等式(3)的濾波特性的加權(quán)共振峰合成濾波器的沖激響應(yīng)。
      該最小化過程等同于使EL值最大化,其中EL=(Exy)2Eyy----(31)]]>其中Exy=&Sigma;n=0Lp-1x(n)y(n)----(32)]]>及Eyy=&Sigma;n=0Lp-1y(n)y(n)----(33)]]>對于給定的L,最佳值b為bL=ExyEyy----(34)]]>這一檢索對所有允許的L值重復(fù)進(jìn)行。最佳值b限制為正,因而,對于在檢索中導(dǎo)致任何負(fù)的Exy值的L值不作考慮。最后,選出使EL值最大的音調(diào)滯后L和音調(diào)增益b用于傳送。
      如前所述,x(n)實(shí)際是輸入語音與加權(quán)共振峰濾波器的ZIR之間的感知加權(quán)差,這是因?yàn)?,對于后面的等?35)-(38)中設(shè)定的遞歸卷積,已假設(shè)濾波器A(z)總是從濾波器存儲器中的零起始。然而,濾波器從濾波器存儲器中的零起始并非實(shí)際情況。在合成時(shí),濾波器處在從先前子幀保留下來的狀態(tài)下。在執(zhí)行過程中,在起始點(diǎn),從感知加權(quán)語音中除去初始狀態(tài)的影響。在這種方式下,對每一L值,只需計(jì)算穩(wěn)態(tài)濾波器A(z)的特性曲線直到p(n),所有存儲器最初為0,并且可以用到遞歸卷積。x(n)的值只需計(jì)算一次,但是,共振峰濾波器對音調(diào)濾波器的輸出的零狀態(tài)響應(yīng)y(n)要就每一滯后L進(jìn)行計(jì)算。各y(n)的計(jì)算涉及許多次不必就每一滯后都進(jìn)行的冗余乘法運(yùn)算。下文中說明的遞歸卷積方法用于將所需計(jì)算減至最少。
      關(guān)于遞歸卷積,數(shù)值yL(n)用y(n)值定義成yL(n)=h(n)*P(n-L)17≤L≤143 (35)或yL(n)=∑h(i)p(n-L-i)17≤L≤143 (36)從等式(32)和(33)可看出yL(o)=P(-L)h(o)(37)yL(n)=Y(jié)L-1(n-1)+p(-L)h(n) 1≤n≤Lp,17≤L≤143(38)
      這樣,一旦完成y17(n)的初始卷積,余下的卷積就可以遞歸地進(jìn)行,大大減少了所需的計(jì)算次數(shù)。對于速率1的上述特定例子,利用編號為n=-17到n=22的共振峰余量取樣組藉助等式(36)計(jì)算出數(shù)值y17(n)。
      參見圖15,編碼器包括圖5譯碼器的備份,即圖7的譯碼器子系統(tǒng)235,但不帶自適應(yīng)后置濾波器。在圖15中,音調(diào)合成濾波器550的輸入是碼書值cI(n)與碼書增益G的乘積。輸出的共振峰余量取樣p(n)輸入共振峰合成濾波器552,經(jīng)過濾波并作為重建語音取樣s′(n)輸出。在加法器554中,從對應(yīng)的輸入語音取樣s(n)中減去重建語音取樣s′(n)。取樣s′(n)與s(n)之差輸入感知加權(quán)濾波器556。關(guān)于音調(diào)合成濾波器550、共振峰合成濾波器552和感知加權(quán)濾波器556,每一濾波器含有一個(gè)濾波器狀態(tài)記憶,其中Mp是音調(diào)合成濾波器550中的記憶;Ma是共振峰合成濾波器552中的記憶,而Mw是感知加權(quán)濾波器556中的記憶。
      來自譯碼器子系統(tǒng)共振峰合成濾波器552的濾波器狀態(tài)Ma提供給圖7的音調(diào)檢索子系統(tǒng)220。在圖16中,濾波器狀態(tài)Ma用來計(jì)算濾波器560的零輸入響應(yīng)(ZIR),濾波器560計(jì)算共振峰合成濾波器552的ZIR。在加法器562中從輸入語音取樣s(n)中減去計(jì)算出的ZIR值,其結(jié)果由感知加權(quán)濾波器564加權(quán)。感知加權(quán)濾波器564的輸出xp(n)用在等式(28)-(34)中作為加權(quán)輸入語音,其中,x(n)=xp(n)。
      再參見圖14和15,圖14中示出的音調(diào)合成濾波器552輸出到自適應(yīng)碼書568,后者基本上是一個(gè)存儲器,用于存儲如上文討論的那樣計(jì)算出的閉環(huán)和開環(huán)共振峰余量取樣。閉環(huán)共振峰余量存在存儲器部分570中,而開環(huán)共振峰余量存在存儲器部分572中。這些取樣按照前文討論過的編號方案存儲。如上文中討論的那樣,按照各音調(diào)滯后L檢索中的使用情況來組織閉環(huán)共振峰余量。開環(huán)共振峰余量用共振峰分析濾波器574從各音調(diào)子幀的輸入語音取樣中算出,濾波器574在計(jì)算po(n)值時(shí)用到譯碼器子系統(tǒng)共振峰濾波器552的記憶Ma。用于各當(dāng)前音調(diào)子幀的Po(n)數(shù)值移位通過一系列延遲元件576,提供給自適應(yīng)碼書568的存儲器部分572。開環(huán)共振峰余量被存儲起來,所產(chǎn)生的第一個(gè)余量取樣編號為0,而最后一個(gè)編號為142。
      現(xiàn)參見圖16,共振峰濾波器的沖激響應(yīng)h(n)在濾波器566中算出,并輸出給移位寄存器580。在濾波器中為每一音調(diào)子幀計(jì)算這些數(shù)值,這在上文中談到共振峰濾波器h(n)的沖激響應(yīng)時(shí),即談到等式(29)-(30)和(35)-(38)時(shí)討論過。為了進(jìn)一步減少音調(diào)濾波器子系統(tǒng)的計(jì)算需求,共振峰濾波器h(n)的沖激響應(yīng)截?cái)酁?0個(gè)取樣。
      移位寄存器580及乘法器582、加法器584和移位寄存器586組合起來,如上文中討論的那樣,進(jìn)行來自移位寄存器580的數(shù)值h(n)與來自自適應(yīng)碼書568的數(shù)值c(m)之間的遞歸卷積。執(zhí)行這一卷積操作是為了在假定音調(diào)增益設(shè)為1的情況下尋找共振峰濾波器對來自音調(diào)濾波器存儲器的輸入的零狀態(tài)響應(yīng)(ZSR)。在卷積電路的操作中,對每一m值,n從Lp循環(huán)至1,而m從(Lp-17)-1循環(huán)至-143。在寄存器586中,當(dāng)n=1時(shí)數(shù)據(jù)不移動(dòng),而當(dāng)n=Lp時(shí)不鎖存數(shù)據(jù)。當(dāng)m≤-17時(shí),數(shù)據(jù)提供為卷積電路的輸出。
      繼卷積電路之后的是相關(guān)和比較電路,執(zhí)行檢索,以尋找最佳音調(diào)滯后L和音調(diào)增益b。相關(guān)電路亦稱為均方誤差(MSE)電路,計(jì)算ZSR與共振峰濾波器的ZIR和輸入語音即x(n)之間的感知加權(quán)差的自相關(guān)性和互相關(guān)性。利用這些數(shù)值,相關(guān)電路就每一音調(diào)滯后數(shù)值計(jì)算出最佳音調(diào)增益b的數(shù)值。相關(guān)電路由移位寄存器588、乘法器590和592、加法器594和596、寄存器598和600、除法器602組成。在相關(guān)電路中,計(jì)算是這樣進(jìn)行的,即n從Lp循環(huán)至1,而m從(Lp-17)-1循環(huán)至-143。
      相關(guān)電路之后是比較電路,它執(zhí)行數(shù)據(jù)比較和存儲,以確定音調(diào)滯后L和增益b的最佳值。比較電路由乘法器604、比較器606、寄存器608、610和612、量化器614組成。比較電路為每一音調(diào)子幀輸出使合成語音和輸入語音之間的誤差最小的L和b值。b的值由量化器614量化到8級,用一3位的數(shù)值表示,當(dāng)L=16時(shí)導(dǎo)出一個(gè)附加級,b=0級。這些L和b值提供給碼書檢索子系統(tǒng)230和數(shù)據(jù)緩存器222。它們通過數(shù)據(jù)壓縮子系統(tǒng)238或數(shù)據(jù)緩存器222提供給譯碼器234,用于音調(diào)檢索。
      類似于音調(diào)檢索,碼書檢索是一種由合成編碼系統(tǒng)進(jìn)行的分析,在系統(tǒng)中,編碼是通過選取使輸入語音與用這些參數(shù)合成的語音之間的誤差最小的參數(shù)完成的。對于速率1/8,音調(diào)增益b設(shè)為零。
      如前文中討論的那樣,每20ms分成多個(gè)碼書子幀,如前所述,它們依賴于為該幀所選取的數(shù)據(jù)速率。對每一碼書子幀分別計(jì)算一次參數(shù)G和I,即碼書增益和索引。在計(jì)算這些參數(shù)時(shí),除了全速率之外,在碼書子幀LSP內(nèi)插子系統(tǒng)226中以類似于對音調(diào)子幀LSP內(nèi)插子系統(tǒng)216說明過的方式對該子幀進(jìn)行LSP頻率內(nèi)插。對于每個(gè)碼書子幀,碼書子幀內(nèi)插LSP頻率也由LSP至LPC轉(zhuǎn)換子系統(tǒng)228轉(zhuǎn)換成LPC系數(shù)。碼書子幀計(jì)數(shù)器232用于跟蹤計(jì)算碼書參數(shù)的碼書子幀,計(jì)數(shù)器輸出提供給碼書子幀LSP內(nèi)插子系統(tǒng)226,用于碼書子幀LSP內(nèi)插。碼書子幀計(jì)數(shù)器232也提供一個(gè)輸出給音調(diào)子幀計(jì)數(shù)器224,顯示在選中速率下的碼書子幀的結(jié)束。
      激勵(lì)碼書由2M個(gè)碼矢量組成,它們是依據(jù)一種單元變量白色高斯隨機(jī)序列而建立的。M=7時(shí),碼書中有128個(gè)入口。碼書以某種遞歸方式組織,以使各個(gè)碼矢量與相鄰的碼矢量相差一個(gè)取樣,即一個(gè)碼矢量中的取樣移動(dòng)一位,在一端移入一個(gè)新的取樣,而在另一端拋掉一個(gè)取樣。因而,一個(gè)遞歸碼書可以作為一個(gè)長2M+(Lc-1)的線性陣列存儲,其中,Lc是碼書子幀長度。然而,為了簡化執(zhí)行過程,和保存存儲器空間,采用2M個(gè)取樣長的循環(huán)碼書(128個(gè)取樣)。
      為了減少計(jì)算量,碼書中的高斯數(shù)值的中心部分值被消除。這些數(shù)值最初選自方差為1的白色高斯過程。然后,將小于1.2的數(shù)值設(shè)為零。這有效地將大約75%的數(shù)值設(shè)置成零,產(chǎn)生一個(gè)脈沖碼書。碼書的中心削除將在碼書檢索中執(zhí)行遞歸卷積所需的計(jì)算量降低到 ,因?yàn)閷α銦o須進(jìn)行計(jì)算。用在當(dāng)前執(zhí)行過程中的碼書在下面的表VII中給出。
      表VII0×0000 0×0000 0×0000 0×0000 0×2afe 0×0000 0×0000 0×00000×41da 0×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×00000×0000 0×0000 0×0000 0×0000 0×0000 0×3bb3 0×0000 0×363e0×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×417d 0×00000×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×00000×0000 0×0000 0×0000 0×0000 0×0000 0×9dfe 0×0000 0×00000×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×00000×0000 0×c58a 0×0000 0×0000 0×0000 0×0000 0×0000 0×00000×0000 0×c8db 0×d365 0×0000 0×0000 0×d6a8 0×0000 0×00000×0000 0×3e53 0×0000 0×0000 0×d5ed 0×0000 0×0000 0×00000×d08b 0×0000 0×0000 0×0000 0×0000 0×3d14 0×396a 0×00000×0000 0×0000 0×0000 0×0000 0×0000 0×4ee7 0×d7ca 0×00000×0000 0×438c 0×0000 0×0000 0×ad49 0×30b1 0×0000 0×00000×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×00000×0000 0×0000 0×3fcd 0×0000 0×0000 0×d187 0×2e16 0×d09b0×cd8d 0×0000 0×0000 0×0000 0×0000 0×0000 0×0000 0×32ff又語音編碼器采用包括公式(3)給出形式的加權(quán)合成濾波器在內(nèi)的公式(1)給出形式的感知噪聲加權(quán)濾波器。對于各個(gè)碼書指數(shù)I,合成語音并與原來的語音比較。在計(jì)算出其MSE前誤差由感知加權(quán)濾波器加權(quán)。
      如前所述,目的是使X(n)和X′(n)之間的誤差在I和G的所有可能值上為極小。該誤差的極小化可以由下面公式表示MSE=1Lc&Sigma;n=0Lc-1(X(n)-X&prime;(n))2----(39)]]>這里L(fēng)c是碼書子幀中的樣本數(shù)。這里對于G公式(38)可改寫MSE=1Lc&Sigma;n=0Lc-1(X(n)-GY(n))2----(40)]]>這里Y是通過用第1碼矢量并假定G=1卷積共振峰主頻成分濾波器的沖激響應(yīng)而得到的。使該MSE極小轉(zhuǎn)而等效于使大EI=(Exy)2Eyy----(41)]]>為極大,這里Exy=&Sigma;n=0Lc-1X(n)Y(n)----(42)]]>和Eyy=&Sigma;n=0Lc-1y(n)Y(n)----(43)]]>根據(jù)下面的公式得到對于所給的I最優(yōu)的G,GI=ExyEyy]]>對于I的所有允許值重復(fù)這檢索。與音調(diào)檢索相反,該最優(yōu)增益G允許為正值或負(fù)值。最后使EI極大的指數(shù)I,和碼書增益G被選擇用于傳送。
      還應(yīng)注意加權(quán)音調(diào)和共振峰主頻成分的濾波器的ZIR跟輸入語音之間的感知加權(quán)差值X(n)僅需計(jì)算一次。而對于各個(gè)碼矢量的音調(diào)和共振峰主頻成分濾波器的零狀態(tài)響應(yīng)需對于各個(gè)指數(shù)I來計(jì)算。由于采用循環(huán)碼書,用于音調(diào)檢索的所述遞歸卷積方法可用來使所需的計(jì)算量為最小。
      再參見圖15,編碼器包括與圖5中的譯碼器一樣的即圖7的譯碼器子系統(tǒng)在此計(jì)算出濾波器狀態(tài)。其中Mp是在音調(diào)合成濾波器550中的記憶,Ma是在共振峰合成濾波器552中的記憶;Mw是在感知加權(quán)濾波器中的記憶。
      分別來自譯碼器子系統(tǒng)的音調(diào)合成和共振峰濾波器的濾波器狀態(tài)Mp和Ma送給圖7的碼書檢索子系統(tǒng)230。在圖17中濾波器狀態(tài)Mp和Ma送給零沖激響應(yīng)(ZIR)濾波器620以計(jì)算音調(diào)和共振峰合成濾波器550和552的ZIR。在加法器622中從所輸入的輸入語音樣值S(n)減去計(jì)算出的音調(diào)和共振峰濾波器的ZIR,該結(jié)果由感知加權(quán)濾波器加權(quán)。感知加權(quán)濾波器的輸出Xc(n)用作上面的MSE公式(39)-(44)中的加權(quán)了的輸入語音則X(n)=Xc(n)。
      圖17,在濾波器626中計(jì)算共振峰濾波器的沖激響應(yīng)h(n)并輸出至移位寄存器628。對于各個(gè)碼書子幀計(jì)算共振峰濾波器的沖激響應(yīng)h(n)。為進(jìn)一步減少所需的計(jì)算量,該共振峰濾波器的沖激響應(yīng)h(n)截取20個(gè)樣本。
      移位寄存器628隨同乘法器630、加法器632和移位寄存器634一起進(jìn)行來自移位寄存器628的值h(n)與來自于如上所述含有碼書矢量的碼書636的值c(m)間的遞歸卷積。假定碼書增量為1,進(jìn)行這卷積運(yùn)算以對各個(gè)碼矢量尋找共振峰濾波器的零狀態(tài)響應(yīng)。該卷積電路的運(yùn)行,對于每個(gè)m,n從Lc到1循環(huán),而m則從1到256循環(huán)。在寄存器586中當(dāng)n=1數(shù)據(jù)不送出而當(dāng)n=Lc數(shù)據(jù)不鎖存。當(dāng)m≤1數(shù)據(jù)才作為該卷積電路的輸出給出。應(yīng)該注意的是在開始緊接在卷積電路后的相關(guān)與比較電路前必須起動(dòng)卷積電路以通過循環(huán)m子幀大小次數(shù)進(jìn)行遞歸卷積運(yùn)算。
      該相關(guān)與比較電路進(jìn)行實(shí)際的碼書檢索產(chǎn)生碼書指數(shù)I值和碼書增益G值。該相關(guān)電路除了被作為均方差(MSE)電路借用以外,還由音調(diào)與共振峰濾波器的ZIR跟輸入語音X′(n)之間的感知加權(quán)差值來計(jì)算ZSR的自相關(guān)和互相關(guān)。換句話說該相關(guān)電路對碼書指數(shù)I的各個(gè)值計(jì)算碼書增益G。該相關(guān)電路包括移位寄存器638,乘法器640和642,加法器644和646,寄存器648和650,和除法器652。在相關(guān)電路中計(jì)算是n從Lc到1循環(huán)而m從1到256循環(huán)的。
      接在相關(guān)電路后的比較電路為確定碼書指數(shù)I和增益G的最優(yōu)值進(jìn)行數(shù)據(jù)的比較和存儲。該比較電路包括乘法器654,比較器656,寄存器658、660和662,和量化器664。該比較電路為各個(gè)碼書子幀提供使合成語音與輸入語音之間的誤差為極小的I和G的值。該碼書增益G在量化器614中量化,DPCM在量化期間以類似于參考圖12所述的偏置消除的LSP頻率量化和編碼對該值編碼。這些I和G值然后送給數(shù)據(jù)緩沖器222。
      在量化和該碼書的DPCM編碼中增益G是按照下面的公式計(jì)算的。
      量化后的Gi=20logGi-0.45(20logGi-1+20logGi-2)(45)這里20logGi-1和20log Gi-2分別是對前一幀(i-1)和再前一幀(i-2)計(jì)算出的值。
      該LSP、I、G、L和b值隨同速率送到數(shù)據(jù)壓縮子系統(tǒng)236以安排這數(shù)據(jù)用于傳輸。在一項(xiàng)實(shí)施中該LSP、I、G、L和b值隨同速率可經(jīng)數(shù)據(jù)壓縮子系統(tǒng)236送給譯碼器234。在另一項(xiàng)實(shí)施中這些數(shù)據(jù)可經(jīng)數(shù)據(jù)緩沖器222送給譯碼器234以用于音調(diào)檢索。而在較佳實(shí)施例中在數(shù)據(jù)壓縮子系統(tǒng)236中所采用的對碼書符號位的保護(hù)會(huì)影響碼書指數(shù)。所以I和G數(shù)據(jù)直接從數(shù)據(jù)緩沖器222送出時(shí)必須考慮到該保護(hù)。
      在數(shù)據(jù)壓縮子系統(tǒng)236中數(shù)據(jù)可根據(jù)各種傳輸格式壓縮。圖18示出數(shù)據(jù)壓縮子系統(tǒng)236的功能單元的說明性實(shí)施例。數(shù)據(jù)壓縮子系統(tǒng)236包括偽隨機(jī)數(shù)發(fā)生器(PN)670,循環(huán)冗余校驗(yàn)(CRC),計(jì)算單元672,數(shù)據(jù)保護(hù)邏輯674和數(shù)據(jù)組合器676。PN發(fā)生器670接收速率并對八分之一速率產(chǎn)生一4位的隨機(jī)數(shù)送給數(shù)據(jù)組合器676。CRC單元672接收碼書增益和LPS值以及速率,并對全速率產(chǎn)生一11位內(nèi)部CRC碼送到數(shù)據(jù)組合器676。
      數(shù)據(jù)組合器676接收該隨機(jī)數(shù),CRC碼,以及來自數(shù)據(jù)緩沖器222(圖7b)的速率和LSP、I、G、L和b值將輸出送到傳輸信道數(shù)據(jù)處理子系統(tǒng)234。在該項(xiàng)實(shí)施中數(shù)據(jù)以最小量直接從數(shù)據(jù)緩沖器222送到譯碼器234則PN發(fā)生器4位數(shù)則從PN發(fā)生器670經(jīng)數(shù)據(jù)組合器676送到譯碼器234,在全速率時(shí)包括CRC位在內(nèi)隨同幀數(shù)據(jù)作為從數(shù)據(jù)組合器674的輸出,而在八分之一速率該碼書指數(shù)丟下并由隨機(jī)4位數(shù)取代。
      在該例示實(shí)施例中最好向碼書增益符號位提供保護(hù)。對該位的保護(hù)會(huì)使聲碼器的譯碼器對在該位的單個(gè)位的誤碼不敏感。如果因一個(gè)未檢出的誤碼而使該符號位改變,該碼書指數(shù)就會(huì)指向與最優(yōu)值不相關(guān)的矢量。在誤碼情況下沒有保護(hù),就會(huì)選取該最優(yōu)矢量的相反量,實(shí)質(zhì)上為所要采用的可能矢量的最差矢量。這里所采用的保護(hù)方案確保增益符號位中的單個(gè)位誤碼不會(huì)使該最優(yōu)矢量的相反量在該誤碼情況下被選用。數(shù)據(jù)保護(hù)邏輯674接收該碼書指數(shù)和增益并檢查該增益值的符號位。若確定出增益值符號位是相反的對相關(guān)聯(lián)的碼書指數(shù)加該值89,取模128 。該碼書指數(shù)不論是否修改都從數(shù)據(jù)保護(hù)邏輯674輸出到數(shù)據(jù)組合器676。
      在該例示實(shí)施例中最好在全速時(shí)例如由一內(nèi)部CRC(循環(huán)冗余校驗(yàn))保護(hù)所壓縮的話音包數(shù)據(jù)在感覺上最敏感的位。11特殊位被用來進(jìn)行可校正所保護(hù)的任何單個(gè)誤碼的這種誤碼校驗(yàn)功能。所保護(hù)的塊包括10個(gè)LSP頻率的最重要位和8個(gè)碼書增益值的最重要位。若在該塊中出現(xiàn)無法校正的誤碼,該包則被廢棄并標(biāo)明下面述及的消除記錄。否則該音調(diào)增益設(shè)為0而余下的參數(shù)仍用收到的值。在例示實(shí)施例中讓一生成多項(xiàng)式g(X)=1+X3+X5+X6+X8+X9+X10產(chǎn)生一(31,21)循環(huán)碼來選出循環(huán)碼。但應(yīng)注意的是也可用其他生成多項(xiàng)式。附加一總的奇偶校驗(yàn)位使它為-(32,21)碼。既然僅有18個(gè)信息位,則該碼字中的前3位置零并且未被傳輸。該項(xiàng)技術(shù)提供附加的保護(hù),這樣若校正子表明在這些位置有誤碼,這就意味著有無法校正的誤碼。系統(tǒng)地對循環(huán)碼的編碼涉及當(dāng)X10μ(X)模g(X)奇偶校驗(yàn)位的計(jì)算則μ(X)是信息多項(xiàng)式。
      在譯碼結(jié)束時(shí),該校正子是用g(X)除所接收到的矢量計(jì)算得出的余數(shù)。若該校正子未顯示有誤碼,則不論總的奇偶校驗(yàn)位的狀態(tài)均接收該包。若該校正子顯示有單個(gè)誤碼,若未對總的奇偶校驗(yàn)位的狀態(tài)檢查則該誤碼被校正若該校正子顯示有多于一個(gè)的誤碼,則該包被廢棄。關(guān)于這些誤碼防護(hù)方案的更詳細(xì)內(nèi)容可在林和科斯特羅的“誤碼控制編碼基礎(chǔ)及應(yīng)用”4.5節(jié)中校正子計(jì)算的詳細(xì)內(nèi)容中找到。
      在CDMA蜂窩式電話系統(tǒng)實(shí)施中為在20秒數(shù)據(jù)傳送幀內(nèi)傳送將數(shù)據(jù)從數(shù)據(jù)組合器674送到傳輸信道數(shù)據(jù)處理子系統(tǒng)238用于數(shù)據(jù)壓縮。在其中聲碼器設(shè)定為全速率的傳輸幀中,由于有效位速率為9.6Kbps故傳輸192位。本例中的傳輸幀包括1位用以指示混合幀形式(0=僅為話音,1=話音和數(shù)據(jù)/信號碼)的混合方式位;160位聲碼器數(shù)據(jù)隨同11位內(nèi)部CRC位;12位外部或幀CRC位;和8位尾部位或嵌入位。在半速率時(shí),由于4.8Kbps的有效位速率故傳送80位聲碼器數(shù)據(jù)位以及8位幀CRC位和8位尾部位。在四分之一速率時(shí),由于2.4Kbps的有效位速率故傳送40位聲碼器數(shù)據(jù)位以及8位尾部位。最后在八分之一速率時(shí),由于1.2Kbps的有效位速率故傳送16位聲碼器數(shù)據(jù)位以及8位尾部位。
      要應(yīng)用本發(fā)明聲碼器的CDMA系統(tǒng)中所采用的調(diào)制的更詳細(xì)細(xì)節(jié)在1990年6月25日申請的申請?zhí)枮?7/543,496,轉(zhuǎn)讓給本發(fā)明的受讓人的題為“用于產(chǎn)生CDMA蜂窩式電話系統(tǒng)中信號波形的系統(tǒng)和方法”的共同待批專利申請中揭示。在這種系統(tǒng)中在不是全速率的速率時(shí)采用了數(shù)據(jù)位組織成位組而位組偽隨機(jī)地置于20ms的數(shù)據(jù)傳送幀中的方案。應(yīng)該理解除了那些用于這里對聲碼器和CDMA系統(tǒng)實(shí)施作說明的還可現(xiàn)成地采用其他幀速率和位表示,這樣別的實(shí)施例可用于聲碼器和其他系統(tǒng)的應(yīng)用。
      在CDMA系統(tǒng)與也適用的其他子系統(tǒng)中,以一幀接一幀為基礎(chǔ)的處理子系統(tǒng)238可中斷聲碼器數(shù)據(jù)的傳輸以傳輸諸如信號碼數(shù)據(jù)或其他非語音數(shù)據(jù)之類的其他數(shù)據(jù)。傳輸情況的這種特殊形式是指“間隔和突發(fā)”。處理器子系統(tǒng)238必須用在該幀所要傳輸?shù)臄?shù)據(jù)取代該聲碼器數(shù)據(jù)。
      會(huì)出現(xiàn)另一種情況人們希望在同一數(shù)據(jù)傳輸幀期間傳輸聲碼器數(shù)據(jù)和其他數(shù)據(jù)。傳輸情況的這種特殊形式是指“遲緩和突發(fā)”。在“遲緩和突發(fā)”傳輸中,該聲碼器沒有速率約束指令以設(shè)定聲碼器最終速率在所需要的速率上,例如半速率。該半速率編碼的聲碼器數(shù)據(jù)送給處理器子系統(tǒng)238而為該數(shù)據(jù)傳輸幀插入隨同聲碼數(shù)據(jù)的附加數(shù)據(jù)。
      提供給全雙工電話線路的另一個(gè)附加功能是速率聯(lián)鎖。若線路的一個(gè)方向以最高的傳輸速率傳輸,那么上線路的另一個(gè)方向則被迫以最低的速率傳輸。甚至以最低速率,對于主動(dòng)談話者有足夠的理解以意識到他正被打斷和要停止談話是可行的,藉此允許該線路別的方向估計(jì)主動(dòng)談話者一方。而且若主動(dòng)談話者在企圖中斷時(shí)繼續(xù)談話,因?yàn)樗约旱恼Z音干擾了感覺質(zhì)量的能力也可能會(huì)未感覺出質(zhì)量的降級。該聲碼器還能通過采用速率限制指令設(shè)定成以低于通常速率的速率對話音進(jìn)行聲音編碼。
      應(yīng)該理解當(dāng)在CDMA系統(tǒng)中需要額外的容量時(shí)該速率限制指令可設(shè)定該聲碼器最大速率低于全速率。在其中公共頻譜用于傳輸?shù)腃DMA系統(tǒng)中某用戶信號會(huì)對該系統(tǒng)中的別的用戶有干擾。系統(tǒng)用戶容量因而由系統(tǒng)用戶引起的總干擾所限制。隨著干擾水平的上升,通常是由于在該系統(tǒng)中的用戶的增長,由于干擾的增加用戶體驗(yàn)到質(zhì)量的降級。
      各個(gè)用戶對CDMA系統(tǒng)的干擾的貢獻(xiàn)是用戶傳輸數(shù)據(jù)速率的函數(shù)。通過設(shè)定聲碼器以低于通常的速率對語音編碼,該編碼數(shù)據(jù)隨后以相應(yīng)降低的數(shù)據(jù)速率傳輸,以降低由該用戶所引起的干擾的水平。所以通過以較低速率對語音進(jìn)行聲音編碼系統(tǒng)容量會(huì)得到實(shí)質(zhì)性的提高。隨著系統(tǒng)的需求上升,可由系統(tǒng)管理機(jī)或蜂窩基地站指令用戶聲碼器降低編碼速率。本發(fā)明的聲碼器具有一種良好的質(zhì)量,語音以全速和半速編碼時(shí)雖然兩者可感覺有些差異但量很小。因而語音以例如半速率的較低速率進(jìn)行聲音編碼對系統(tǒng)用戶間的通信質(zhì)量的后果不及因系統(tǒng)用戶數(shù)量的上升所引起的干擾水平的上升所帶來的后果嚴(yán)重。
      因而可采用各種方案為低于通常的聲音編碼的速率來設(shè)定各自的聲音編碼器速率界限。例如可指令在蜂窩中的所有用戶以半速率對語音編碼。這種辦法實(shí)質(zhì)上以很小的用戶間通信質(zhì)量的損失降低系統(tǒng)的干擾,而為額外客戶在容量上提供實(shí)質(zhì)的增長。直到由額外用戶引起的系統(tǒng)的總干擾量上升到降級水平故而不會(huì)對用戶間的通信質(zhì)量形成沖擊。
      如前所述,為實(shí)現(xiàn)對語音樣本幀編碼的分析一合成技術(shù)該編碼器包括一個(gè)與譯碼器相同的復(fù)本如圖7所示,譯碼器234接收經(jīng)過數(shù)據(jù)壓縮子系統(tǒng)238或數(shù)據(jù)緩沖器222的L,b,I和G值以重建合成的語音來與輸入語音比較。譯碼器的輸出如前所述為Mp,Ma和Mw值。用于編碼器和在傳輸信道另一端重建合成語音的譯碼器234的更詳細(xì)細(xì)節(jié)可參見圖19-24說明。
      圖19是本發(fā)明譯碼器例示性實(shí)施例的流程圖。在編碼器中和在接收機(jī)中所實(shí)施的譯碼器具有共同的結(jié)構(gòu),因而這些實(shí)施例在一起說明。對圖19的說明主要針對在傳輸信道一端的譯碼器,因?yàn)樵谀抢锝邮盏降臄?shù)據(jù)必須在譯碼器中預(yù)處理正象在編碼器的譯碼器中直接從數(shù)據(jù)壓縮子系統(tǒng)238或數(shù)據(jù)緩沖器222收到合適數(shù)據(jù)(速率,I,G,L和b)。不過對于實(shí)施編碼器和譯碼器來說譯碼器的基本功能是相同的。
      如前面參見圖5所討論的那樣,對各個(gè)碼書子幀由該碼書指數(shù)I所規(guī)定的碼書矢量是從存儲的碼書中檢索出的。該矢量以該碼書增益G隨后對每音調(diào)子幀由音調(diào)濾波器濾波產(chǎn)生共振峰余量。該共振峰余量由共振峰濾波器濾波隨后通過一自適應(yīng)共振峰后置濾波器和一清晰度后置濾波器,以及自動(dòng)增益控制(AGC)以產(chǎn)生輸出語音信號。
      盡管碼書和音調(diào)子幀的長度是變化的,為方便實(shí)施在40樣本塊中進(jìn)行譯碼。所收到的壓縮數(shù)據(jù)首先被分解成碼書增益,碼書指數(shù),音調(diào)增益,音調(diào)滯后和LSP頻率。該LSP頻率如參見圖22所說明的那樣必須經(jīng)他們各自的逆向量化器和DPCM譯碼器處理。類似地碼書增益值除了沒有偏置必須以與LSP頻率相似的方式處理。音調(diào)增益值也被逆向量化。這些參數(shù)隨后送給各個(gè)譯碼子幀。在各個(gè)譯碼子幀中,2套碼書參數(shù)(G和I),1套音調(diào)參數(shù)(b和I)和一套LPC系數(shù)需產(chǎn)生40個(gè)輸出樣本。圖20和21對于各種速度和其他幀狀況示出例示性子幀譯碼參數(shù)。
      對于全速率幀,有8套收到的碼書參數(shù)和4套收到的音調(diào)參數(shù)。LSP頻率被內(nèi)插4次產(chǎn)生4套LSP頻率。所收到的參數(shù)和相應(yīng)的子幀信息列于圖20a中。
      對于半速率幀,4套收到碼書參數(shù)的各套重復(fù)一次,2套收到的音調(diào)參數(shù)的各套重復(fù)一次。LSP頻率被內(nèi)插3次產(chǎn)生4套LSP頻率。所收到的參數(shù)和相應(yīng)的子幀信息列于圖20b中。
      對于四分之一速率幀,2套收到的碼書參數(shù)的各套重復(fù)4次,該套音調(diào)參數(shù)也被重復(fù)4次。LSP頻率被內(nèi)插一次產(chǎn)生2套LSP頻率。所收到的參數(shù)和相應(yīng)的子幀信息列于圖20c中。
      對于八分之一速率幀,該套收到的碼書參數(shù)用于整個(gè)幀。音調(diào)參數(shù)對于八分之一速率未給出且該音調(diào)增益簡單地設(shè)為零。該LSP頻率內(nèi)插1次產(chǎn)生1套LSP頻率。所收到的參數(shù)和相應(yīng)的子幀信息列于圖20d中。
      有時(shí),話音包可按序空出讓CDMA單元或移動(dòng)臺傳輸信號碼信息。當(dāng)聲碼器收到一空白幀,它繼續(xù)對前一幀參數(shù)作較小的改動(dòng)。碼書增益設(shè)為零。前一幀的音調(diào)滯后和增益用于當(dāng)前幀的音調(diào)滯后和增益,除非該增益被限定成某值或更小。就像沒有內(nèi)插而用前一幀的LSP頻率。注意編碼端和譯碼端一直被同步且聲碼器能很快從一空白幀復(fù)原。所收到的參數(shù)和相應(yīng)的子幀信息列于圖21a。
      在因信道差錯(cuò)而丟失一幀的情況下,該聲碼器試圖通過保持前一幀的能量部分且平滑地過渡到背景噪聲來屏蔽該差錯(cuò)。在該例中音調(diào)增益設(shè)成零;通過用前一幀的碼書指數(shù)加89選取一隨機(jī)碼書;碼書增益則是前一子幀的碼書增益的0.7倍。應(yīng)該注意的是數(shù)89沒有什么特別的東西,這只是選取偽隨機(jī)碼書矢量的通常方法。該前一幀的LSP頻率被迫向他們偏置值衰落為ωi=0.9(前面的ωi-ωi的偏置值)+ωi的偏置值(47)該LSP頻率偏置值在表5中示出。所收到的數(shù)據(jù)和相應(yīng)的子幀信息列于圖21b中。
      若在接收機(jī)中未能確定出速率,該包被廢棄并標(biāo)上消除記錄。然而若接收機(jī)確定有很大可能該幀是以全速率傳輸?shù)模M管帶有差錯(cuò)仍進(jìn)行下面的過程。如前所述在全速率時(shí)該壓縮的話音包數(shù)據(jù)的感覺上最敏感的位由內(nèi)部CRC保護(hù)。在譯碼端正如接收到的矢量除以來自公式(46)的g(X)而得出余式那樣計(jì)算出校正子。若校正子顯示無誤碼,則不論總的奇偶校驗(yàn)位而接收該包。若該校正子顯示單個(gè)誤碼,若總的奇偶校驗(yàn)位不檢查該誤碼被校正。若該校正子顯示多于一個(gè)誤碼。該包則被廢棄。若在該塊中出現(xiàn)元法校正的誤碼,該包被廢棄且標(biāo)明消除記錄。否則該音調(diào)增益被置零而其余的參數(shù)如圖21c所示隨著校碼被接收而被采用。
      本實(shí)施例中所采用的后置濾波器首先在J.H.陳等人的“用自適應(yīng)后置濾波以4800BPS實(shí)時(shí)向量APC語言編碼”(Proc.ICASSP,1987)中揭示。既然語音共振峰主頻成分比起頻譜凹谷在感覺上更為重要,該后置濾波器促使該共振峰主頻成分稍微提升以改善該編碼語音的感性質(zhì)量。通過相對于原來的徑向地對共振峰主頻成分的極點(diǎn)定標(biāo)來進(jìn)行。然而全極點(diǎn)后置濾波器通常引入頻譜傾斜而導(dǎo)致濾波后的語音消音。通過增加具有與極點(diǎn)相同相位角而較小直徑的零點(diǎn)來減少該全極點(diǎn)后置濾波器的頻率的傾斜,從而后置濾波器具有形式H(z)=A(z/&rho;)A(z/&sigma;)---0&lt;&rho;&lt;&sigma;&lt;1----(48)]]>這里A(z)是共振峰主頻成分預(yù)測濾波器,且ρ和σ值為后置濾波器定標(biāo)因數(shù)這里ρ設(shè)為0.5,σ設(shè)為0.8。
      加上一自適應(yīng)清晰度濾波器就能進(jìn)一步補(bǔ)償由該共振峰主頻成分后置濾波器引進(jìn)的頻譜傾斜。該清晰度濾波器具有形式B(z)=1-KZ-11-KZ-1----(49)]]>這里K值(分接濾波器的系數(shù))由與A(z)的頻譜傾斜中的變化相近似的LSP頻率平均值確定。
      為避免因后置濾波器引起的任何大的增益漂移,采用AGC環(huán)路對語音輸出定標(biāo)使它具有與未后置濾波的語音近乎相同的能量。通過用40個(gè)濾波器輸出樣本的平方和除40個(gè)濾波器輸入樣本的平方和來實(shí)現(xiàn)增益控制以獲得反向?yàn)V波器增益。隨后使該增益因數(shù)的平方根平滑平滑后的p=0.2當(dāng)前β+0.98前一個(gè)然后濾波器輸出乘以該平滑后反向增益以產(chǎn)生輸出語音。
      在圖19中來自信道的數(shù)據(jù)以及隨同數(shù)據(jù)傳輸或由其他裝置得到的速率被送給數(shù)據(jù)壓縮子系統(tǒng)700。在一個(gè)CDMA系統(tǒng)的實(shí)施例中當(dāng)以各種不同速率進(jìn)行譯碼時(shí)就可從所收到的數(shù)據(jù)的誤碼率來得到速度判定。在數(shù)據(jù)分解子系統(tǒng)700中,在全速率時(shí)對差錯(cuò)進(jìn)行CRC檢碼因而該檢碼送到子幀數(shù)據(jù)分解子系統(tǒng)702。子系統(tǒng)700將諸如空白幀,消除幀或具有可用數(shù)據(jù)的差錯(cuò)幀之類異常幀狀況的標(biāo)志送到子系統(tǒng)702。子系統(tǒng)700將對于該幀的速率以及I,G,L,和b參數(shù)送到子系統(tǒng)702。在提供碼書指數(shù)I和增益G值時(shí),該增益值的符號位在子系統(tǒng)702中被檢碼。若符號位相反,從關(guān)聯(lián)的碼書指數(shù)減去值89,取模(mod)128。而且在子系統(tǒng)中該碼書增益被反向量化且DPCM編碼,同時(shí)音調(diào)增益被反向量化。
      子系統(tǒng)700還將速率與LSP頻率送到LSP反向量化/內(nèi)插子系統(tǒng)704。子系統(tǒng)700還將空白幀、消除幀或有可用數(shù)據(jù)的差錯(cuò)幀的標(biāo)志送到子系統(tǒng)704。編碼子幀計(jì)數(shù)器706將子幀計(jì)數(shù)值i和j的標(biāo)志送到子系統(tǒng)702和704。
      在子系統(tǒng)704中該LSP頻率被反向量化和內(nèi)插。圖22示出子系統(tǒng)704的反向量化部分的實(shí)施例,而該內(nèi)插部分與參見圖12說明的那種在實(shí)質(zhì)上是相同的。在圖22中,子系統(tǒng)704的反向量化部分包括反向量化器750,它與圖12中的反向量化器468結(jié)構(gòu)相同且以相似方式工作。反向量化器750的輸出作為輸入送到加法器752。加法器752的其他輸入則由乘法器754的輸出提供。加法器752的輸出送給寄存器756存儲并輸出在乘法器754與常數(shù)0.9相乘。加法器752的輸出回被送到加法器758將偏置值加回給LSP頻率。由邏輯760確保LSP頻率的序列使LSP頻率具有最小間隔。除非在傳輸中出現(xiàn)差錯(cuò)一般不會(huì)出現(xiàn)強(qiáng)迫分隔的需要。該LSP頻率如參見圖13和參見圖20a-20d和21a-21c說明的那樣是內(nèi)插值。
      再參見圖19,存儲器706與子系統(tǒng)704連接存儲前一幀LSPs,ωi,f-1,還可用來存儲偏置值bwi。這些前一幀值對于所有速率都用于內(nèi)插。在空白幀,消除幀或有可用數(shù)據(jù)的差錯(cuò)幀的情況下,按照圖21a-21c中的表應(yīng)用前一幀的LSPs,ωi,ωi,f-1。響應(yīng)來自子系統(tǒng)700的空白幀標(biāo)志,子系統(tǒng)704檢取出存于存儲器708的前一幀LSP頻率用于當(dāng)前幀。響應(yīng)消除幀標(biāo)志,子系統(tǒng)704隨同偏置值再從存儲器708檢取出前一幀LSP頻率以如上所述計(jì)算當(dāng)前幀的LSP頻率。在進(jìn)行該計(jì)算時(shí),在一加法器中從前一幀LSP頻率減去所存儲的偏置值,該結(jié)果在一乘法器中乘以常數(shù)值0.9,其結(jié)果在一加法器中加到所存儲的偏置值。響應(yīng)具有可用數(shù)據(jù)的差錯(cuò)幀標(biāo)志,對于全速率若CRC通過該LSP頻率就被內(nèi)插。
      該LSPs送到LSP至LPC轉(zhuǎn)換子系統(tǒng)710將LSP頻率變換回LPC值。子系統(tǒng)710實(shí)質(zhì)上與圖7的LSP至LPC轉(zhuǎn)換子系統(tǒng)218和228相同并如參見圖13說明的那樣。該LPC系數(shù)αi隨后送給共振峰主頻成分濾波器714和共振峰主頻成分后置濾波器716。該LSP頻率在LSP平均值子系統(tǒng)還在子幀上取平均并作為值K送給自適應(yīng)清晰度濾波器718。
      子系統(tǒng)702隨同速率或異常幀狀態(tài)標(biāo)志從子系統(tǒng)700接收該幀的參數(shù)I、G、L和b。子系統(tǒng)702還從子幀計(jì)數(shù)器收到對于各個(gè)譯碼子幀1-4中的每個(gè)i計(jì)數(shù)的j計(jì)數(shù)。子系統(tǒng)702還連接存儲器720以存儲用于異常幀狀態(tài)的G,I,L和b的前一幀值。子系統(tǒng)702處于正常幀狀態(tài),除去八分之一速率,要將碼書指數(shù)值Ij送到碼書722;將碼書增益Gj送到乘法器724,音調(diào)滯后L和增益b值按照20a-20d送到音調(diào)濾波器726。對于八分之一速率,由于所送的碼書指數(shù)沒有值,對于八分之一速率,由于所送的碼書指數(shù)沒有值,對于八分之一速率是16位參數(shù)值的包種籽隨同度標(biāo)志送到碼書722。在異常幀狀態(tài)子系統(tǒng)702按照圖21a-21c提供這些數(shù)據(jù)。而且對于八分之一速率,如參見圖23所說明的那樣向碼書722提供標(biāo)志。
      響應(yīng)來自子系統(tǒng)700的空白幀標(biāo)志,子系統(tǒng)702檢取出存在存儲器中的前一幀音調(diào)滯后L值和增益b值除了該增益限制為某值或小些,以用于當(dāng)前幀的譯碼子幀。而且未提供碼書指數(shù)I且碼書增益G被設(shè)為零。響應(yīng)消除幀標(biāo)志,子系統(tǒng)702再從存儲器720檢取出前一幀子幀碼書指數(shù)并在加法器加89的值。該前一幀子幀碼書增益在乘法器乘以常數(shù)0.7以產(chǎn)生各自子幀的G值。未提供音調(diào)滯后值并將音調(diào)增益置零。響應(yīng)具有可用數(shù)據(jù)的差錯(cuò)幀標(biāo)志,當(dāng)在全速率幀中假使CRC通過就運(yùn)用碼書指數(shù)和增益,而不提供音調(diào)滯后值且音調(diào)增益置零。
      如參考分析-合成技術(shù)中的編碼器的譯碼器所說明的那樣,該碼書指數(shù)I用作該碼書值的起動(dòng)地址以向乘法器724輸出。該碼書增益值在乘法器724乘以來自碼書722的輸出值該結(jié)果送到音調(diào)濾波器726。音調(diào)濾波器用輸入的音調(diào)滯后L值和增益b值以產(chǎn)生輸出給共振峰主頻成分濾波器714的共振峰主頻成分余量。在共振峰主頻成分濾波器714 LPC系數(shù)用來對共振峰主頻成分余量濾波以重建語音。在接收端的譯碼器重建語音進(jìn)一步由共振峰主頻成分后置濾波器716和自適應(yīng)清晰度濾波器718濾波。在共振峰主頻成分濾波器714和共振峰主頻成分后置濾波器716的輸出采用AGC回路,其輸出在乘法器730中乘以自適應(yīng)清晰度濾波器718的輸出。乘法器730輸出的重建語音利用熟知技術(shù)變換成模擬形式并送給聽眾。在編碼器的譯碼器中,為更新它的記憶,在輸出端設(shè)置感知加權(quán)濾波器。
      參見圖22,說明實(shí)施譯碼器本身的更詳細(xì)節(jié)。在圖22中碼書722包括與參見圖17所說明的那種相類似的存儲器750。然而為便于說明,對于存儲器75。說明稍有差異的方法并在圖22中示出其編址。碼書722還包括開關(guān)752,多路轉(zhuǎn)換器753和偽隨機(jī)數(shù)發(fā)生器(PN)754。開關(guān)752如參見圖17說明的那樣響應(yīng)該碼書指數(shù)以指向存儲器750的指數(shù)地址位置。存儲器750是有開關(guān)752指向起始記憶位置的循環(huán)存儲器,數(shù)值移過存儲器而輸出。該碼書數(shù)值經(jīng)開關(guān)752從存儲器750輸出作為多路轉(zhuǎn)換器753的輸入。多路轉(zhuǎn)換器753響應(yīng)全速率,半速率和四分之一速率以將經(jīng)開關(guān)752提供的數(shù)值送到碼書增益放大器,乘法器724。多路轉(zhuǎn)換器753還響應(yīng)八分之一速率標(biāo)志以選取PN發(fā)生器754的輸出使碼書722的輸出送到乘法器724。
      為維持在CELP編碼的高話音質(zhì)量,編碼器和譯碼器必須有相同數(shù)值存儲在他們的內(nèi)部濾波器存儲器中。這可通過傳輸碼書指數(shù)進(jìn)行,使譯碼器和編碼器的濾波器由數(shù)值的相同序列激勵(lì)。而對高話音質(zhì)量這些序列包括大多數(shù)零,并有一些尖峰分布其間。這種激勵(lì)方式對于對背景噪聲編碼不是最優(yōu)的。
      在對背景噪聲的編碼中,以最低速率進(jìn)行,可實(shí)現(xiàn)偽隨機(jī)序列激勵(lì)濾波器。為確保該濾波器存儲器在編碼器和譯碼器中的相同,這兩個(gè)偽隨機(jī)序列必須相同。不管怎樣必須傳輸種籽到接收機(jī)譯碼器。既然沒有額外的位可用以送該種籽,所傳輸包位可用作種籽,似乎它們構(gòu)成一個(gè)數(shù)。該技術(shù)可進(jìn)行是因?yàn)槭且缘退俾视猛耆嗤珻ELP分析合成結(jié)構(gòu)來確定碼書增益和指數(shù)的。差異是該碼書指數(shù)被扔掉而編碼器的濾波器存儲器用一偽隨機(jī)序列來更新。因而分析完后可確定出用于激勵(lì)的種籽。為確保包本身不在一套位模式周期地循環(huán),在該八分之一速率的包中插入4位隨機(jī)位來取代該碼書指數(shù)值。因此該包種籽是如圖2所見到的16位數(shù)據(jù)。
      NP發(fā)生器754用熟知技術(shù)構(gòu)筑并可由各種算法實(shí)施。在例示性實(shí)施例中所采用的算法其本質(zhì)在保羅·門恩的文章“DSP片采用已證明的算法可產(chǎn)生隨機(jī)數(shù)”(EDN,1991,1,21)中說明。所傳輸?shù)奈话脕懋a(chǎn)生序列的種籽(來自圖18中的子系統(tǒng)700)。在一實(shí)施例中種籽乘以數(shù)值521且加上數(shù)值259。從這合成數(shù)值的最不重要的位用來作為有符號的16位數(shù)。該數(shù)值隨后用作產(chǎn)生下一碼書數(shù)值的種籽。由PN發(fā)生器產(chǎn)生的序列被歸一化而具有1的方差。
      從碼書722輸出的各個(gè)數(shù)值在乘法器724中乘以如在譯碼子幀期間所提供的碼書增益G。該數(shù)值作為輸入送給音調(diào)濾波器726的加法器756。音調(diào)濾波器726還包括乘法器758和存儲器760。該音調(diào)滯后L確定存儲器760分接位置被輸出給乘法器758。該存儲器760的輸出在乘法器758中乘以音調(diào)增益值b,結(jié)果輸出給加法器756。加法器756的輸出送到存儲器760的輸入端,它是諸如移位寄存器的一系列的延時(shí)單元。該數(shù)值經(jīng)存儲器760移出(沿箭頭所指方向)且如L值所確定那樣在所選取的分接輸出端給出。既然該值經(jīng)存儲器760移出,比143移出值更老的值被廢棄。加法器756的輸出還作為輸入送到共振峰主頻成分濾波器714。
      加法器756的輸出送到共振峰主頻成分濾波器714的加法器762的一個(gè)輸入端。共振峰主頻成分濾波器還包括乘法器764a-764j的存儲單位和存儲器766。該加法器762的輸出作為輸入送到存儲器766,它也構(gòu)建成一系列分接的延時(shí)單元如移位寄存器。該數(shù)值經(jīng)存儲器766移出(沿箭頭所指方向)且最后清出每個(gè)單元有分接口以將存在那里的數(shù)據(jù)作為輸入送給乘法器764a-764j的相應(yīng)的分接口。每個(gè)乘法器764a-764j還接收LPC系數(shù)α1-α10的各個(gè)值來乘以來自存儲器766的輸出。來自加法器762的輸出送給作為共振峰主頻成分濾波器的輸出。
      共振峰主頻成分濾波器714的輸出作為輸入送到共振峰主頻成分后置濾波器716和AGC子系統(tǒng)728。共振峰主頻成分濾波器716包括加法器768和770以及存儲器772和乘法器774a-774j,776a-776j,和782a-782j。隨著該數(shù)值經(jīng)存儲器772移出它們在相應(yīng)的分接口輸出用來乘以定標(biāo)的LPC系數(shù)值而在加法器768和770累加。共振峰主要頻率成分后置濾波器716的輸出作為輸入送給自適應(yīng)清晰度濾波器718。
      自適應(yīng)清晰度濾波器718包括加法器784和786,寄存器788和790,和乘法器792和794。圖24是說明自適應(yīng)清晰度濾波器特點(diǎn)的圖表。共振峰主頻成分后置濾波器716作為輸入送給加法器784而另一輸入由乘法器792的輸出提供。加法器784的輸出送給寄存器788并存儲一循環(huán)而在下一循環(huán)隨同圖19的LSP平均器712提供的K值輸出給乘法器792和794。乘法器792和794的輸出被送給加法器784和786。加法器786的輸出送給AGC子系統(tǒng)728和移位寄存器790。寄存器790作為延時(shí)線以確保從共振峰主頻成分濾波器714輸出給AGC子系統(tǒng)728的數(shù)據(jù)與經(jīng)共振峰主頻成分后置濾波器716提供給自適應(yīng)清晰度濾波器718的數(shù)據(jù)間的協(xié)調(diào)。
      AGC子系統(tǒng)728接收來自共振峰主頻成分濾波器和自適應(yīng)清晰度濾波器的數(shù)據(jù)以對語音輸出能量定標(biāo)至大約輸入到共振峰主頻成分后置濾波器716和自適應(yīng)清晰度應(yīng)濾波器718的語音的能量。AGC子系統(tǒng)728包括乘法器798、800、802和804,加法器806、808和810,寄存器812、814和816,除法器818,和平方根單元820。從共振峰主頻成分濾波器輸出的40個(gè)樣本在乘法器798平方并在包括加法器806和寄存器812的累加器中累加以產(chǎn)生數(shù)值“X”。相似地從自適應(yīng)清晰度濾波器718輸出的40樣本,優(yōu)先于存儲器790,在乘法器800中平方并在包括加法器808和寄存器814的累加器中累加以產(chǎn)生數(shù)值“Y”。該數(shù)值“Y”在除法器816中除以數(shù)值“X”以產(chǎn)生該濾波器的反向增益。在單元818得到該反向增益因數(shù)的平方根其結(jié)果被平滑。通過當(dāng)前增益G值在乘法器802乘以常數(shù)0.02,該結(jié)果在加法器810加上如寄存器820和乘法器804所計(jì)算出的0.98倍的前增益的結(jié)果來實(shí)現(xiàn)平滑工作。濾波器718的輸出隨后在乘法器730乘以平滑后的反向增益以提供輸出的重建語音。該輸出語音用各種已知變換技術(shù)變換成模擬形式輸出給用戶。
      應(yīng)該理解這里所揭示的本發(fā)明的實(shí)施例只是例示性的實(shí)施例,對該實(shí)施例作出的改變可認(rèn)為在功能上的等同物。本發(fā)明可以在合適的程序控制下在數(shù)字信息處理機(jī)中實(shí)施,提供如這里所公開的對語音樣本編碼并對該編碼的語音譯碼的功能操作。在本發(fā)明的另一個(gè)實(shí)施例中可以在實(shí)用熟知的超大規(guī)模集成(VLSZ)技術(shù)的專用集成電路(ASIC)來實(shí)現(xiàn)。
      所提供的對較佳實(shí)施例的前面的說明能使本領(lǐng)域技術(shù)人員運(yùn)用本發(fā)明。對這些實(shí)施例的各種變動(dòng)對于本領(lǐng)域技術(shù)人員將是現(xiàn)成明顯的,這里確定的總原則可不需要?jiǎng)?chuàng)造性勞動(dòng)就可應(yīng)用于其他實(shí)施例中。因而本發(fā)明希望不是限定在這所示出的實(shí)施例而是給予與這里所說的原則和新穎特征相一致的最大保護(hù)范圍。
      權(quán)利要求
      1.一種用于掩蔽幀錯(cuò)誤的設(shè)備,其特征在于,包括存儲裝置,用于存儲至少一個(gè)先前的數(shù)據(jù)幀,并響應(yīng)幀錯(cuò)誤信號提供所述至少一個(gè)先前的數(shù)據(jù)幀;和掩蔽裝置,用于接收所述幀錯(cuò)誤信號,并根據(jù)所述至少一個(gè)先前的數(shù)據(jù)幀和一個(gè)預(yù)定的錯(cuò)誤掩蔽格式(format)產(chǎn)生一個(gè)掩蔽信號。
      2.如權(quán)利要求1所述的設(shè)備,其特征在于,所述至少一個(gè)先前的數(shù)據(jù)幀包括能夠被解碼的最近一個(gè)數(shù)據(jù)幀。
      3.如權(quán)利要求2所述的設(shè)備,其特征在于,所述錯(cuò)誤掩蔽格式包括對所述能夠被解碼的最近數(shù)據(jù)幀的增益進(jìn)行衰減。
      4.如權(quán)利要求1所述的設(shè)備,其特征在于,所述錯(cuò)誤掩蔽格式包括對所述至少一個(gè)先前數(shù)據(jù)幀的增益進(jìn)行衰減。
      5.一種用于掩蔽幀錯(cuò)誤的方法,其特征在于,所述方法包括以下步驟存儲至少一個(gè)先前的數(shù)據(jù)幀;響應(yīng)于幀錯(cuò)誤信號,提供所述至少一個(gè)先前的數(shù)據(jù)幀;和根據(jù)所述至少一個(gè)先前的數(shù)據(jù)幀和一個(gè)預(yù)定的錯(cuò)誤掩蔽格式產(chǎn)生一個(gè)掩蔽信號。
      6.如權(quán)利要求5所述的方法,其特征在于,所述至少一個(gè)先前的數(shù)據(jù)幀包括能夠被解碼的最近一個(gè)數(shù)據(jù)幀。
      7.如權(quán)利要求6所述的方法,其特征在于,所述錯(cuò)誤掩蔽格式包括對所述能夠被解碼的最近數(shù)據(jù)幀的增益進(jìn)行衰減。
      8.如權(quán)利要求5所述的方法,其特征在于,所述錯(cuò)誤掩蔽格式包括對所述至少一個(gè)先前數(shù)據(jù)幀的增益進(jìn)行衰減。
      9.在用于接收根據(jù)線性預(yù)測編碼算法編碼的數(shù)據(jù)幀的解碼器中,一種用于掩蔽幀錯(cuò)誤的設(shè)備,其特征在于,包括存儲裝置,用于存儲一個(gè)正確接收幀的參數(shù)數(shù)據(jù);和掩蔽裝置,該裝置用所述存儲裝置所存至少一個(gè)參數(shù)代替一錯(cuò)誤接收幀中的至少一個(gè)參數(shù)。
      10.如權(quán)利要求9所述的設(shè)備,其特征在于,所述掩蔽裝置用所述存儲裝置所存參數(shù)代替被錯(cuò)誤替代的所述幀的所有參數(shù)。
      11.如權(quán)利要求9所述的設(shè)備,其特征在于,所述掩蔽裝置用所述存儲裝置中的選定參數(shù)代替被錯(cuò)誤替代的所述幀的選定參數(shù)。
      12.如權(quán)利要求9所述的設(shè)備,其特征在于,所述掩蔽裝置用所述存儲裝置所存參數(shù)并結(jié)合所述存儲裝置所存參數(shù)的改進(jìn)形式來代替被錯(cuò)誤替代的所述幀的所有參數(shù)。
      13.如權(quán)利要求9所述的設(shè)備,其特征在于,所述掩蔽裝置用約等于零的值代替所述錯(cuò)誤接收幀中的碼書增益參數(shù)。
      14.如權(quán)利要求9和13所述的設(shè)備,其特征在于,所述掩蔽裝置用所述存儲裝置所存音調(diào)增益值代替所述錯(cuò)誤接收幀中的音調(diào)增益參數(shù),其中所存音調(diào)增益值被限制為小于或等于1的值。
      15.如權(quán)利要求9所述的設(shè)備,其特征在于,所述掩蔽裝置用約等于零的值代替所述錯(cuò)誤接收幀中的音調(diào)增益參數(shù)。
      16.如權(quán)利要求9和15所述的設(shè)備,其特征在于,所述掩蔽裝置選擇一個(gè)隨機(jī)的碼書激勵(lì)矢量索引,并用所述隨機(jī)選定的碼書激勵(lì)矢量索引代替所述錯(cuò)誤接收幀的碼書激勵(lì)矢量索引。
      17.如權(quán)利要求9,15和16所述的設(shè)備,其特征在于,所述掩蔽裝置用所述存儲裝置所存碼書增益值的改進(jìn)形式代替所述錯(cuò)誤接收幀中的碼書增益值。
      18.如權(quán)利要求17所述的設(shè)備,其特征在于,所述掩蔽裝置用所述存儲裝置所存碼書增益值的比例形式代替所述錯(cuò)誤接收幀中的碼書增益值。
      19.如權(quán)利要求18所述的設(shè)備,其特征在于,所述掩蔽裝置用按約等于0.7的比例縮小的所述存儲裝置所存碼書增益值代替所述錯(cuò)誤接收幀中的碼書增益值。
      20.如權(quán)利要求9,15,16和17所述的設(shè)備,其特征在于,所述掩蔽裝置用所述存儲裝置所存LSP參數(shù)的改進(jìn)形式代替所述錯(cuò)誤接收幀中的至少一個(gè)LSP參數(shù)。
      21.如權(quán)利要求20所述的設(shè)備,其特征在于,所述掩蔽裝置生成所述存儲裝置所存LSP參數(shù)的改進(jìn)形式,以便促使所述改進(jìn)形式逼近一預(yù)定偏置值。
      22.如權(quán)利要求9所述的設(shè)備,其特征在于,當(dāng)發(fā)射站故意使所述幀空白時(shí),所述掩蔽裝置選擇第一掩蔽算法,而當(dāng)所述幀因信道錯(cuò)誤過量而被錯(cuò)誤接收時(shí),所述掩蔽裝置選擇第二掩蔽算法。
      23.在用于接收根據(jù)線性預(yù)測編碼算法編碼的數(shù)據(jù)幀的解碼器中,一種用于掩蔽幀錯(cuò)誤的方法,其特征在于,包括存儲一個(gè)正確接收幀的參數(shù)數(shù)據(jù);和用至少一個(gè)所存參數(shù)代替一個(gè)錯(cuò)誤接收幀中的至少一個(gè)參數(shù)。
      24.如權(quán)利要求23所述的方法,其特征在于,所述代替步驟包括下述步驟,即用所述參數(shù)代替被錯(cuò)誤替代的所述幀的所有參數(shù)。
      25.如權(quán)利要求23所述的方法,其特征在于,所述代替步驟包括下述步驟,即用選定的所述參數(shù)代替被錯(cuò)誤替代的所述幀的選定參數(shù)。
      26.如權(quán)利要求23所述的方法,其特征在于,所述代替步驟包括下述步驟,即用所存參數(shù)并結(jié)合所存參數(shù)的改進(jìn)形式來代替被錯(cuò)誤替代的所述幀的所有參數(shù)。
      27.如權(quán)利要求23所述的方法,其特征在于,所述代替步驟包括下述步驟,即用一個(gè)約等于零的值代替所述錯(cuò)誤接收幀中的碼書增益參數(shù)。
      28 .如權(quán)利要求23和27所述的方法,其特征在于,所述代替步驟包括下述步驟,即用所存音調(diào)增益值代替所述錯(cuò)誤接收幀中的音調(diào)增益參數(shù),其中所存音調(diào)增益值被限制為小于或等于1的值。
      29.如權(quán)利要求23所述的方法,其特征在于,所述代替步驟包括下述步驟,即用約等于零的值代替所述錯(cuò)誤接收幀中的音調(diào)增益參數(shù)。
      30.如權(quán)利要求23和29所述的方法,其特征在于,所述代替步驟包括下述步驟,即選擇一個(gè)隨機(jī)的碼書激勵(lì)矢量索引,并用所述隨機(jī)選定的碼書激勵(lì)矢量索引代替所述錯(cuò)誤接收幀的碼書激勵(lì)矢量索引。
      31.如權(quán)利要求23,29和30所述的方法,其特征在于,所述代替步驟包括下述步驟,即用所存碼書增益值的改進(jìn)形式代替所述錯(cuò)誤接收幀中的碼書增益值。
      32.如權(quán)利要求31所述的方法,其特征在于,所述代替步驟包括下述步驟,即用所存碼書增益值的比例形式代替所述錯(cuò)誤接收幀中的碼書增益值。
      33.如權(quán)利要求32所述的方法,其特征在于,所述代替步驟包括下述步驟,即用按約等于0.7的比例縮小的所存碼書增益值代替所述錯(cuò)誤接收幀中的碼書增益值。
      34.如權(quán)利要求23,29,30和31所述的方法,其特征在于,所述代替步驟包括下述步驟,即用所存LSP參數(shù)的改進(jìn)形式代替所述錯(cuò)誤接收幀中的至少一個(gè)LSP參數(shù)。
      35.如權(quán)利要求34所述的方法,其特征在于,所述代替步驟還包括下述步驟,即生成所存LSP參數(shù)的所述改進(jìn)形式,以便促使所述改進(jìn)形式逼近一預(yù)定偏置值。
      36.如權(quán)利要求23所述的方法,其特征在于,所述代替步驟包括下述步驟,即當(dāng)發(fā)射站故意使所述幀空白時(shí)選擇第一掩蔽算法,而當(dāng)所述幀因信道錯(cuò)誤過量而被錯(cuò)誤接收時(shí)選擇第二掩蔽算法。
      全文摘要
      本發(fā)明揭示了一種用于掩蔽幀錯(cuò)誤的設(shè)備和方法。該設(shè)備和方法用存儲裝置存儲至少一個(gè)先前的數(shù)據(jù)幀,并響應(yīng)幀錯(cuò)誤信號提供此先前的數(shù)據(jù)幀,而且還用掩蔽裝置接收幀錯(cuò)誤信號,并根據(jù)所述先前的數(shù)據(jù)幀和一個(gè)預(yù)定的錯(cuò)誤掩蔽格式產(chǎn)生一個(gè)掩蔽信號。在用于接收根據(jù)線性預(yù)測編碼算法編碼的數(shù)據(jù)幀的解碼器中,存儲裝置存儲一個(gè)正確接收幀的參數(shù)數(shù)據(jù),而掩蔽裝置用存儲裝置中的至少一個(gè)參數(shù)代替錯(cuò)誤接收幀中的至少一個(gè)參數(shù)。
      文檔編號G10LGK1381956SQ0112296
      公開日2002年11月27日 申請日期1992年6月11日 優(yōu)先權(quán)日1991年6月11日
      發(fā)明者保羅·E·雅各布, 威廉·R·加德納, 沖·U·李, 克萊恩·S·吉豪森, S·凱瑟琳·蘭姆, 民昌·蔡 申請人:夸爾柯姆股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1