專利名稱:保持語言編碼中目標(biāo)比特率的方法和裝置的制作方法
背景技術(shù):
I.發(fā)明領(lǐng)域本發(fā)明一般涉及語言處理領(lǐng)域,尤其涉及保持語言編碼器中目標(biāo)比特率的方法和裝置。
II.背景技術(shù)用數(shù)字技術(shù)發(fā)送話音已非常普及,尤其在長距離和數(shù)字無線電話應(yīng)用中。這反過來產(chǎn)生了對(duì)確定在信道上發(fā)送的最小信息量的興趣,同時(shí)又保持重建語言的感覺質(zhì)量。如果通過簡單地采樣和數(shù)字化發(fā)送語言,那么需要大約每秒64千比特(kbps)的數(shù)據(jù)率,以獲得傳統(tǒng)模擬電話的語言質(zhì)量。然而,通過使用語言分析,接著通過適當(dāng)?shù)木幋a、發(fā)送、并在接收機(jī)端再合成,可以大大降低數(shù)據(jù)率。
用于壓縮語言的裝置在電信的眾多領(lǐng)域中可找到其應(yīng)用。典型的領(lǐng)域是無線通信。無線通信領(lǐng)域具有很多應(yīng)用,包括如無繩電話、尋呼、無線局域環(huán)路、如蜂窩和PCS電話系統(tǒng)的無線電話,移動(dòng)因特網(wǎng)協(xié)議(IP)電話,和衛(wèi)星通信系統(tǒng)。尤其重要的應(yīng)用是移動(dòng)用戶的無線電話。
已經(jīng)發(fā)展了各種空中接口用于無線通信系統(tǒng),包括如頻分多址(FDMA)、時(shí)分多址(TDMA)、和碼分多址(CDMA)。在與之的連接中,建立了各種國內(nèi)和國際的標(biāo)準(zhǔn),包括如高級(jí)移動(dòng)電話業(yè)務(wù)(AMPS),全球移動(dòng)通信系統(tǒng)(GSM)、和臨時(shí)標(biāo)準(zhǔn)(IS-95)。典型的無線電話通信系統(tǒng)是碼分多址(CDMA)系統(tǒng)。電信工業(yè)協(xié)會(huì)(TIA)和其它公知的標(biāo)準(zhǔn)團(tuán)體頒布了IS-95標(biāo)準(zhǔn)及其衍生物IS-95A、ANSIJ-STD-008、IS-95B、提議的第三代標(biāo)準(zhǔn)的IS-95C和IS-2000等等(這里統(tǒng)稱為IS-95),以規(guī)定CDMA空中接口在蜂窩或PCS電話通信系統(tǒng)中的使用。美國專利號(hào)5,103,459和4,901,307中描述了根據(jù)使用IS-95標(biāo)準(zhǔn)實(shí)質(zhì)性構(gòu)造的典型無線通信系統(tǒng),這兩個(gè)申請(qǐng)都轉(zhuǎn)讓給本發(fā)明的受讓人,并通過引用全面結(jié)合于此。
使用通過提取關(guān)于人類語言產(chǎn)生模型的參數(shù)以壓縮語言技術(shù)的裝置稱為語言編碼器。語言編碼器將輸入語言信號(hào)分成時(shí)間塊或分析幀。語言編碼器通常包括編碼器和解碼器。編碼器分析輸入語言幀,以提取某些相關(guān)的參數(shù),然后將參數(shù)量化成二進(jìn)制表示,也就是一組比特或二進(jìn)制數(shù)據(jù)包。在通信信道上將數(shù)據(jù)包從接收機(jī)發(fā)送到解碼器。解碼器處理數(shù)據(jù)包,將它們?nèi)チ炕援a(chǎn)生參數(shù),并使用去量化參數(shù)再合成語言幀。
語言編碼器的功能是通過除去語言中的所有固有冗余將數(shù)字化的語言信號(hào)壓縮成低比特率的信號(hào)。通過用一組參數(shù)表示輸入語言幀并使用量化用一組比特表示參數(shù),以實(shí)現(xiàn)數(shù)字壓縮。如果輸入語言幀具有比特?cái)?shù)Ni且語言編碼器產(chǎn)生的數(shù)據(jù)包具有比特?cái)?shù)No,那么語言編碼器獲得的壓縮因數(shù)為Cr=Ni/No。問題是在獲得目標(biāo)壓縮因數(shù)的同時(shí)要保持解碼語言的高話音質(zhì)量。語言編碼器的性能依賴于(1)語言模型、或上述分析和合成過程的組合執(zhí)行得多好,(2)以目標(biāo)比特率每幀No比特執(zhí)行的參數(shù)量化過程執(zhí)行得多好。因此,語言模型的目標(biāo)是用每個(gè)幀一小組參數(shù)獲取語言信號(hào)的本質(zhì),或目標(biāo)語言質(zhì)量。
也許語言編碼器設(shè)計(jì)中最重要的是搜索一組好的參數(shù)(包括向量),以描述語言信號(hào)。一組好的參數(shù)要求有較低的系統(tǒng)帶寬,用于感覺上精確的語言信號(hào)的重建。音調(diào)、信號(hào)功率、頻譜包絡(luò)(或共振峰),振幅和相位譜都是語言編碼參數(shù)的實(shí)例。
語言編碼器可以是時(shí)域編碼器,它通過使用較高的時(shí)間分辨處理每次對(duì)小片段語言(通常是5毫秒(ms)子幀)編碼,以試圖獲取時(shí)域語言波形。對(duì)于每個(gè)子幀,通過本領(lǐng)域所熟知的各種搜索算法從碼本空間找出高精度的表示。另外,語言編碼器可以用頻域編碼器實(shí)現(xiàn),它試圖用一組參數(shù)(分析)獲取輸入語言幀的短期語言頻譜,并使用相應(yīng)的合成過程從頻譜參數(shù)中重建語言波形。參數(shù)量化器根據(jù)A.Gersho & R.M.Gray,VectorQuantization and Signal Compression(1992)中描述的熟知的量化技術(shù)通過用存儲(chǔ)的代碼向量表示法表示參數(shù),以保存參數(shù)。
公知的時(shí)域語言編碼器是L.B.Rabiner & R.W.Schafer,Digital Processingof Speech Signal 396-453(1978)中描述的代碼受激線性預(yù)測編碼器(CELP),它通過引用全面結(jié)合于此。在CELP編碼器中,線性預(yù)測(LP)分析除去語言信號(hào)中的短期相關(guān)或冗余,它找出短期共振峰濾波器的系數(shù)。將短期預(yù)測濾波器施加到輸入語言幀產(chǎn)生LP剩余信號(hào),用長期預(yù)測濾波器參數(shù)和隨后的隨機(jī)碼本將該信號(hào)進(jìn)一步模型化和量化。因此,CELP編碼將時(shí)域語言波形的編碼任務(wù)分成LP短期濾波器系數(shù)編碼和LP剩余編碼的分開的任務(wù)。可以以固定的速率(也就是對(duì)每個(gè)幀使用相同的比特?cái)?shù)No)或變化的速率(其中不同比特率用于不同類型的幀內(nèi)容)執(zhí)行時(shí)域編碼。變化速率編碼器試圖只使用將編譯碼參數(shù)編碼以達(dá)到目標(biāo)質(zhì)量水平所需的比特量。美國專利號(hào)5,414,796中描述了典型的變化速率CELP編碼器,該申請(qǐng)轉(zhuǎn)讓給了本發(fā)明的受讓人,并通過引用全面結(jié)合于此。
時(shí)域編碼器如CELP編碼器通常依賴于每幀高的比特?cái)?shù)No,以保持時(shí)域語言波形的精確度。這種編碼器通常傳送由相對(duì)大的每幀比特?cái)?shù)No(如8kbps或更大)提供的較好語言質(zhì)量。然而,在低比特率(4kbps或更低)時(shí),由于有限的可獲得比特?cái)?shù),時(shí)域編碼器就不能保持高質(zhì)量和穩(wěn)健的性能。在低比特率時(shí),有限的碼本空間箝制了傳統(tǒng)時(shí)域編碼器的波形匹配能力,編碼器在較高速率的工業(yè)應(yīng)用中已成功發(fā)展。因此,盡管隨著時(shí)間推移而進(jìn)行了改進(jìn),但是以低比特率工作的很多CELP編碼系統(tǒng)遭受感覺上嚴(yán)重的失真,通常表征為噪聲。
當(dāng)前涌現(xiàn)了研究興趣和較強(qiáng)的工業(yè)需要以發(fā)展在中到低比特率(也就是在2.4到4kbps范圍內(nèi)或更小)上工作的高質(zhì)量的語言編碼器。應(yīng)用領(lǐng)域包括無線電話、衛(wèi)星通信、因特網(wǎng)電話、各種多媒體和話音流應(yīng)用、話音郵件和其它語音存儲(chǔ)系統(tǒng)。驅(qū)動(dòng)力是高容量的需要和在包丟失情況下的穩(wěn)鍵性能的要求。各種近來的語言編碼標(biāo)準(zhǔn)化努力是另一直接驅(qū)動(dòng)力,用于推進(jìn)低速率語言編碼算法的研究和發(fā)展。低速率語言編碼器在每個(gè)允許的應(yīng)用帶寬中產(chǎn)生更多的信道或用戶,而且與適當(dāng)?shù)男诺谰幋a附加層耦合的低速率語言編碼器能夠適應(yīng)編碼器規(guī)范的總比特預(yù)算,并能在信道誤差條件下傳送較穩(wěn)健的性能。
以低比特率將語言高效編碼的有效技術(shù)是多模編碼。1998年12月21日提交的美國申請(qǐng)序號(hào)09/217,341題為“VARIABLE RATE SPEECH CODING”的申請(qǐng)中描述了典型的多模編碼技術(shù),該申請(qǐng)轉(zhuǎn)讓給了本發(fā)明的受讓人,并通過引用全面結(jié)合于此。傳統(tǒng)的多模編碼對(duì)于不同類型的輸入語言幀使用不同的模式或編碼-解碼算法。定制每種模式或編碼-解碼過程以最佳地用最有效地方式表示某些類型的語言片段,如有聲語言、無聲語言、過渡語言(例介于有聲和無聲之間)、和背景噪聲(無語言)。外部、開環(huán)模式判定機(jī)構(gòu)測試輸入語言幀,并確定對(duì)該幀施加何種模式。通常通過從輸入幀中提取多個(gè)參數(shù),估計(jì)關(guān)于某些時(shí)頻特征的參數(shù),并使模式判定基于該估計(jì),以執(zhí)行開環(huán)模式判定。因此,進(jìn)行模式判定無需事先知道輸出語言的精確情況,也就是在語言質(zhì)量或其它性能測量方面輸出語言和輸入語言有多接近。
以大約2.4kbps速率工作的編碼系統(tǒng)一般在本質(zhì)上是參數(shù)式的。也就是說,這種編碼系統(tǒng)通過在規(guī)則時(shí)間間隔上發(fā)送表示語言信號(hào)音調(diào)周期和頻譜包絡(luò)(或共振峰)的參數(shù)而進(jìn)行工作。這些所謂參數(shù)編碼器的實(shí)例是LP聲音編碼器系統(tǒng)。
LP聲音編碼器用每個(gè)音調(diào)周期的單脈沖模型化有聲語言信號(hào)??梢栽鰪V該基本技術(shù),包括還另外發(fā)送關(guān)于頻譜包絡(luò)的信息。雖然LP聲音編碼器一般提供合理的性能,但是它們可能傳入感覺上嚴(yán)重的失真,典型的表征為蜂音。
近幾年來,形成了混合波形編碼器和參數(shù)編碼器的編碼器。這些所謂混合編碼器的實(shí)例是原型波形內(nèi)插(PWI)語言編碼系統(tǒng)。PWI編碼系統(tǒng)也熟知為原型音調(diào)周期(PPP)語言編碼器。PWI編碼系統(tǒng)提供將有聲語言編碼的有效方法。PWI的基本概念是在固定時(shí)間間隔提取典型音調(diào)周期(原型波形),發(fā)送它的描述,并通過在原型波形中內(nèi)插而重建語言信號(hào)。PWI方法可用于對(duì)LP剩余信號(hào)或語言信號(hào)操作。1998年12月21日提交的美國申請(qǐng)序號(hào)09/217,494題為“PERIODICSPEECH CODING”的申請(qǐng)中描述了典型的PWI或PPP語言編碼器,該申請(qǐng)轉(zhuǎn)讓給了本發(fā)明的受讓人,并通過引用全面結(jié)合于此。美國專利號(hào)5,884,253中和W.Bastiaan Kleijn & Wolfgang Granzow,Methods for Waveform Interpolationin Speech Coding,in 1 Digital Signal Processing 215-230(1991)中描述了其它PWI或PPP語言編碼器。
傳統(tǒng)的低比特率、變化速率語言編碼器根據(jù)幀的能量使用開環(huán)編碼模式判定,以確定何時(shí)將較低的編碼率切換成較高的編碼率。這允許語言編碼器使用存在的不同分類的語言,并以不同的速率將它們編碼。然而,以開環(huán)分類確定的速率編碼可能導(dǎo)致使特定幀具有較差或普通的質(zhì)量。因此,改進(jìn)開環(huán)判定的效率是有利的。期望使用質(zhì)量估計(jì)以改變(也就是如果必要就增加)給定幀的編碼率。然而,提高幀的編碼率將改變(增加)語言編碼器的平均編碼率。因此提供語言編碼器保持固定平均比特率,同時(shí)允許一帷一幀的基礎(chǔ)上的編碼率偏離開環(huán)分類所確定的值是更有利的。還期望指定語言編碼器的目標(biāo)平均速率。保持語言編碼器的目標(biāo)總比特率是更有利的。因此,需要語言編碼器,用于精細(xì)化帶有閉環(huán)判定過程的編碼模式判定,以給出最佳的話音質(zhì)量,并保持目標(biāo)編碼比特率。
發(fā)明內(nèi)容
本發(fā)明是針對(duì)語言編碼器,用于精細(xì)化帶有閉環(huán)判定過程的編碼模式判定,以給出最佳的話音質(zhì)量,并保持目標(biāo)編碼比特率。因此,本發(fā)明的一方面,在被構(gòu)造成以變化的編碼率將多個(gè)幀編碼的語言編碼器中,保持語言編碼器目標(biāo)平均比特率的方法最好包括以下步驟以預(yù)選編碼率將幀編碼;計(jì)算預(yù)定個(gè)數(shù)編碼幀的運(yùn)行平均比特率;從預(yù)定目標(biāo)平均比特率中減去運(yùn)行平均比特率,以獲得差值;用差值除以預(yù)選的編碼率以獲得商值;如果商值小于零,累加第一預(yù)定個(gè)數(shù)可能小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第一累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第一累加值大于商值的絕對(duì)值;如果商值小于零,從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值具體值的第一預(yù)定個(gè)數(shù),以獲得新的性能閾值;如果商值大于或等于零,累加第二預(yù)定個(gè)數(shù)可能大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第二累加值,選擇語言編碼器性能閾值出現(xiàn)值的預(yù)定個(gè)數(shù),使得第二累加值大于商值;并且如果商值大于或等于零,將每個(gè)語言編碼器性能閾值具體值的增加量和語言編碼器性能閾值的第二預(yù)定出現(xiàn)個(gè)數(shù)的乘積與當(dāng)前性能閾值相加,以獲得新的性能閾值。
本發(fā)明的另一方面,編碼器最好包括以預(yù)選編碼率將幀編碼的裝置;計(jì)算預(yù)定個(gè)數(shù)編碼幀的運(yùn)行平均比特率的裝置;從預(yù)定目標(biāo)平均比特率中減去運(yùn)行平均比特率以獲得差值的裝置;用差值除以預(yù)選的編碼率以獲得商值的裝置;累加第一預(yù)定個(gè)數(shù)可能小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第一累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第一累加值大于商值的絕對(duì)值的裝置;從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值具體值的第一預(yù)定個(gè)數(shù),如果商值小于零,以獲得新的性能閾值的裝置;累加第二預(yù)定的可能大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值個(gè)數(shù),以產(chǎn)生第二累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第二累加值大于商值的裝置;和將每個(gè)語言編碼器性能閾值具體值的增加量和語言編碼器性能閾值具體值的第二預(yù)定個(gè)數(shù)的乘積與當(dāng)前性能閾值相加,如果商值小于零,以獲得新的性能閾值。
本發(fā)明的另一方面,語言編碼器最好包括分析模塊,用于分析多個(gè)幀;和量化模塊,耦合到分析模塊用于將分析模塊產(chǎn)生的幀參數(shù)編碼,其中量化模塊還被構(gòu)造成以預(yù)選編碼率將幀編碼;計(jì)算預(yù)定個(gè)數(shù)編碼幀的運(yùn)行平均比特率;從預(yù)定目標(biāo)平均比特率中減去運(yùn)行平均比特率,以獲得差值;用差值除以預(yù)選的編碼率以獲得商值;累加第一預(yù)定的可能小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值個(gè)數(shù),以產(chǎn)生第一累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第一累加值大于商值的絕對(duì)值;從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值具體值的第一預(yù)定個(gè)數(shù),如果商值小于零,以獲得新的性能閾值;累加第二預(yù)定個(gè)數(shù)可能大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第二累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第二累加值大于商值;并將每個(gè)語言編碼器性能閾值具體值的增加量和語言編碼器性能閾值具體值的第二預(yù)定個(gè)數(shù)的乘積與當(dāng)前性能閾值相加,如果商值大于或等于零,以獲得新的性能閾值。
圖1是無線電話系統(tǒng)的框圖。
圖2是語言編碼器在每個(gè)終端處終止的通信信道的框圖。
圖3是編碼器的框圖。
圖4是解碼器的框圖。
圖5是表示語言編碼判定過程的流程圖。
圖6A是語言信號(hào)振幅相對(duì)于時(shí)間的圖像;圖6B是線性預(yù)測(LP)剩余振幅相對(duì)于時(shí)間的圖像。
圖7是原型音調(diào)周期(PPP)語言編碼器的框圖。
圖8是表示語言編碼器執(zhí)行的算法步驟的流程圖,如圖7的語言編碼器,將閉環(huán)編碼性能測量應(yīng)用于每個(gè)被編碼幀,并同時(shí)保持語言編碼器的目標(biāo)平均比特率。
圖9是表示語言編碼器執(zhí)行的算法步驟的流程圖,用于在語言幀的編碼期間更新直方圖區(qū)間的值。
較佳實(shí)施例的詳細(xì)描述這里以下所述的典型實(shí)施例存在于被構(gòu)造成使用CDMA空中接口的無線電話通信系統(tǒng)中。然而,本領(lǐng)域熟練的技術(shù)人員應(yīng)該理解使用本發(fā)明特征的子采樣方法和裝置可以存在于使用本領(lǐng)域熟練技術(shù)人員所熟知的較寬范圍技術(shù)的任何各種通信系統(tǒng)中。
如圖1所示,CDMA無線電話系統(tǒng)一般包括多個(gè)移動(dòng)用戶單元10、多個(gè)基站12、基站控制器(BSC)14,和移動(dòng)交換中心(MSC)16。MSC 16被構(gòu)造成與傳統(tǒng)公共交換電話網(wǎng)(PSTN)18連接。MSC 16還被構(gòu)造成與BSC 14連接。BSC 14還通過回傳線路耦合到基站12?;貍骶€路可以被構(gòu)造成支持幾個(gè)已知接口中的任何一個(gè),如E1/T1、ATM、IP、PPP、Frame Relay、HDSL、ADSL或xDSL。應(yīng)該理解系統(tǒng)中多于兩個(gè)的BSC 14。每個(gè)基站12最好包括至少一個(gè)扇區(qū)(未圖示),每個(gè)扇區(qū)包括一全向天線或從基站12指特定徑向方向的天線。另一種情況是,每個(gè)扇區(qū)可以包括兩個(gè)天線用于分集接收。每個(gè)基站12最好被設(shè)計(jì)成支持多個(gè)頻率分配。扇區(qū)的相交和頻率分配可以被稱為CDMA信道?;?2也熟知為基站收發(fā)機(jī)子系統(tǒng)(BTS)12。另一種情況是,“基站”可用于工業(yè)中統(tǒng)稱為BSC 14和一個(gè)和多個(gè)BTS 12。BTS 12也可以表示為“區(qū)站”12。另一種情況是,給定BTS 12的各個(gè)扇區(qū)可稱為區(qū)站。移動(dòng)用戶單元10通常是蜂窩或PCS電話10。系統(tǒng)最好被構(gòu)造成根據(jù)IS-95標(biāo)準(zhǔn)使用。
在蜂窩電話系統(tǒng)的典型工作中,基站12從移動(dòng)單元組10接收反向鏈路信號(hào)組。移動(dòng)單元10進(jìn)行電話呼叫或其它通信。特定基站12接收到的每個(gè)反向鏈路信號(hào)在該基站12中被處理。所得的數(shù)據(jù)被發(fā)送到BSC 14。BSC 14提供呼叫源定位和移動(dòng)管理功能,包括基站12之間軟越區(qū)切換的控制。BSC 14還將接收到的數(shù)據(jù)發(fā)送到MSC 16,MSC 16為與PSTN 18接口提供附加的路由服務(wù)。類似地,PSTN 18和MSC 16連接,MSC 16和BSC 14連接,BSC 14依次控制基站12發(fā)送前向鏈路信號(hào)組到移動(dòng)單元組10。
在圖2中,第一編碼器100接收數(shù)字化的語言樣本s(n)并將樣本s(n)編碼,用于在傳輸介質(zhì)102、或通信信道102上發(fā)送到第一解碼器104。解碼器104將編碼語言樣本解碼,并合成輸出語言信號(hào)SSYNTH(n)。為了在反方向上發(fā)送,第二編碼器106將對(duì)通信信道108上傳輸?shù)臄?shù)字化語言樣本s(n)編碼。第二解碼器110接收并將編碼語言樣本解碼,產(chǎn)生合成的輸出語言信號(hào)SSYNTH(n)。
語言樣本s(n)表示根據(jù)本領(lǐng)域中各種熟知的任何方法數(shù)字化并量化的語言信號(hào),這些方法例如包括脈沖編碼調(diào)制(PCM)、壓擴(kuò)μ律、或A律。如本領(lǐng)域中所熟知的,語言樣本s(n)組合成輸入數(shù)據(jù)幀,其中每個(gè)幀包括預(yù)定個(gè)數(shù)的數(shù)字化語言樣本s(n)。在典型實(shí)施例中,使用8kHz的采樣速率,每個(gè)20ms的幀包括160個(gè)樣本。在以下描述的實(shí)施例中,數(shù)據(jù)傳輸速率最好在幀到幀的基礎(chǔ)上從13.2kbps(全速率)變化到6.2kbps(半速率)到2.6kbps(四分之一速率)到1kbps(八分之一速率)。數(shù)據(jù)傳輸速率的變化是有利的,因?yàn)閷?duì)于包含相對(duì)較少語言信息的幀可以選用較低的比特率。本領(lǐng)域熟練的技術(shù)人員能夠理解還可以使用其它采樣速率和數(shù)據(jù)傳輸速率。
第一編碼器100和第二解碼器110一同組成第一語言編碼器。語言編碼器可用于發(fā)送語言信號(hào)的任何通信裝置,包括如以上參考圖1描述的用戶單元、BTS或BSC。類似地,第二編碼器106和第一解碼器104一同組成第二語言編碼器。本領(lǐng)域熟練的技術(shù)人員應(yīng)該理解語言編碼器可以用數(shù)字信號(hào)處理器(DSP)、專用集成電路(ASIC)、離散門邏輯、固件、或任何傳統(tǒng)可編程軟件模塊和微處理器實(shí)現(xiàn)。軟件模塊可駐留在RAM存儲(chǔ)器、快閃存儲(chǔ)器、寄存器或本領(lǐng)域中所熟知的任何其它形式的可寫存儲(chǔ)媒介中。另一種情況是,任何傳統(tǒng)的處理器、控制器或狀態(tài)機(jī)械都可以替代微處理器。美國專利號(hào)5,727,123中中和1994年2月16日提交的美國申請(qǐng)序號(hào)08/197,417題為“VOCODER ASIC”的申請(qǐng)中都描述了專門為語言編碼設(shè)計(jì)的典型ASIC,這兩個(gè)申請(qǐng)都轉(zhuǎn)讓給了本發(fā)明的受讓人,并通過引用全面結(jié)合于此。
在圖3中,可用于語言編碼器的編碼器200包括模式判定模塊202、音調(diào)估計(jì)模塊204、LP分析模塊206、LP分析濾波器208、LP量化模塊210、和剩余量化模塊212。輸入語言幀s(n)提供給模式判定模塊202、音調(diào)估計(jì)模塊204、LP分析模塊206、LP分析濾波器208。模式判定模塊202根據(jù)每個(gè)輸入語言幀s(n)的周期、能量信噪比(SNR)或過零速率以及其它特征產(chǎn)生模式索引IM和模式M。美國專利號(hào)5,911,128中描述了根據(jù)周期將語言幀分類的各種方法,該申請(qǐng)轉(zhuǎn)讓給了本發(fā)明的受讓人,并通過引用全面結(jié)合于此。這種方法還結(jié)合入電信工業(yè)協(xié)會(huì)工業(yè)臨時(shí)標(biāo)準(zhǔn)TIA/EIA IS-127和TIA/EIA IS-733。上述的美國申請(qǐng)序號(hào)09/217,341中還描述了典型的模式判定方案。
音調(diào)估計(jì)模塊204根據(jù)每個(gè)輸入語言幀s(n)產(chǎn)生音調(diào)索引IP和滯后值P0。LP分析模塊206執(zhí)行每個(gè)輸入語言幀s(n)的線性預(yù)測分析,以產(chǎn)生LP參數(shù)a。LP參數(shù)a提供給LP量化模塊210。LP量化模塊210還接收模式M,以此執(zhí)行模式依賴方式的量化過程。LP量化模塊210產(chǎn)生LP索引ILP和量化LP參數(shù)。除了輸入語言幀s(n)外LP分析濾波器208還接收量化LP參數(shù)。LP分析濾波器208產(chǎn)生LP剩余信號(hào)R[n],它表示輸入語言幀s(n)和根據(jù)量化線性預(yù)測參數(shù)重建的語言之間的誤差。LP剩余R[n]、模式M和量化LP參數(shù)被提供給剩余量化模塊212。根據(jù)這些值,剩余量化模塊212產(chǎn)生剩余索引IR和量化剩余信號(hào) 。
在圖4中,可用于語言編碼器的解碼器300包括LP參數(shù)解碼模塊302、剩余解碼模塊304、模式解碼模塊306和LP合成濾波器308。模式解碼模塊306接收并將模式索引IM解碼,從中產(chǎn)生模式M。LP參數(shù)解碼模塊302接收模式M和LP索引ILP。LP參數(shù)解碼模塊302將接收到的值解碼,產(chǎn)生量化LP參數(shù)。剩余解碼模塊304接收剩余索引IR、音調(diào)索引IP、和模式索引IM。剩余解碼模塊304將接收到的值解碼,產(chǎn)生量化剩余信號(hào) 。量化剩余信號(hào) 和量化LP參數(shù)被提供給LP合成濾波器308,它從中合成解碼輸出信號(hào)[n]。
本領(lǐng)域中熟知圖3中編碼器200和圖4中解碼器300中各種模塊的操作和實(shí)施,并且在上述美國專利號(hào)5,414,196和L.B.Rabiner & R.W.Schafer,Digital Processing of Speech Signals 396-453(1978)中對(duì)其進(jìn)行了描述。
如圖5中流程圖所示,根據(jù)一個(gè)實(shí)施例的語言編碼器遵循處理語言樣本用于發(fā)送的一組步驟。在步驟400中,語言編碼器接收連續(xù)幀中的語言信號(hào)的數(shù)字樣本。通過接收特定的幀,語言編碼器進(jìn)入步驟402。在步驟402中,語言編碼器檢測幀的能量。能量是幀中語言活動(dòng)性的衡量。通過將數(shù)字化語言樣本振幅的平方求和并將所得的能量和閾值比較,執(zhí)行語言檢測。在一個(gè)實(shí)施例中,閾值根據(jù)背景噪聲電平的變化而改變。上述美國專利號(hào)5,414,796中描述了典型的可變閾值語言活動(dòng)性檢測器。一些無聲的語言聲很可能是極低能量樣本,它可能被當(dāng)做背景噪聲而錯(cuò)誤編碼。為了防止這種情況的發(fā)生,使用低能量樣本的頻譜傾斜,以區(qū)別無聲語言和背景噪聲,如上述美國專利號(hào)5,414,796中所描述的。
在檢測幀的能量之后,語言編碼器執(zhí)行步驟404。在步驟404中,語言編碼器確定檢測到的幀能量是否足以將幀分類為包含語言信息。如果檢測到的幀能量低于預(yù)定的閾值等級(jí),那么語言編碼器執(zhí)行步驟406。在步驟406中,語言編碼器將幀作為背景噪聲(也就是無語言或靜音)編碼。在一個(gè)實(shí)施例中,以1/8速率或1kbps將背景噪聲幀編碼。如果在步驟404中檢測到的幀能量符合或超過預(yù)定的閾值等級(jí),那么幀被分類為語言,語言編碼器執(zhí)行步驟408。
在步驟408中,語言編碼器確定幀是否為無聲語言,也就是語言編碼器測試幀的周期性。各種已知的周期確定方法包括如使用零交叉和使用規(guī)一化自相關(guān)函數(shù)(NACF)。尤其,上述美國專利號(hào)5,911,128中和美國申請(qǐng)序號(hào)09/217,341中描述了使用零交叉和NACF檢測周期。此外,以上用于區(qū)別有聲語言和無聲語言的方法被結(jié)合入電信工業(yè)協(xié)會(huì)臨時(shí)標(biāo)準(zhǔn)TIA/EIA IS-127和TIA/EIA IS-733。如果在步驟408中確定幀是無聲語言,語言編碼器執(zhí)行步驟410。在步驟410中,語言編碼器將幀作為無聲語言編碼。在一個(gè)實(shí)施例中,以1/4速率或2.6kbps將無聲語言幀編碼。如果在步驟408中,確定幀不是無聲語言,語言編碼器執(zhí)行步驟412。
在步驟412中,語言編碼器使用本領(lǐng)域中熟知的周期檢測方法確定幀是否是過渡語言,如上述美國專利號(hào)5,911,128中所描述的方法。如果確定幀是過渡語言,語言編碼器執(zhí)行步驟414。在步驟414中,將幀作為過渡語言(也就是從無聲語言過渡到有聲語言)編碼。在一個(gè)實(shí)施例中,根據(jù)多脈沖內(nèi)插編碼法將過渡語言幀編碼,1999年5月7日提交的美國申請(qǐng)序號(hào)09/307,294題為“MULTIPULSE INTERPOLATIVE CODING OF TRANSITION SPEECH FRAMES”的申請(qǐng)中描述了該方法,該申請(qǐng)轉(zhuǎn)讓給了本發(fā)明的受讓人,并通過引用全面結(jié)合于此。在另一實(shí)施例中,以全速率或13.2kbps將過渡語言幀編碼。
如果在步驟412中語言編碼器確定幀不是過渡語言,那么語言編碼器執(zhí)行步驟416。在步驟416中,語言編碼器將幀作為有聲語言編碼。在一個(gè)實(shí)施例中,可以以半速率或6.2kbps將有聲語言幀編碼。也可以以全速率或13.2kbps(或者在8k CELP編碼器中以全速率8kbps)將有聲語言幀編碼。然而,本領(lǐng)域熟練的技術(shù)人員將理解以半速率將有聲幀編碼,通過開發(fā)有聲幀的穩(wěn)態(tài)本質(zhì),允許編碼器節(jié)省有用的帶寬。此外,不考慮有聲語言編碼所用的速率,最好使用來自過去幀的信息將有聲語言編碼,因此稱為預(yù)測編碼。
本領(lǐng)域熟練的技術(shù)人員應(yīng)該理解遵循圖5的步驟可以將語言信號(hào)或相應(yīng)的LP剩余編碼。從圖6A的曲線圖中可以看出作為時(shí)間函數(shù)的噪聲、無聲、過渡和有聲語言的波形特征。從圖6B的曲線圖中可以看出作為時(shí)間函數(shù)的噪聲、無聲、過渡和有聲LP剩余的波形特征。
如圖7所示,在一個(gè)實(shí)施例中,原型音調(diào)周期(PPP)語言編碼器500包括反向?yàn)V波器502、原型提取器504、原型量化器506、原型去量化器508、內(nèi)插/合成模塊510、和LPC合成模塊512。語言編碼器500最好作為DSP的一部分實(shí)現(xiàn),并存在于如PCS或蜂窩電話系統(tǒng)的用戶單元或基站中,或者在衛(wèi)星系統(tǒng)的用戶單元或網(wǎng)關(guān)中。
在語言編碼器500中,數(shù)字化語言信號(hào)s(n)被提供給反向LP濾波器502,其中n是幀號(hào)。在特殊實(shí)施例中,幀長為20ms。根據(jù)以下等式計(jì)算反向?yàn)V波器A(z)的傳遞函數(shù)A(z)=1-a1z-1-a2z-2-...-aPz-P,其中系數(shù)aI是濾波器抽頭,它具有根據(jù)已知方法選出的預(yù)定值,上述美國專利號(hào)5,414,796中和美國申請(qǐng)序號(hào)09/217,494中描述了該方法,這兩個(gè)申請(qǐng)都通過引用全面結(jié)合于此。數(shù)字p表示反向LP濾波器502用于預(yù)測目的的先前樣本數(shù)。在特定的實(shí)施例中,p設(shè)置為10。
反向?yàn)V波器502將LP剩余信號(hào)r(n)提供給原型提取器504。原型提取器504從當(dāng)前幀中提取原型。原型是當(dāng)前幀的一部分,內(nèi)插/合成模塊510用類似地位于先前幀中的原型線性內(nèi)插入當(dāng)前幀,為了在解碼器處重建LP剩余信號(hào)。
原型提取器504將原型提供給原型量化器506,量化器根據(jù)本領(lǐng)域中所熟知的各種量化技術(shù)中的任何一種將原型量化??梢酝ㄟ^查表(未圖示)獲得的量化值被裝配成用于在信道上發(fā)送的數(shù)據(jù)包,該數(shù)據(jù)包包括滯后和其它碼本參數(shù)。該數(shù)據(jù)包被提供給發(fā)射機(jī)(未圖示),并通過信道被發(fā)射到接收機(jī)(未圖示)。也就是說反向LP濾波器502、原型提取器504、和原型量化器506執(zhí)行當(dāng)前幀的PPP分析。
接收機(jī)接收數(shù)據(jù)包,并將數(shù)據(jù)包提供給原型去量化器508。原型去量化器508可以根據(jù)各種已知技術(shù)中的任何一種將數(shù)據(jù)包去量化。原型去量化器508將去量化的原型提供給內(nèi)插/合成模塊510。內(nèi)插/合成模塊510用類似地位于先前幀中的原型內(nèi)插原型,以重建當(dāng)前幀的LP剩余信號(hào)。最好根據(jù)美國專利號(hào)5,884,253和上述美國申請(qǐng)序號(hào)09/217,494中描述的已知方法實(shí)施內(nèi)插和幀的合成。
內(nèi)插/合成模塊510將重建的LP剩余信號(hào) 提供給LPC合成模塊512。LPC合成模塊512還接收來自發(fā)射數(shù)據(jù)包的線譜對(duì)(LSP)值,它用于執(zhí)行重建LP剩余信號(hào) 的LPC濾波,以產(chǎn)生當(dāng)前幀的重建語言信號(hào)(n)。在另一實(shí)施例中,在執(zhí)行當(dāng)前幀的內(nèi)插/合成之前,對(duì)于原型可以執(zhí)行語言信號(hào)(n)的LPC合成。也就是說原型去量化器508、內(nèi)插/合成模塊510、和LPC合成模塊512執(zhí)行當(dāng)前幀的PPP合成。
在一個(gè)實(shí)施例中,如圖7中PPP語言編碼器500的語言編碼器將閉環(huán)編碼性能測量應(yīng)用于每個(gè)編碼幀,并同時(shí)保持語言編碼器的目標(biāo)平均比特率。語言編碼器可以是PPP語言編碼器或任何其它類型的可以通過提高以每幀為基礎(chǔ)的編碼率以改進(jìn)話音質(zhì)量的低比特率語言編碼器。
在語言幀(在一個(gè)實(shí)施例,一個(gè)幀包括20ms的語言片段)的開環(huán)分類之后,使用預(yù)選速率Rp對(duì)語言幀編碼。然后執(zhí)行閉環(huán)性能參數(shù)。用預(yù)選速率Rp完全或部分編碼之后得到編碼器性能測量值。相關(guān)領(lǐng)域中熟知的典型性能測量值包括如信噪比(SNR)、編碼方案如PPP語言編碼器中的SNR預(yù)測、預(yù)測誤差量化SNR、相位量化SNR、振幅量化SNR、感覺SNR、和作為穩(wěn)態(tài)測量值的當(dāng)前和過去幀之間歸一化的互相關(guān)。如果性能測量值PNM低于閾值PNM TH,那么編碼率變化成期望編碼方案給出較佳質(zhì)量的值。通常,這意味著編碼率的變化是增加。1998年11月13日提交的美國申請(qǐng)序號(hào)09/191,643題為“CLOSED-LOOP VARIABLE-RATE MULTIMODE PREDICTIVE SPEECH CODER”的申請(qǐng)中描述了保持可變速率語言編碼器質(zhì)量的典型閉環(huán)分類方案,該申請(qǐng)轉(zhuǎn)讓給了本發(fā)明的受讓人,并通過引用全面結(jié)合于此。
性能測量值PNM最好用于更新當(dāng)前閾值PNM_TH周圍的閾值直方圖。直方圖用于用以下方式實(shí)現(xiàn)語言編碼器平均比特率的總體控制。語言編碼器計(jì)算W幀窗口上的運(yùn)行平均比特率,在W幀之后將運(yùn)行平均比特率清零,并再次計(jì)算下一W幀的運(yùn)行平均比特率。在一個(gè)W幀周期的末端,從目標(biāo)平均比特率AVR中減去平均比特率,將該差值除以初始預(yù)選的編碼率值Rp。
如果除法AVR/RP的商值NR是正的,累加PNM_TH右邊最初BR個(gè)區(qū)間或直方圖直條寬度(也就是與高于閾值的編碼率關(guān)聯(lián)的最初BR個(gè)區(qū)間)的直方圖值。最好選擇BR的值,使得累加值大于NR。然后,閾值PNM_TH增加等于DTH_HI*BR的乘積的量值,其中DTH_HI是每個(gè)區(qū)間的增加量。應(yīng)該注意到DTH_HI被首次初始化成適當(dāng)?shù)闹?。一個(gè)這種適當(dāng)?shù)闹凳?MAX_TH-PNM_TH)/HB(在下文中定義的參數(shù))。
如果商值NR是負(fù)的,累加PNM_TH左邊最初BL個(gè)區(qū)間的直方圖值。最好選擇BL的值,使得累加值大于-NR。然后閾值PNM_TH減小等于DTH_LO*BL的乘積的量值,其中DTH_LO是每個(gè)區(qū)間的減小量。應(yīng)該注意到DTH_LO被首次初始化成適當(dāng)?shù)闹怠R粋€(gè)這種適當(dāng)?shù)闹凳?PNM_TH-MIN_TH)/HB(下文中定義的參數(shù))。
性能閾值PNM_TH分別限制在最大值MAX_TH和最小值MIN_TH之間,如果這種最大值和最小值或它們的估計(jì)值已知。有利的是,如果需要每個(gè)區(qū)間的減小量DTH_LO和每個(gè)區(qū)間的增加量DTH_HI可以分別被更新成商值(PNM_TH-MIN_TH)/HB和(MAX_TH-PNM_TH)/HB,其中HB等于直方圖中區(qū)間數(shù)的一半。當(dāng)語言編碼器完成了使W幀窗口的平均比特率接近于目標(biāo)平均比特率AVR,所有直方圖中2HB個(gè)區(qū)間的直方圖值最好被清零。
在一個(gè)實(shí)施例中,在使用預(yù)選速率Rp編碼期間發(fā)生直方圖值的更新。這通過以下方式實(shí)現(xiàn)。首先,更新區(qū)間。設(shè)置閾值PNM_TH左邊HB個(gè)區(qū)間中的每一個(gè),對(duì)于閾值PNM_TH(閾值PNM_TH位于直方圖的中心)左邊的第i個(gè)區(qū)間等于PNM_TH-DTH_LO*i的差值。設(shè)置閾值PNM_TH右邊HB個(gè)區(qū)間中的每一個(gè),對(duì)于閾值PNM_TH右邊的第i個(gè)區(qū)間等于PNM_TH+DTH_LO*i的和。其次,將包括當(dāng)前性能測量值PNM的區(qū)間的直方圖值增加1。
在一個(gè)實(shí)施例中,如圖7中PPP語言編碼器500的語言編碼器執(zhí)行圖8流程圖所示的算法步驟,它將閉環(huán)編碼性能測量值PNM應(yīng)用于每個(gè)幀,并同時(shí)保持語言編碼器的目標(biāo)平均比特率。語言編碼器可以是PPP語言編碼器或任何其它類型的能通過增加以每幀為基礎(chǔ)的編碼率而改進(jìn)話音質(zhì)量的低比特率語言編碼器。
根據(jù)幀內(nèi)容的開環(huán)分類,以速率Rp將當(dāng)前語言幀編碼。然后對(duì)幀進(jìn)行閉環(huán)測試,使得如果語言編碼性能測量值PNM低于性能閾值PNM_TH,就提高編碼率。然后根據(jù)以下方法步驟調(diào)節(jié)閾值PNM_TH,以保持語言編碼器的運(yùn)行平均比特率,或接近于目標(biāo)平均比特率AVR。
在步驟600中,語言編碼器計(jì)算長度為W的幀窗口的運(yùn)行平均比特率。然后語言編碼器執(zhí)行步驟602。在步驟602中語言編碼器計(jì)算商值NR=(AVR-運(yùn)行平均比特率)/Rp。然后語言編碼器執(zhí)行步驟604。在步驟604中語言編碼器確定NR是否大于或等于零。如果NR大于或等于零,語言編碼器執(zhí)行步驟606。如果相反,NR不大于或等于零,語言編碼器執(zhí)行步驟608。
在步驟606中語言編碼器累加PNM_TH(它位于直方圖的中心)右邊最初BR個(gè)直方圖區(qū)間值,選擇BR使得累加值大于NR。然后語言編碼器執(zhí)行步驟610。在步驟610中語言編碼器將PNM_TH設(shè)置為等于PNM_TH和DTH_HI*BR之和,其中DTH_HI等于每個(gè)直方圖區(qū)間的增加量。然后語言編碼器執(zhí)行步驟612。
在步驟608中語言編碼器累加PNM_TH左邊最初BL個(gè)直方圖區(qū)間值,選擇BL使得累加值大于-NR。然后語言編碼器執(zhí)行步驟614。在步驟614中語言編碼器將PNM_TH設(shè)置為等于PNM_TH和DTH_LO*BR之差,其中DTH_LO等于每個(gè)直方圖區(qū)間的減少量。然后語言編碼器執(zhí)行步驟612。
如果需要可以在步驟612之前執(zhí)行分別將PNM_TH限制在最大值MAX_TH和最小值MIN_TH之間的步驟。此外,如果需要可以在步驟612之前,執(zhí)行將每個(gè)區(qū)間減小量DTH_LO和每個(gè)區(qū)間增加量DTH_HI分別更新為商值(PNM_TH-MIN_TH)/HB和(MAX_TH-PNM_TH)/HB的步驟,其中HB等于直方圖中區(qū)間數(shù)的一半。應(yīng)該注意到DTH_HI和DTH_LO應(yīng)該首次被初始化成適當(dāng)?shù)闹担绶謩e為(MAX_TH-PNM_TH)/HB和(PNM_TH-MIN_TH)/HB。
在步驟612中,語言編碼器將所有2HB個(gè)直方圖區(qū)間的直方圖值清零。然后語言編碼器回到步驟600計(jì)算下一W幀的運(yùn)行平均比特率。
在一個(gè)實(shí)施例中,語言編碼器執(zhí)行圖9流程圖所示的算法步驟,在以編碼率Rp對(duì)W幀中每個(gè)幀的語言幀編碼期間更新直方圖區(qū)間值。在步驟700中,語言編碼器設(shè)置閾值PNM_TH左邊的所有直方圖區(qū)間,對(duì)于閾值PNM_TH(閾值PNM_TH位于直方圖的中心)左邊的第i個(gè)區(qū)間等于PNM_TH-DTH_LO*i的差值。然后語言編碼器執(zhí)行步驟702。步驟702中語言編碼器設(shè)置閾值PNM_TH右邊的所有直方圖區(qū)間,對(duì)于閾值PNM_TH右邊的第i個(gè)區(qū)間等于PNM_TH+DTH_HI*i的和。然后語言編碼器執(zhí)行步驟704。在步驟704中,語言編碼器將包括當(dāng)前性能測量值PNM的直方圖區(qū)間值增加1。
因此,已經(jīng)描述了語言編碼器中保持目標(biāo)比特率的新穎方法和裝置。本領(lǐng)域熟練的技術(shù)人員將理解結(jié)合這里所揭示實(shí)施例描述的各種說明性邏輯模塊和算法步驟可以通過以下裝置實(shí)現(xiàn)或執(zhí)行數(shù)字信號(hào)處理器(DSP)、專用集成電路(ASIC)、離散門或晶體管邏輯、離散硬件如寄存器和FIFO,執(zhí)行一組固件指令的處理器,或任何傳統(tǒng)可編程軟件模塊和處理器。處理器最好是微處理器,但是另外處理器也可以是任何傳統(tǒng)的處理器、控制器、微控制器、或狀態(tài)機(jī)。軟件模塊可駐留在RAM存儲(chǔ)器、快閃存儲(chǔ)器、寄存器或本領(lǐng)域中所熟知的任何其它形式的可寫存儲(chǔ)媒介中。本領(lǐng)域熟練的技術(shù)人員還應(yīng)該理解以上描述中參考的數(shù)據(jù)、指令、命令、信息、信號(hào)、比特、碼元和碼片最好用電壓、電流、電磁波、磁場或粒子、光場或粒子或它們的任何其它組合表示。
因此顯示并描述了本發(fā)明的較佳實(shí)施例。然而對(duì)本領(lǐng)域熟練的技術(shù)人員顯而易見的是不脫離本發(fā)明的精神和范圍可以對(duì)這里揭示的實(shí)施例進(jìn)行各種變化。因此,本發(fā)明只受以下權(quán)利要求書的限制。
權(quán)利要求
1.在以變化的編碼率將多個(gè)幀編碼的語言編碼器中,保持語言編碼器目標(biāo)平均比特率的方法,其特征在于,包括以下步驟以預(yù)選編碼率將幀編碼;計(jì)算預(yù)定個(gè)數(shù)編碼幀的運(yùn)行平均比特率;從預(yù)定目標(biāo)平均比特率中減去運(yùn)行平均比特率,以獲得差值;用差值除以預(yù)選的編碼率以獲得商值;如果商值小于零,累加第一預(yù)定個(gè)數(shù)小于當(dāng)前性能閾值的語言編碼器性能閾值的可能具體值,以產(chǎn)生第一累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第一累加值大于商值的絕對(duì)值;如果商值小于零,從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值具體值的第一預(yù)定個(gè)數(shù),以獲得新的性能閾值;如果商值大于或等于零,累加第二預(yù)定個(gè)數(shù)大于當(dāng)前性能閾值的語言編碼器性能閾值的可能具體值,以產(chǎn)生第二累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第二累加值大于商值;和如果商值大于或等于零,將每個(gè)語言編碼器性能閾值具體值的增加量和語言編碼器性能閾值具體值的第二預(yù)定個(gè)數(shù)的乘積與當(dāng)前性能閾值相加,以獲得新的性能閾值。
2.如權(quán)利要求1所述的方法,其特征在于,還包括以下步驟,將語言編碼器性能和預(yù)定性能測量值比較,并且如果幀的語言編碼器性能低于當(dāng)前性能閾值,則調(diào)節(jié)幀的預(yù)選編碼率。
3.如權(quán)利要求2所述的方法,其特征在于,調(diào)節(jié)步驟包括提高幀的編碼率。
4.如權(quán)利要求2所述的方法,其特征在于,在編碼步驟期間,還包括以下步驟對(duì)于每個(gè)小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值的具體值和當(dāng)前性能閾值之間的語言編碼器性能閾值具體值數(shù)加1,并將語言編碼器性能閾值的具體值設(shè)置成等于該減法的結(jié)果;對(duì)于每個(gè)大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,將兩項(xiàng)的乘積加上當(dāng)前性能閾值,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的增加量,另一項(xiàng)是語言編碼器性能閾值的具體值和當(dāng)前性能閾值之間的語言編碼器性能閾值具體值數(shù)加1,并將語言編碼器性能閾值的具體值設(shè)置成等于該加法的結(jié)果;和將對(duì)應(yīng)于當(dāng)前語言編碼器性能的語言編碼器性能閾值的具體值增加1。
5.如權(quán)利要求1所述的方法,其特征在于,還包括從幀的開環(huán)分類中獲得預(yù)選編碼率的步驟。
6.如權(quán)利要求1所述的方法,其特征在于,還包括使當(dāng)前性能閾值限制于最大值的步驟。
7.如權(quán)利要求1所述的方法,其特征在于,還包括使當(dāng)前性能閾值限制于最小值的步驟。
8.如權(quán)利要求1所述的方法,其特征在于,還包括對(duì)每個(gè)語言編碼器性能閾值具體值的減小量和每個(gè)語言編碼器性能閾值具體值的增加量賦初值的步驟。
9.如權(quán)利要求1所述的方法,其特征在于,還包括在執(zhí)行加或減步驟之后,對(duì)所有語言編碼器性能閾值的具體值清零的步驟。
10.如權(quán)利要求1所述的方法,其特征在于,幀是語言幀。
11.如權(quán)利要求1所述的方法,其特征在于,幀是線性預(yù)測剩余幀。
12.如權(quán)利要求1所述的方法,其特征在于,語言編碼器位于無線通信系統(tǒng)的用戶單元中。
13.一種語言編碼器,其特征在于,包括以預(yù)選編碼率將幀編碼的裝置;計(jì)算預(yù)定個(gè)數(shù)編碼幀的運(yùn)行平均比特率的裝置;從預(yù)定目標(biāo)平均比特率中減去運(yùn)行平均比特率以獲得差值的裝置;用差值除以預(yù)選的編碼率以獲得商值的裝置;累加第一預(yù)定個(gè)數(shù)可能小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第一累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第一累加值大于商值的絕對(duì)值的裝置;從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值具體值的第一預(yù)定個(gè)數(shù),如果商值小于零,獲得一新的性能閾值的裝置;累加第二預(yù)定個(gè)數(shù)可能大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第二累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第二累加值大于商值的裝置;和將每個(gè)語言編碼器性能閾值具體值的增加量和語言編碼器性能閾值具體值的第二預(yù)定個(gè)數(shù)的乘積與當(dāng)前性能閾值相加,如果商值小于零,獲得一新的性能閾值。
14.如權(quán)利要求13所述的語言編碼器,其特征在于,還包括將語言編碼器性能和預(yù)定性能測量值比較的裝置,和如果幀的語言編碼器性能低于當(dāng)前性能閾值,調(diào)節(jié)幀的預(yù)選編碼率的裝置。
15.如權(quán)利要求14所述的語言編碼器,其特征在于,調(diào)節(jié)裝置包括提高幀的編碼率的裝置。
16.如權(quán)利要求14所述的語言編碼器,其特征在于,還包括在幀的編碼期間,對(duì)于每個(gè)小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值的具體值和當(dāng)前性能閾值之間的語言編碼器性能閾值具體值數(shù)加1,并將語言編碼器性能閾值的具體值設(shè)置成等于該減法結(jié)果的裝置;在幀的編碼期間,對(duì)于每個(gè)大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,將兩項(xiàng)的乘積加上當(dāng)前性能閾值,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的增加量,另一項(xiàng)是語言編碼器性能閾值的具體值和當(dāng)前性能閾值之間的語言編碼器性能閾值具體值數(shù)加1,并將語言編碼器性能閾值的具體值設(shè)置成等于該加法結(jié)果的裝置;和在幀的編碼期間,將對(duì)應(yīng)于當(dāng)前語言編碼器性能的語言編碼器性能閾值的具體值增加1的裝置。
17.如權(quán)利要求13所述的語言編碼器,其特征在于,還包括從幀的開環(huán)分類中獲得預(yù)選編碼率的裝置。
18.如權(quán)利要求13所述的語言編碼器,其特征在于,還包括使當(dāng)前性能閾值限制于最大值的裝置。
19.如權(quán)利要求13所述的語言編碼器,其特征在于,還包括使當(dāng)前性能閾值限制于最小值的裝置。
20.如權(quán)利要求13所述的語言編碼器,其特征在于,還包括對(duì)每個(gè)語言編碼器性能閾值具體值的減小量和每個(gè)語言編碼器性能閾值具體值的增加量賦初值的裝置。
21.如權(quán)利要求13所述的語言編碼器,其特征在于,還包括在調(diào)節(jié)當(dāng)前性能閾值之后,對(duì)所有語言編碼器性能閾值的具體值清零的裝置。
22.如權(quán)利要求13所述的語言編碼器,其特征在于,幀是語言幀。
23.如權(quán)利要求13所述的語言編碼器,其特征在于,幀是線性預(yù)測剩余幀。
24.如權(quán)利要求13所述的語言編碼器,其特征在于,語言編碼器位于無線通信系統(tǒng)的用戶單元中。
25.閾值語言編碼器,其特征在于,包括分析模塊,它被構(gòu)造成分析多個(gè)幀;和量化模塊,它耦合到分析模塊,并被構(gòu)造成將分析模塊產(chǎn)生的幀參數(shù)編碼,其中量化模塊還被進(jìn)一步構(gòu)造成以預(yù)選編碼率將幀編碼;計(jì)算預(yù)定個(gè)數(shù)編碼幀的運(yùn)行平均比特率;從預(yù)定目標(biāo)平均比特率中減去運(yùn)行平均比特率,以獲得差值;用差值除以預(yù)選的編碼率以獲得商值;累加第一預(yù)定個(gè)數(shù)可能小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第一累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第一累加值大于商值的絕對(duì)值;從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值具體值的第一預(yù)定個(gè)數(shù),如果商值小于零,獲得一新的性能閾值;累加第二預(yù)定個(gè)數(shù)可能大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,以產(chǎn)生第二累加值,選擇語言編碼器性能閾值具體值的預(yù)定個(gè)數(shù),使得第二累加值大于商值;和將每個(gè)語言編碼器性能閾值具體值的增加量和語言編碼器性能閾值具體值的第二預(yù)定個(gè)數(shù)的乘積與當(dāng)前性能閾值相加,如果商值大于或等于零,獲得一新的性能閾值。
26.如權(quán)利要求25所述的語言編碼器,其特征在于,量化模塊還被構(gòu)造成將語言編碼器性能和預(yù)定性能測量值比較,并且如果幀的語言編碼器性能低于當(dāng)前性能閾值,就調(diào)節(jié)幀的預(yù)選編碼率。
27.如權(quán)利要求26所述的語言編碼器,其特征在于,以增加調(diào)節(jié)編碼率。
28.如權(quán)利要求26所述的語言編碼器,其特征在于,量化模塊還被構(gòu)造成在幀的編碼期間,對(duì)于每個(gè)小于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,從當(dāng)前性能閾值中減去兩項(xiàng)的乘積,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的減小量,另一項(xiàng)是語言編碼器性能閾值的具體值和當(dāng)前性能閾值之間的語言編碼器性能閾值具體值數(shù)加1,并將語言編碼器性能閾值的具體值設(shè)置成等于該減法的結(jié)果;在幀的編碼期間,對(duì)于每個(gè)大于當(dāng)前性能閾值的語言編碼器性能閾值的具體值,將兩項(xiàng)的乘積加上當(dāng)前性能閾值,其中一項(xiàng)是每個(gè)語言編碼器性能閾值具體值的增加量,另一項(xiàng)是語言編碼器性能閾值的具體值和當(dāng)前性能閾值之間的語言編碼器性能閾值具體值數(shù)加1,并將語言編碼器性能閾值的具體值設(shè)置成等于該加法的結(jié)果;和在幀的編碼期間,將對(duì)應(yīng)于當(dāng)前語言編碼器性能的語言編碼器性能閾值的具體值增加1。
29.如權(quán)利要求25所述的語言編碼器,其特征在于,量化模塊還被構(gòu)造成從幀的開環(huán)分類中獲得預(yù)選編碼率。
30.如權(quán)利要求25所述的語言編碼器,其特征在于,量化模塊還被構(gòu)造成使當(dāng)前性能閾值限制于最大值。
31.如權(quán)利要求25所述的語言編碼器,其特征在于,量化模塊還被構(gòu)造成使當(dāng)前性能閾值限制于最小值。
32.如權(quán)利要求25所述的語言編碼器,其特征在于,量化模塊還被構(gòu)造成對(duì)每個(gè)語言編碼器性能閾值具體值的減小量和每個(gè)語言編碼器性能閾值具體值的增加量賦初值。
33.如權(quán)利要求25所述的語言編碼器,其特征在于,量化模塊還被構(gòu)造成在調(diào)節(jié)當(dāng)前性能閾值之后,將所有語言編碼器性能閾值的具體值清零。
34.如權(quán)利要求25所述的語言編碼器,其特征在于,幀是語言幀。
35.如權(quán)利要求25所述的語言編碼器,其特征在于,幀是線性預(yù)測剩余幀。
36.如權(quán)利要求25所述的語言編碼器,其特征在于,語言編碼器位于無線通信系統(tǒng)的用戶單元中。
全文摘要
保持語言編碼器中目標(biāo)比特率的方法和裝置包括語言編碼器,用于以預(yù)選編碼率對(duì)幀編碼,計(jì)算預(yù)定個(gè)數(shù)編碼幀的運(yùn)行平均比特率;從預(yù)定目標(biāo)平均比特率中減去運(yùn)行平均比特率,并用差值除以預(yù)選編碼率。如果商值是負(fù)的,累加預(yù)定個(gè)數(shù)小于當(dāng)前性能閾值的語言編碼器性能閾值的可能具體值,累加數(shù)大于商值的絕對(duì)值。如果商值是正的,累加預(yù)定個(gè)數(shù)大于當(dāng)前性能閾值的語言編碼器性能閾值的可能具體值,累加數(shù)大于商值。
文檔編號(hào)G10L19/04GK1361912SQ00810597
公開日2002年7月31日 申請(qǐng)日期2000年7月19日 優(yōu)先權(quán)日1999年7月19日
發(fā)明者S·曼祖那什, A·P·德加科 申請(qǐng)人:高通股份有限公司