專利名稱:實現介于兩種長時預測模型之間最優編碼的方法和裝置的制作方法
實現介于兩種長時預測模型之間最優編碼的方法和裝置本發明涉及數字音頻信號的壓縮編/解碼,尤其涉及語音信號和/或多媒體信號傳輸或者存儲應用。本發明的目的在于基于至少一個第一長時預測(Long Term Prediction, LTP)模型的參數有效地確定第二長時預測模型的參數。壓縮編碼器使用數字音頻信號的特性,例如在短時預測濾波器中利用的數 字音頻信號的局部平穩性(Local Stationarity),以及在LTP長時預測濾波器 中利用的數字音頻信號的諧振結構(harmonic structure)。尤其是,語音信號 中的濁音(例如元音),由于聲帶的震動,具有長時相關性。長時相關性的模 型用LTP濾波器P(z)表示,使用如下類型的合成濾波器可以獲取諧振結構ir 1 —尸(z)最簡單形式的長時預測濾波器是濾波器具有單一系數)S (也稱增益)和整 數延遲T,從而P(z)^z—t。延遲T也稱為"基音"周期,或者簡單地稱為基 音)。目前,更為精細的模型針對- 使用多個系數(稱為"多抽頭(multitap)")建模f<formula>formula see original document page 8</formula>- 或者使用多個延遲建模<formula>formula see original document page 8</formula>-或者使用分數延遲,該分數延遲利用內插濾波器/^) = ^|^力>-"-"'M吏用過,=0抽樣和欠抽樣,其中,對于具有分辨率(resolution)為1/D的延遲(T+l/D), 系數S(/)由戶力hUZ)-l),02Bi)-l給出,/w,是長度為2ID+1的內插濾波器。濾波器的參數(延遲和增益)隨著被編碼的信號的變化而變化并且對于同 一個信號隨著時間而修正。例如,在語音編碼中,尋找基音周期的范圍(span) 以覆蓋人的聲音的基本頻率的范圍(從低音到高音)。對于同一個說話的人而 言,該頻率也會暫時發生變化。同樣地,濾波器的系數也
對于編碼,P(Z)的參數通過開環分析、或者閉環分析、或者二者結合進行 測定。開環分析是通過使要被建模的信號中的預測錯誤最小而執行的。閉環分 析(稱為"綜合分析")是使要被建模的語音信號和合成信號之間通常加權后 的均方誤差最小。通常,先用開環搜索測定基音的第一估計值,稱為"開環基音"。然后,在這個錨定值(anchoring value)周圍有限的范圍內進行基于綜 合分析的搜索,以便得到基音的更精確的值。這些分析在抽樣的區塊(blocksof samples)上實現。開環分析的樣本塊長度和閉環分析的抽樣的區塊長度不需 要相等。通常,針對多個閉環分析執行單個開環分析。對于任一個LTP模型(單抽頭(monotap)或者多抽頭),在計算復雜度方 面,測定LTP參數的開銷非常大。通常包含跟在抽樣的幾個子區域(也稱為 子幀)上的多個閉環之后的抽樣的大的區塊上的一個開環。尤其對于編碼,對 于諧振滯后(harmonic lag)的開環搜索是開銷非常大的操作。通常,需要計 算大量值的信號的(實際上是在延遲變化的范圍上)自相關函數。在根據UIT-T G.723.1標準的編碼器中,延遲的這個范圍包含125個整數延遲(從18到142), 并且開環延遲每15ms進行估計(也就是針對120個抽樣值的區塊)。UIT-T G.729標準中的8k比特/秒編碼器,每10ms執行一次開環分析(在每一個具 有80個抽樣值的區塊上),并且探測(explore) 124個整數延遲的范圍(從 20到143)。這個操作占該類型編碼LTP分析的復雜度的近70。/。。即使閉環針對開環中產生的延遲,它的計算和資源開銷也非常大。它需要 生成自適應激勵(adptive excitation)以及它們的濾波。例如,在G.723.1編碼 中,使用多抽頭LTP模型,閉環分析通過探測多個候選基音值的增益矢量庫, 聯合測定每一個子幀的矢量增益(i3/)和滯后A (假設侯選基音的情況下)。 這個分析將近占用5.3k比特/秒G.723.1編碼器一半的復雜度。當多個編碼必須由同一個處理單元執行時,例如負責并行管理眾多通信的 網關,或者發布眾多多媒體內容的服務器,LTP分析的復雜度特別重要。在網 絡上運行的壓縮格式的多樣性會使復雜度的問題顯得更為突出。需要面對 (envisage)多個或者級聯(或者"代碼轉換"),或者并行(多格式編碼或 者多模式編碼)的編碼。在傳輸鏈中,當編碼器發送的壓縮信號幀不能用該格 式繼續傳送時,典型的方式是采用代碼轉換。代碼轉換可將幀轉換為與其余的 傳輸鏈兼容的另外一種格式。最基本的解決方案(并且目前最普通)是相鄰地
連接一個解碼器和一個編碼器。第一種格式的壓縮幀到達后解壓縮。解壓縮后 的信號重新壓縮為能夠被其余的傳輸鏈接受的第二種格式。一個解碼器和一個編碼器的級聯稱為串聯(tandem)。然而,這種解決方案,從復雜度(特別是 由于重新編碼)來看,開銷非常大,并且降低了質量,第二次編碼基于解碼后 的信號完成,解碼后的信號是原始信號的衰減版本(degraded version)。另外, 幀在到達目的地之前,可能遇到多個串聯的解碼器和編碼器,因此會進一步增 加計算的成本,并且進一步增加質量的損耗。再進一步講,與各串聯操作相關 的延遲累積,并且對通信的交互性有害。對于多格式壓縮系統而言,同一內容需要壓縮成幾種格式(尤其是為了適 應接入條件,網絡,各種各樣終端用戶的終端,使用不同的格式廣播同一內容 的內容服務器的情形下),隨著需求的格式數量的增加,多編碼操作變得極其 復雜,并且可能使系統的資源很快飽和。另一種并行多編碼的情形是具有后驗 決定(posteriori decision)的多模式壓縮,根據后驗決定,在每一個要被編碼 的信號段,執行多種壓縮模式,選擇能夠最優化給定準則或者得到最好吞吐量 /失真折衷的壓縮方式。這里,每一種壓縮模式的復雜度限制了它們的數量和/ 或導致嚴格受限數量的模式能夠被選擇先驗(priori)。目前,絕大多數的多編碼操作沒有充分考慮編碼格式之間的相似性,然而 這可以減少復雜度和計算延遲,同時限制引入的退化。對于同一編碼格式的參 數,編碼器之間的區別在于模型,程序和/或計算的頻率,或者是量化。通常,現有的技術方案,努力通過使用第一格式選擇的參數限制針對第二 LTP模型的參數所探測的值的數量,來減少針對第二格式的LTP搜索的復雜 度。兩個單抽頭LTP模型之間的代碼轉換是最簡單的情形。目前提出的絕大 程序關于延遲之間的代碼轉換,當兩個模型是相同的(相同的延遲庫和相同的 子幀長度)在實際信號級(一種說法為"局部"串聯)執行LTP增益的代碼 轉換,將延遲的二進制字段從一個比特流簡單地復制到另外一個比特流已經足 夠了。當庫因它們的分辨率(整數或者分數1/3, 1/6等),和/或它們的值的 范圍而不同時,使用可能的變換(transformation),代碼轉換到二進制或者參 數域。變換可能是量化,截斷(truncation),加倍(doubling)或者分裂(spliting)。 當兩種格式的子幀的長度不同,可能提供延遲的內插。例如,內插重疊輸出子
幀的第一格式的延遲。當后者與先前子幀得到的延遲比較接近時,才可能會使 用內插的延遲,否則執行傳統的搜索。另外一個不用內插的直接方法在于從第 一格式的這些延遲中選擇一個延遲。該選擇依據多個準則進行上一子幀,和 第二格式的子幀具有最多的相同抽樣值的子幀,或者使依據LTP增益的準則 最大化的子幀。測定的延遲為針對第二格式延遲搜索的錨定值。這個延遲可能 用作第二格式開環延遲,在該開環延遲周圍進行傳統的或者受限的閉環搜索,或者作為它的第一估計值,或者作為延遲軌跡(delaytrajectory)的錨定。對于在單抽頭LTP模型和多抽頭LTP模型之間代碼轉換的情形,由于模 型的差異,目前僅有的實施只是在信號域。絕大部分現有的代碼轉換技術局限 在,通過選擇第一格式的一個延遲,或者這些延遲的一個內插作為開環延遲, 從而減少第二格式開環的復雜度。然而,已經提出了一些技術,也減少閉環的 復雜度。在文件W0-03058407中,單型模型(monotype model)的分數延遲幾'通 過基于多抽頭模型的系數(A)的矢量測定,如下式所示在參考文件[l]中,"An Efficient Transcoding Algorithm for G.723.1 and G.729A Speech Coders (—種G.723.1和G.729A語音編碼器的有效代碼轉換算 法),,,Sung-Wan Yoon, Sung-Kyo Jung, Young-Cheol Park, and Dae-Hee Youn, Proc.Eurospeech2001, pp.2499-2502,多抽頭模型的增益矢量的閉環搜索限制 在多抽頭增益庫(dictionary of multitap gains)中由第一格式的單抽頭模型的增 益測定的子集中。測定以及子集的構造按照下述方法實現計算增益庫中每一 個矢量的全局增益(global gain);在對應庫中170個矢量的170個全局增益 的基礎上,建立8個子集,這些子集中的單個子集按照第一單抽頭模型的LTP 增益選擇。在依據"Transcoding algorithm for G723.1 and AMR Speech Coders: for Interoperability between VoIP and Mobile Networks" (G723.1和AMR語音編碼 器的代碼轉換算法針對VoIP和移動網絡之間的互操作性),Sung-WanYoon andal., Proc. Eurospeech 2003, pp. 1101-1104的參考文件[2]的變量中,子集
的建立通過如下方法學習NB-AMR編碼器的單抽頭增益的變量范圍被分為8 個子部分,接著,對于每一個子部分,在NB-AMR串聯上統計分析(statistical study)可測定G.723.1標準的編碼器的庫中的M個增益矢量。這些增益矢量 從統計的角度講具有最大的可能性。對于包含85個矢量的庫,M等于40;對 于包含170個矢量的庫,M等于85。在搜索增益的最優矢量期間,對庫的探 測僅限于與NB-AMR編碼器增益所屬的子部分有關的子集。就發明人目前的了解,還沒有兩種多抽頭之間LTP模型之間的代碼轉換 技術。如上所述,目前絕大部分的技術方案只與單抽頭LTP模型有關。有些 技術建議了多抽頭模型和單抽頭模型之間的代碼轉換技術,但是僅限于減少搜 索第二格式開環延遲的復雜度。在僅有的少數一些減少閉環復雜度的建議方案中,其中一些基于將單抽頭 LTP濾波器(分數的或者其他的)近似為多抽頭LTP濾波器。例如,近似多 抽頭濾波器的情形通過非分數單抽頭濾波器Uz)-)fe-(^ ,估計增益)8和延遲抖動5,從而考慮所有的整數延遲T,使iU,(z^D)。利用單抽頭LTP模型的多抽頭LTP模型的近似在UIT-T G.723.1中已經 使用了,實際上是估計自適應預濾波器,并且還控制LTP濾波器的不穩定性。 在設計G.723.1標準的編碼器中所進行的研究表明,在延遲的寬范圍上,不是 總可能用相同的增益i3和相同的延遲抖動5很滿意地通過單抽頭濾波器近似 多抽頭濾波器。對于同一增益矢量(A),最優組合(iS, 5)的估計值作為延 遲T的函數變化很大。G.723.1標準的編碼器中,已經有可能克服這個困難, 因為穩定控制過程從估計的增益(它們可能很不相似)中挑選出最大的增益, 并且當在相關的延遲范圍上,當估計的增益極其不相同,或者延遲中的抖動太 不相似或者太大時,對于多抽頭模型的任一增益矢量禁用自適應預濾波器。如 果自適應預濾波模塊和長時預測濾波器不穩定性控制模塊能夠克服估計的困 難,并且不降低性能,這些優點更加難以用LTP分析模塊本身實現,LTP分 析模塊扮演著關于質量的重要角色。因此,參照所考慮的增益矢量和/或延遲, 為庫中170個條目(entry)中的每一個矢量計算的170個全局增益,參見上面 的現有技術[i],可能遠遠不是最優增益。同樣地,參照增益矢量(/U和/或延遲A,參考現有技術WO-03058407,分數延遲義'的計算可能導致分數延遲的不良無論是分析還是統計的方法,在大范圍的延遲上,利用單抽頭LTP濾波 器近似多抽頭LTP濾波器(或者相反的近似)太不精確。為了解決這個問題, 為了考慮增益/3和/或抖動5根據延遲T的變化,有可能需要對每一個延遲T 保存一對(i8, 5)。然而,這個解決方案因為需要為每一個增益矢量和范圍 上的每一個延遲保存一對()8, 5),所以在存儲方面開銷太大。在G.723.1 編碼器的多抽頭LTP濾波器近似中,具有125個延遲范圍,包括170個矢量 和85個矢量的兩個庫,將要存儲31875 (=125* (85+170))對。并且,該技術方案不能解決用單抽頭近似多抽頭太不精確甚至錯誤的情形。需要指出的 是,相反地,幾對(/ , 5)也可能構成多抽頭LTP濾波器的很好的近似。本發明目的在于改善這種狀況。首先,本發明的目的在于,從單系數(單抽頭)LTP模型切換到多系數(多 抽頭)LTP模型,反之亦然,以及在兩個多抽頭模型之間切換。特別是,本發 明提出了一種其復雜度可調的方法,尤其是作為在目標復雜度和所需質量之間 的理想折衷的函數。用于實施根據本發明的方法的設備對于級聯的多編碼(代 碼轉換)或者并行的多編碼(多編碼或者多模式編碼)是非常有用的。因此,本發明的第一個目的在于提供一種在通過實施根據第一格式編碼的 至少一個步驟獲得的信息的基礎上根據第二格式進行編碼的方法。尤其是對于 語音信號編碼,所述第一和第二格式通過試探包含備選參數的至少一個庫實施 搜索LTP長時預測參數的步驟,為了更精細地搜索LTP參數,第一和第二編 碼格式至少之一使用具有多系數的濾波(以上所述的"多抽頭")。根據本發明的一般概念,該方法包括以下步驟a) 定義第二編碼格式使用的至少一個庫的分級;b) 恢復在確定在根據第一格式的編碼過程中的LTP參數的之后得到的先 驗信息以選擇所述庫的至少一個分級;c) 將選擇分級應用到所述庫中的備選者上以選擇有限量的第一備選者;和d) 為了實施第二編碼,只在所述有限量的備選者中執行LTP搜索。 因此,本發明通過在庫中分級的定義和在庫的試探過程中使用這些分級而
與現有技術不同。通過研究下文中的詳細描述和所附的附圖,本發明其他的特征和優點將變 得非常明顯。
圖la是本發明提供的一種使用了用于根據第二格式編碼的設備的智能代 碼轉換系統的示意圖;圖lb是本發明提供的一種使用了參照第二格式的編碼設備的多編碼系統 示意圖;圖2是本發明提供的方法的主要步驟; 圖3是本發明提供通過編碼設備實施的器件的示意圖; 圖4a是CELP編碼器(代表"碼激勵線性預測")的示意圖; 圖4b是根據UIT-TG.729的編碼的LTP分析的步驟; 圖4c是根據UIT-T G.723.1 (6.3k比特/秒)標準的編碼器的LTP分析的 步驟;圖5a是根據UIT-T G.723.1標準(30ms)的編碼器的幀和根據UIT-T G.729 (10ms)的編碼器的幀之間的對應關系的示意圖;圖5b是根據G.729編碼器(5ms)的編碼器的子幀和根據G.723.1編碼器 (7.5ms)的子幀之間的對應關系的示意圖;圖6是基于G.723.1基音值的G.729的開環基音搜索; 圖7a和圖7b分別是在G.729編碼器的偶數(相應地奇數)子幀和來自根 據第一格式的編碼器的G.723.1編碼器的LTP參數序列之間的相互關聯;圖8是G.723.1 (右欄CD)的子幀與G.729 (左欄CG)的子幀之間的關 聯表;圖9a和圖9b是庫(初始,在圖9a中為85個矢量,在圖9b中為170個 矢量)中的試探的減小后的數量的直方圖(沿縱坐標是出現的數量),以及根 據CELP準則保證質量降低少于1 %;以及圖IO是在具體實施例中當構造幾個分級時的第二庫的N個元素的選擇的示意圖。
具體實施方式
因此本發明屬于級聯或者并行的多重編碼,或者使用單抽頭或者多抽頭的 建模以表示信號的長時預測的任何其他系統。在兩個模型中至少一個使用多抽 頭模型的情況中,本發明可以基于第一模型參數的知識確定第二模型的參數。 為方便起見,僅僅描述從第一模型到第二模型轉換的情況,但是應該理解,本發明還應用在從m (m>=l)個第一模型到n (n>=2)個第二模型的轉換的情 況中(其中m和n是自然數)。參照圖la和圖lb,進而考慮與兩個編碼系統COD1和COD2對應的信號 的兩個LTP模型的情況。這涉及特別是通過智能代碼轉換以級聯(圖la)從 第一編碼系統COD1到第二編碼系統COD2的轉換,或者通過優化多重編碼 (圖lb)以并行從第一編碼系統CODl到第二編碼系統COD2的轉換。第一 編碼器對給定信號(比如原始信號SQ)執行其編碼操作。從而,可以得到第 一編碼器選擇的表示為LTP1的LTP參數。該編碼器通過在編碼處理中其自身 的技術確定這些參數。第二編碼器COD2必須同樣地執行其編碼。在代碼轉換 的情況下,只有第一編碼器COD1生成的進而包含參數LTP1的二進制編碼的 二進制序列BS1對第二編碼器COD2是可用的。本發明從而可以應用于智能 代碼轉換。在多并行編碼的情況中,第一編碼器CODl可用的原始信號So (或 者衍生版本)對于第二編碼器COD2也是可用的,并且本發明可以應用于智能 多編碼。很明顯,本發明還可以應用于多并行編碼的具體情況中,即具有后驗 決定的多模式編碼。本發明屬于在兩個模型中至少一個是多抽頭模型的情況中,從另一 LTP 模型的至少一個LTP1參數確定表示為LTP2的LTP模型的參數。代替在其定 義集(或者"庫")中搜索第二編碼格式的參數,本發明現在參照圖2,提供 下述步驟-在第二編碼格式的庫DIC2 (圖2中的標號25),初始確定序列ORDl, ORD2,.....(圖2中的步驟25b),-基于第一編碼格式的至少一個參數LTP1,選擇第二格式的庫的至少一 個序列(DIC2)(步驟26)。-在步驟27中,獲得庫元素的有序的序列e,, ej2, ek2,......-有利的是,試探(exploration)限于已經分級的庫DIC2中的第一元素
e,, e/,(步驟29),優選地是在步驟28中根據所需的質量/復雜度折衷(目 標質量/允許的復雜度)選擇元素號碼。
這樣,應該理解,通過實施本發明,可以限制在第二編碼COD期間LTP 搜索所屬的第二庫DIC2的元件的數量,同時保證編碼COD2的高質量。在圖 2中,分別在第一編碼器COD1和第二編碼器COD2中執行的操作分為兩個模 塊20和24,庫DIC2 (標號25)為第二編碼器COD2可用的。在該側,在步 驟21中第一編碼器CODl使用至少其自已的庫DICl(步驟22)確定參數LTPl。 這樣,應該理解,第一編碼器COD1典型地基于原信號So確定其參數LTP1 的方法構成了先驗信息(priori information)(步驟23),第二編碼器使用該 信息對其庫DIC2分級。最后,通過在本發明的范圍內應用第二編碼器的庫的 分類獲得的參數LTP2 (步驟30)其本身將可以適于為根據又一第三編碼格式 (沒有示出)的庫分類服務,等等,以及進而為級聯代碼轉換或并行多編碼服 務。
應該注意,所給圖2僅僅是示例目的。例如,庫DIC2的元素e卩,e/, ek2,…, 的顯示并不是后面將看到的實際顯示。另外,在同一步驟中基本上結合執行在 作為質量/復雜度準則(步驟28)的函數的搜索中所要考慮的庫DIC2的分類 (步驟25b)和其元素的限制。最后,圖2中所示為第一編碼器CODl向第二 編碼器COD2發送先驗信息(步驟23)。然而,作為變型,第二編碼器COD2 可以從第一編碼器簡單地恢復第一編碼器已經確定的LTP1參數的二進制編 碼,并通過第一編碼器CODl使用的編碼類型和庫的具體知識獲得先驗信息。
圖3中所示為在本發明范圍內用于根據第二格式編碼的裝置。該裝置通過 根據第一格式實現編碼使用編碼信息(這里根據第一格式COD1從編碼恢復的 參數LTP1)。本發明范圍內的裝置包括,示例中所示的
-存儲器MEM,用于存儲對應表,該表作為由第一編碼格式確定的LTP1 參數的函數定義了第二編碼格式使用的庫的分級(orders)。
-諸如界面31的器件,用于恢復給出在根據第 一格式的編碼過程中的LTP1 參數基礎上的至少一個先驗信息的信號。
-在接收到所述信號時活動的器件32,用于查閱所述對應表并且選擇第二 格式的庫的至少一個分級。
-計算器件,比如處理器35,用于*根據所選的分級(order)對第二格式的庫33進行分級,從而由庫33 中選擇有限數量的最初的備選者;和*根據第二格式,并且如果適當的話用其他模塊34,通過僅僅在該有限 數量的備選者中執行LTP搜索,繼續編碼。當然,處理器35管理該設備的所有或者一些模塊。為此,其可以是計算 機程序產品驅動的。本發明進一步目的為該計算機程序產品,該產品存儲在處 理器單元的存儲器中,或者與所述處理單元的閱讀器協作的可移動介質上,或 者該產品是可以從遠程地址進行下載的,并且包含用于實現本發明方法的所有 或者一些步驟的指令。應該具體理解,在本發明范圍內,設備COD2可以直接恢復第一編碼器 CODl的LTPl參數,從而推導出所述的先驗信息,進而是其庫DIC2的分級, 或者,作為變型,從第一編碼器CODl直接接收關于其庫的分級的先驗信息。 在后面的情況中,第一編碼器CODl已經在本發明中起了具體作用。本發明的目的還在于一種系統,該系統包括第一編碼器和本發明范圍內的 設備。特別地,圖3中的設備可以加入到編碼系統中,該系統實現至少一個第 一和一個第二編碼格式。然后該系統包括至少一個用于根據第一格式COD1 編碼的設備,和用于在本發明范圍內編碼然后應用第二格式COD2的設備。因 此,本發明目的在于該系統。如圖la中所示,用于根據第一格式編碼的設備 和用于根據第二格式編碼的設備可以級聯設置,用于代碼轉換。作為變型,如 圖lb所示,用于根據第一格式編碼的設備和用于根據第二格式編碼的設備可 以并行設置,用于多重編碼。在本發明的實現中,假設第二編碼器COD2可以從第一編碼器COD1中 恢復(當后者己經確定參數LTP1時)使其能夠對它的庫DIC2分級的信息(見 圖2)。從而,可以僅在這樣分級的庫DIC2的第一元素(ei2,ej2)進行LTP搜 索,從而保持對第二編碼的高質量。有利的是,利用對第二庫DIC進行分級可以為要被試探的分級后的元素 的數量提供更大的彈性。然后,可能-自由調整質量/復雜度折衷;-另外對于給定復雜度,優化質量;-或者相反地,對于給定質量使復雜度最小化。
該調整可以在處理的開始時執行。還可以在要處理的每個區塊中執行,作 為第一編碼格式的參數和/或要被編碼的信號的特征的函數(例如,作為清濁音準則(voicing criterion)的函數)。對同一個區塊,復雜度還作為LTP子幀 的函數而變化。本發明提供了更大的彈性,從而可以動態分布第二編碼器的模 塊之間可用的計算能力和/或資源,從而處理LTP子幀。優選地,基于與第一LTP模型的參數相關聯的庫DIC1的初始劃分,確定 與第二LTP模型參數關聯的庫DIC2的分級。很明顯,分級的確定包括根據特 定準則對第二庫DIC2的元素進行分級。通過庫DIC2元素的目錄給出等級 (ranking)(或者"分級")。可以了解一下第一庫DIC1的劃分的幾種類型。第一示例是N個元素的 DIC1庫的元素的示例性劃分為大小為1的N個不相交的類。然后確定第二庫 的N個等級。可以選擇更精細的劃分,尤其是通過量化或者數據分類的公知 技術(矢量或標量)。有利的是,相似的分級可以一起構成組,該相當于修改第一庫的初始劃分, 以及隨后的第二庫的分級的數量。 一旦他們已經一起形成組,還可以重新計算 分級。用于確定第一庫劃分為N類和計算第二庫的N個分級的過程可以是迭 代的,而且在迭代的過程可以改變數字N。作為變型或者補充,限制用于存儲 第二庫的分級的存儲器,針對這些分級的每一個分級,選擇要被保持的元素的 最大數量,該數量可以根據第一庫的分級和/或分類而不同。在進一步變型中,第一庫的分類不必是不相交的。典型地,同一元素可以 與第二庫中多于一個分級相關聯。然后,分級的選擇和分級的組合可以考慮除 了第一庫的當前LTP參數以外的因素(factor)。開始,通過統計和/或分析研究確定適于第二庫的分級的數量和分級,作 為根據第一模型的LTP參數的逐次序列的函數。從而該研究為與第一格式的 LTP參數相關聯的庫的劃分的每一分類定義第二格式的參數庫的等級。在離線 的集(off-line bank)通過關聯同一分級的第一格式的LTP模型和第二格式的 LTP模型執行統計研究。兩個LTP分析并行設置為優選的學習配置(leaming configuration)。當然,可以使用其他配置,具體,級聯兩個編碼的傳統串聯。 統計研究根據特定準則,為第一庫的每一元素(或者其劃分的每一類)保證第 二庫元素的等級。優選地,該準則估計對獲得的信號的質量的影響。特別地,
質量準則可以使用在編碼中以選擇第二LTP參數。當然,可以使用其他準則, 具體地,為第一庫的分類調用第二庫的元素。而且,還可以使用準則的組合。 還可以執行分析研究以判斷確定第二庫的分級,作為第一庫的劃分的函 數。優選地,該分析研究完成上述的統計研究。優選地限于滿足分析近似的庫 的部分。下面介紹在根據第一編碼格式的LTP參數基礎上確定第二編碼格式的 UTP參數。在用于已知第一編碼格式選擇的LTP參數限制第二庫的試探的算法設計 框架內,優先使用第一庫的劃分和與第一庫的劃分相關聯的第二庫的分級。為了介紹清楚,首先介紹當兩個編碼格式具有相同持續時間的LTP子幀 時使用的算法的原理。每個第二編碼格式的當前子幀對應一個第一編碼格式的 子幀。對該第一子幀,第一編碼格式選擇了 LTP參數序列(稱為"第一序列 LTP1")。由于與第一模型的LTP參數中的一個相關聯的庫的劃分,通過選 擇與第一序列LTP1的元素的分類相關聯的分級選擇第二庫的試探的分級。然 后,根據這樣確定的分級試探第二庫。而且,作為質量/復雜度折衷的函數和/ 或可能為該分類保留的第二庫元素最大數量的函數,限制被檢測的元素的數 量。通常,假設在第二庫的所有元素中,僅檢測通過已經選擇的分級確定的第 一元素。當兩個編碼格式具有不同持續時間的LTP子幀時,可以將第二格式的當 前子幀對應于第一格式的多于一個子幀。該情況如作為示例的圖5b中所示。 對于這些第一子幀,該第一編碼格式選擇LTP參數的多個序列。由于與第一 模型的LTP參數中的一個相關聯的庫的劃分,通過選擇與第一序列元素的分 類相關的分級預先選擇第二庫的試探的分級。可能出現如果為第一子幀選擇的 參數屬于和第一庫的劃分相同的類,那么最后選擇單一分級。然而,這是特殊 情況。這將使我們回到對應相同持續時間的LTP子幀的前面方案。如果,方 便的話,預先選擇多于一個分級,可能保存僅僅一個分極(比如最預先選擇的 分級),或者其它對應第一格式子幀的分級,該子幀最多覆蓋第二格式的當前 子幀。基于第一庫的劃分的LTP參數的類型,可以采用其他準則。取代保留僅 僅一個分極,其他方案包括組合各種預先選擇分級中至少一些。可以有幾個組
合的過程。例如,如果保留了K個分級,那么首先檢測K個分級中每個分級的第一元素,同時消除任何冗余。獲得&個元素(K^K)。然后,添加由K 個分級的第二元素構成的集(set)中選擇K2個元素,從而K^K且K《N-K,, 等等,并且直到獲得N個元素,N等于第二庫中將要檢測的元素的最大數量。 在圖10中已經示意性示出了假借K個分級ORDl, ORD2, ......, ORDK的第一元素選擇出的N個元素ei, ej, ..., ek,...。可以選擇保存在集ENS中的 元素的數量N,例如作為最大允許復雜度的函數。在該等級中,還可能偏愛最 經常分等級在第一元素中的那些元素。作為變型,還可以通過預先選擇每個等級d(l^SK)的Ni(^N)個第一元素, 構成等級的K個子集。選擇Ni,從而EN2N,并且可能公正地處理等級,或 者,相反地,偏愛特定等級。然后選擇出現在K個子集中的所有元素和然后 出現在K一l個子集中的元素,等等,直到保持N個元素。如果沒有獲得N 個元素,通過,例如,連續取K個子集中的順次的元素,完成元素的數量。當然可以組合這些等級策略中的一些。很明顯,在通用方式中,優先根據 這樣確定的"動態"分級試探第二庫。當劃分的類不相交并且第一庫的元素屬 于多于一個類時,還可以應用用于從預定存儲的分級中構造動態分級的過程。下面是從第一 LTP模型切換到第二 LTP模型的三種情況,示出了本發明 在各種模型和各種類型LTP參數的應用。當然,雖然所給示例僅僅用于第一 和第二庫,但是本發明可以容易地概括到多于一個第一和/或第二庫。從單抽頭模型到多抽頭模型切換的情況格式CODl的單抽頭模型的參數是可用的,并且尋找以最小的計算和/或 資源代價確定格式COD2的多抽頭模型的參數。對于每個子幀,編碼器CODl 確定單抽頭LTP濾波器的參數對隊,A)。 COD2子幀的編碼需要確定多抽頭 LTP濾波器的參數對隊,Q3丄)(其中i為增益標號(gain index))。因此第一 模型的參數序列為隊,艮)。第二模型的參數序列為隊,(A),)。通過一個已知現有技術過程可以確定延遲^。例如,可能使用智能代碼轉 換過程,該過程直接通過選擇由C0D1在與COD2的當前子幀共享最大抽樣 的子幀中確定的延遲作為延遲確定該延遲Xs,(如果該延遲^是分數,取其 整數部分或者最接近的整數)。下面具體參照圖7a和7b詳細介紹該情況。
然后對于COD2的每個子幀,在本發明范圍內以低復雜度,在COD1子幀的至少一個增益/ e的基礎上,確定增益矢量(/ i)s。通過關聯兩個LTP模型的 研究,執行第一庫的劃分(這里標量增益/ e的庫)。然后確定與該劃分關聯的第二庫的分級。這些分級這里對應增益矢量WOs的全集(whole set)。在第一 格式COD1為其與COD2的當前子幀相對應的子幀選擇的標量LTP增益/ e的 基礎上,預先選擇與標量增益的分類相關聯的第二庫的分級。然后,保留這些 分級中的一個分級,或者另外,動態地構造一個分級。最后,測試通過該分級 確定的增益的第一 N矢量,以選定最佳矢量(根據諸如通用CELP準則的準 則)。可以想到,由于分級的作用,數量N作為例如所需質量/復雜度折衷的 函數可以容易地調整。通常,N遠遠小于第二庫的大小。根據本發明的一個優點,在第一格式的單抽頭LTP濾波器的至少一個增 益的基礎上,從而確定第二編碼格式的多抽頭LTP濾波器的增益的最佳矢量, 同時相當地減少試探增益矢量的第二庫的復雜度并且同時限制要被檢測的增 益矢量的數量。對比這里所給參考文獻2,對于每個單抽頭增益,關聯固 定大小的增益矢量的子集,本發明范圍內的解決方案使作為目標質量和復雜度 約束的函數調整庫的試探成為可能。應該理解,本發明比上述參考文獻中的預 定的且固定的子集需要增益矢量庫的各種分級的更多參與。在下面作為實施例將要描述的從8-kbit/s UIT-T G.729編碼器到6.3-kbit/s UIT-T G.723.1編碼器的智能代碼轉換的情況中,這里的步驟將應用于關注在 G.729編碼器的LTP增益的基礎上,在G.723.1的兩個增益矢量庫之間閉環搜 索。從多抽頭模型到單抽頭模型的切換的情況該具體情況是前面情況的倒轉。第一格式CODl的多抽頭LTP模型的參 數為可用,并且尋求以最小代價確定第二格式COD2的單抽頭LTP模型的參 數。當寫入第二模型的參數序列隊,OS丄)時(其中i是增益標號),進而寫入 第一模型的參數序列(人,艮)。在第一編碼器CODl選擇的至少一個參數序列的基礎上,尋找以獲得格式COD2的延遲A和增益A。從關聯兩個LTP模 型的研究中,執行第一庫的劃分,在該情況中,該第一庫為增益矢量Wi)e的庫。 然后在本發明的范圍內,確定與第一庫的劃分相關的第二庫的分級。這里,第 二庫包括抖動(jitter)值(Xe-入s)的全集。在第一格式COD1選擇的增益矢量03i)e 的基礎上,對于對應COD2當前子幀的子幀,預先選擇與這些增益矢量的分類 相關聯的第二庫的分級。這里,可以保留這些分級中的一個,或者另外,動態 地構造一個分級。最后,試探圍繞一個或者多個錨定延遲&'這樣確定的"周邊" 值。通過現有技術中公知的過程確定錨定延遲(s)。本發明從而提供了一種原創的解決方案,該方案使得基于第一編碼格式的 多抽頭LTP模型的參數的知識,通過減少第二編碼格式的單抽頭LTP模型測 試的延遲值的數量,減少確定延遲A的復雜度成為可能。大部分現有技術過程 僅僅使用延遲,不使用增益矢量。如在專利WO-03058407所述,這里使用兩 種類型的參數。然而,與最后的參考文獻相比,增益矢量指的是幾個抖動值的 集,而不是在該參考文獻中的單個值。根據本發明提供的優點其中之一,進而 解決了關于由單個單抽頭濾波器近似多抽頭LTP濾波器的問題。在一個有益的變型中,為了限制存儲,分級后的鄰域值為增加大小的間隔。 該測量對于聚焦開環和/或閉環搜索尤其具有優點。后面將介紹一個實施例, 涉及在6.3kbit/s UIT-T G.723.1編碼器的LTP參數的基礎上對于8-kbit/s UIT-T G.729編碼器的LTP延遲的閉環搜索。從多抽頭模型到多抽頭模型切換的情況據發明人所知,在現有技術中從沒有研究過該情況。第一格式CODl的多抽頭模型參數為可用,并且尋求以最小代價確定第二 格式COD2的多抽頭模型的參數。因此,寫入第一模型的參數序列A,03,:U。 也寫入第二模型的參數序列隊,(A),)。在第一格式COD1所選的至少一個參數 序列的基礎上,尋求獲得第二格式COD2的延遲^和增益矢量0^s。通過現有技術公知的過程,在至少一個延遲Ae的基礎上確定延遲As。假設, 本發明的應用使得在第一格式COD1的子幀的至少一個增益矢量(A)e的基礎 上,對于第二格式COD2的每個子幀,以低復雜度確定增益矢量(A)s成為可能。 通過關聯兩個多抽頭LTP模型的研究,在本發明范圍內執行第一庫的劃分,在該情況中第一庫為增益矢量(A)e的庫。然后確定與該劃分相關聯的第二庫的 分級。在第一格式COD1選擇的增益矢量(AX的基礎上,對于對應第二格式 COD2當前子幀的子幀,預先選擇與這些增益矢量的分類關聯的第二庫的分
級。從而,保留這些分級中的一個,或者另外,動態地并且漸進地構造一個分 級。最后,測試通過該分級確定的第一增益矢量以選擇最佳的。下面介紹,描述UIT-T G.723.1編碼中比特率6.3 kbit/s和5.3 kbit/s之間后者情況的示例性實施例。示例性實施例下面所示為三個示例性實施例,旨在說明在兩個情況中的第一個情況下的 兩個不同編碼格式UIT-T G.729和UIT-T G.723.1之間的代碼轉換,和在后一 種情況中在多速率編碼器(UIT-TG.723.1)中比特率的變化。首先給出這兩個 UIT-T編碼器和他們LTP建模的描述。8 kbit/s的UIT-T G.729編碼器和UIT-T G.723.1編碼器(6.3 kbit/s和5.3 kbit/s)這兩個編碼器屬于CELP編碼器族,該編碼器基于綜合分析。 基于綜合分析的編碼器在這些編碼器中,分析模型用于提取參數,該參數用于對要被編碼的信號 進行建模。這些信號以電話頻率(F,8kHz)或者更高的頻率抽樣,例如對于寬 帶編碼(從50Hz到7kHz的帶寬)以16kHz進行抽樣。根據應用和所需質量, 壓縮系數從1到16,從而這些編碼器在電話帶中工作在2到16kbit/s比特率, 在寬帶中工作在6到32kbit/s比特率。圖4a中所示為CELP類型的數字編碼和 解碼設備,該編碼器基于目前最廣范地用于編碼語音信號的綜合分析。語音信 號S。被抽樣并轉換為一串抽樣區塊(丄'),叫做幀。通常,每幀分作抽樣的 更小區塊(L),叫做子幀。通過用兩個時變濾波器對從增益放大后的內容(也 叫做固定激勵庫)中提取的波形進行濾波分析每個區塊。該抽取庫是L抽樣波 形的有限集。第一濾波器是長時預測濾波器。"LTP"(長時預測)分析可以 估計該長時預測器的參數,該長時預測器使用濁音的周期性。該預測器等同于 存儲各種延遲的過去激勵的庫。該庫通常叫做"自適應激勵庫"。第二濾波器 是短時預測濾波器。"LPC"(線性預測編碼)分析過程使獲得這些短時預測 參數成為可能,該參數為聲道的傳遞函數的表示并且是信號的頻譜的特征。這樣,參照表示CELP編碼器基本圖的圖4a,語音信號So進行LPC分析 41 (沒有詳細示出),并且LTP分析與固定激勵46和自適應激勵45的內容 的構造一起饋送至合成濾波器44。然而,在這樣構造的環中,包括感知加權模塊42和誤差最小化模塊43。因此用于確定新息序列的方法是綜合分析。在編碼器,通過兩個LTP和 LPC濾波器對大量新息序列進行濾波,而且所選波形是根據通常稱為CELP 準則的感知加權準則生成最接近原始信號的合成信號。8 kbit/s的G.729的LTP模型(單抽頭)UIT-T G.729編碼器工作在限于分段頻帶3.4 kHz的語音信號,以8kHz抽 樣并且分為IO毫秒的幀(例如,每幀80抽樣)。每幀分為40抽樣(5毫秒) 的兩個子幀(下面編號為0和1) 。 UIT-T G.729編碼器的LTP模型是基于具 有分數分辨率的單抽頭模型。在每幀中,LTP分析為每個子幀確定延遲人和增 益/3,。圖4b所示為其中主要步驟。在每幀中,在值20: 143的范圍中執行 對開環延遲的搜索,表示為A。,(步驟401)。然后,在開環延遲義。£周圍 [A。£-3,義。£+3]的范圍中以閉環搜索第一子幀的延遲(步驟402)。進而,通過使用基T綜合的分析,用在范圍[19*;84|]中的1/3分數分辨率并且在范圍[85; 143]的整數分辨率下,確定偶子幀的延遲義。。然后,用1/3分數分辨率通過在范圍[int(;i。-52,3);int(義。+4w)]內關于、的 綜合分析確定第二子幀的延遲A, intU。)是可能的分數延遲A。的整數部分(步 驟404 )。對于每個子幀, 一旦確定了閉環延遲就計算增益/3 (步驟403和405 )。 在針對固定激勵的搜索之后,通過以7比特的矢量量化和固定激勵的增益一起 量化增益iS。從而,G.729的單抽頭LTP增益的有限集(或者庫)大小為128。G.723.1的LTP模型(多抽頭)U1T-T G.723.1的編碼器工作在限于分段頻帶3.4kHz的語音信號,以8kHz 抽樣并且分為30毫秒的幀(例如,每幀240抽樣)。每幀包括4個7.5毫秒 的子幀(60抽樣),4個子幀兩個一組分組為15毫秒的超級子幀(120抽樣) 的兩組。UIT-T G.723.1的編碼器使用5個分級的多抽頭模型。對于6.3-kbit/s 模式,通過預先存儲有85條或者170條的兩個庫對長時預測器的系數進行矢 量量化,而對于5.3-kbit/s模式使用僅僅170條的庫對長時預測器的系數進行
矢量量化。在6.3-kbit/s模式中,庫中被試探的選項取決于偶子幀的延遲值。圖4c所示為G.723.1編碼器的LTP分析的主要步驟。在每幀中,執行兩 個開環LTP分析(每個超級子幀一次)以在范圍18; 142內估計120抽樣 的各塊的延遲"。,,(i二O或者1)(步驟410)。然后,對于每個超級子幀, 執行兩個閉環LTP分析(每個超級子幀一個)。在范圍義'。,-1; "。i+l內 以閉環搜索偶數子幀(子幀0和2)的相應延遲A'漢。與該搜索一起,還通過 綜合分析試探增益矢量庫(步驟411)。對于奇數子幀(子幀1和3),執行 類似搜索(同時搜索增益矢量和以閉環搜索延遲),并且在閉環中對于延遲 義21+1-1的搜索限于前一子幀的閉環延遲的附近A2l+1-1; A2i+2(步驟412)。第一示例性實施例在8-kbit/s的G.729的單抽頭LTP參數的基礎上確定 6.3-kbit/s的G.723.1的多抽頭LTP參數如圖5a中所示,通過采用通常的公共時間起點,G.723.1編碼幀對應三個 G.729編碼幀。從而,很明顯,G.729的子幀并不與G.723.1的子幀一致,但 是正相反,后者(7.5ms)重疊前者(5ms)。圖5b所示為G.723.1編碼幀和 三個G.729編碼幀以及他們各自的子幀。G.723.1幀的子幀從0到3編號。G.729的三個幀一起構成一組,并且他們的子幀從0到5編號。多抽頭濾波器的延遲的確定該延遲的確定是直接的。這樣,對G.723.1的偶數子幀,也就是子幀0和 2,采用與G.729的子幀1和4的延遲的整數部分相同的延遲。對于奇數子幀, 在上述延遲(偶數子幀)附近執行閉環。該閉環等于G.723.1的閉環,但也是 根據所需復雜度受到限制的,或者甚至被消除從而在兩子幀,偶數和奇數中保 持相同的延遲值。多抽頭濾波器的系數的確定這里,僅僅考慮一個第一庫,即G.729的128單抽頭LTP增益集,反之, 考慮兩個可能的第二庫(G.723.1增益矢量的兩個庫,根據子幀的延遲進行選 擇)。一旦確定延遲,仍然要在G.723.1編碼器選擇的5個系數的矢量庫中確定5個增益的矢量。本發明的應用使得將其試探限制于在G.729編碼器的子幀的 單抽頭LTP增益基礎上確定的有限量的增益矢量成為可能。通過在同一編碼器中關聯G.723.1編碼器的多抽頭模型和G.729編碼器的 單抽頭模型預先執行統計研究。該研究使對于每一個G.7291的128個單抽頭 LTP增益,根據他們對恢復的信號的質量的影響,對G.723.1的兩個庫的多抽 頭LTP增益的170個矢量和85個矢量進行分等成為可能。這里,CELP準則 用于該目的。對于G.723.1兩個庫中的每個,進而已經獲得與128個單抽頭LTP 增益集的基本劃分相關聯的128個分級(或者等級)。G.723.1的每個子幀覆蓋(至少部分地覆蓋)G.729的兩個子幀。首先, 提取對應G.729子幀的這兩個子幀的兩個單抽頭增益(表示為g,和g2)。這 兩個增益中的每個都關聯多抽頭系數的矢量庫中的矢量等級C (gl)。通過 G.723.1的偶數子幀的延遲值選擇該庫。設N是G.723.1編碼器當前子幀的多抽頭增益矢量的允許的最大數量。如 果G.729的兩個增益相等,因此這里僅有一個等級,并且保留通過該增益矢量 庫的等級對元素的分級。否則,從兩個不同的分級構造N個元素的分級。例 如,通過預先選擇他們的第一元素N^nN2 (分別地)構造等級C (gl)和C (g2)的兩個子集。N,和N2小于或者等于N。兩個等級(N,=N2)可以被等 同處理,或者可以偏愛其中一個。例如,可以偏愛與最大單抽頭增益(典型地, 如果g^g2,那么0^N^N《N)相關聯的等級。還可能偏愛其G.729子幀與所 考慮的G.723.1子幀重疊最大的等級。然后,首先選擇屬于兩個子集的所有元 素。通過在兩個子集中交替地取出在其余元素中分等最好的元素,將形成庫的 集補充到N。這里,還可能通過補充以偏愛兩個子集中的一個。當然可能組合 這些策略中的一些。例如,選擇Ni二N2但是在選擇公共元素之后,在可能補 充其他等級的其余元素之前繼續兩個等級中的一個等級的其余元素。該策略還 可以根據所考慮的G.723.1的子幀變化。最后,對增益矢量庫的試探限于通過這樣構造的"動態"分級確定的N 個矢量。該聚集的試探使選擇最佳增益矢量成為可能。優選地,選擇準則為通 常由G.723.1使用的CELP準則,該準則用于試探具有5個LTP系數的矢量庫。 這里提出的解決方案允許大大減少G.723.1的LTP分析的復雜度,然而并不降 低質量。作為性能的示例,對于兩個庫,圖9a和9b表示試探的大小的直方圖,
該圖保證相對于完全試探CELP準則中的損失嚴格少于1X。應該注意,試探的大小(沿著橫坐標)是遠遠小于庫的總的大小。這樣,對于具有85個矢量 的庫,平均大小是39,對于170個矢量的庫,平均大小是49。以使用的內容 為基礎,統計研究表明,甚至對于遠遠小于庫的大小的平均試探大小(48代 替85, 49代替170),可以根據CELP準則(實際上在CELP準則中沒有損 失)優化受限的試探。聚集后的搜索導致與徹底搜索等效的性能,同時幾乎試 探不多于大小為85的庫的一半和大小170的庫的三分之一。這些數字清楚說 明通過實現本發明得到的復雜度降低。
另外,對于兩個庫,128個分級的全部存儲表示總共要存儲128X (170 +85) =32640個索引值。實際上,沒有必要保留所有這些值,因為如上所述, 僅僅有限的數量是必要的。這樣,對于CELP準則中的零損失,試驗顯示足夠 存儲大約13582個索引。通過選擇CELP準則中的更弱的約束,該數量可以再 次減少(降到11251,對于1%的損失)。通過采用單抽頭增益集的除了基本 劃分之外的劃分可以再次大大降低。
第二示例性實施例在6.3-kbit/s的G.723.1的多抽頭LTP參數的基礎上確定 8-kbit/s的G.729的單抽頭LTP參數與上述實施例正相反,G.723.1幀的多抽頭LTP模型參數為可用,并且尋 求獲得三個幀的G.729的單抽頭LTP參數,也就是6個子幀(見圖5b)。
開環延遲的確定取消開環搜索。為此,三個G.729幀的每個幀首先采用G.723.1編碼器子 幀中的一個子幀的延遲作為開環延遲。圖6中所示為G.729的幀和G.723.1的子幀之間的對應。
然而,應該注意,G.723.1編碼器選擇的延遲可以在G.729編碼器允許的 值的范圍之外。特別地,G.729編碼器允許的最小值是19,而G.723.1編碼器 是18。對于避免該問題,可以有幾種解決方案。典型地,例如,可以將從G.723.1 編碼器得到的延遲翻倍,或者更簡單地將其加l。
閉環延遲的確定 一旦對于G.729編碼器的三個幀固定了開環延遲,那么可以對每個子幀執行閉環搜索。可以想到值的范圍為Aoe[A0i-3;AOL+3]和A, e [int(義。-5普;int(義。+4普]對于G.729編碼器的基本閉環搜索包括首先連續地測試范圍中所有整數 值(對于、為7,對于^為10)。 一旦選定了最佳整數值,測試各種分數 (-2/3,-1/3,1/3,2/3)以根據所選準則確定最佳的分數,在這種情況下,為最大 化CELP準則那個分數。對于偶數子幀,應該注意,僅僅當整數部分;ie小于 85時搜索分數部分。這里,第一庫(上述給定的本發明的定義)是G.723.1編碼器的兩個LTP 增益矢量庫中的一個,第二庫是錨定延遲附近的相鄰整數值(或者抖動)的兩 個集中的一個。然后應該理解, 一個方面,本發明可以容易地應用到多于一個第一庫,另一方面可以應用于多于一個第二庫。為減少錨定值又'附近的整數值(A^或者int(義。))的閉環搜索復雜度,提出,在本發明范圍內,限制通過閉環測試的整數延遲值的數量。根據由G.723.1作 出的LTP增益矢量的選擇,僅僅測試減小后的數量值。在該受限的集中確定 整數延遲。然后,以常用方式搜索分數部分。通過在同一編碼器內關聯G.723.1的多抽頭模型和G.729的單抽頭模型預 先執行統計研究。該研究使對于G.723.1的兩個多抽頭LTP庫的每個增益矢量, 根據他們對恢復的信號的質量的影響,為G.729 (偶數和奇數子幀)周圍的兩 個閉環搜索建立鄰域值重要性分級成為可能。該分類使其可能根據質量和復雜 度約束選擇值的數量,并且對于G.729六個子幀的每一個,限制根據G.723.1 的子幀作出的增益iS,的選擇的閉環的程度。通過使用圖8中的子幀之間的對 應,每個G.729子幀和G.723.1子幀的一個或者兩個相關聯。根據增益矢量;8, 的5個系數的矢量,以降低重要性的次序對鄰域值義'進行分等。然后確定測試 的值的數量,作為所需復雜度的函數或者所需質量/復雜度比的函數。圖7a (分別在圖7b中)所示為從G.723.1編碼器得到的G.729的偶數子 幀(分別為奇數)和參數序列(A"08,),)之間的關聯。應該注意,對于一些子幀,錨定值A'可能與為相關聯的G.723.1子幀確定 的參數序列(、,(A)》的延遲、不同。這點將隨后解釋,其中考慮子幀的奇 偶性(奇數或者偶數)。在第一變型中,可以簡單地忽略任何不同。優點是,
在另一個變型中,分級后的鄰近的集可以修正,作為差(、-義')的函數,該集的大小也是可以修正的。優選地,根據增益(A),從該分級后的鄰域的每個元 素中減去差(、-義'),并且考慮給出該集的交集以定義鄰域(neighborhood) (這里,如隨后所示,對于偶數子幀間隔為[-3; 3],對于奇數子幀間隔為[-5; 4])。還可能以使用受限的鄰域為條件,作為在兩個延遲之間的偏差為函數。從 而向子幀,或者兩個延遲之間的偏差,或者組合后的兩個準則使用該策略。偶數子幀必須在開環延遲A。£的周圍范圍[4 -3;A。t +3]內執行本搜索。根據由 G.723.1編碼器所選的增益矢量,確定7個抖動值序列(_3, 一2, 一l, 0, 1, 2, 3)的分級。對于G.729編碼器的子幀0 (分別地2),僅僅有一個G.723.1 的關聯子幀,以及一個增益矢量和一個分級。另一方面,G.723.1編碼器的兩 個子幀與G.729編碼器的子幀4關聯,如圖7a所示。從而通過增益矢量()8,)2和 06,)3預先選擇鄰近的集的兩個分級。如上所示,可以采用單個分級或者組合兩 個分級。如果采用僅僅與矢量(Ah關聯的分級,或者如果義2=^是固定的(其 中義3是錨定值),則不執行具體的處理。否則,對應(Ah的7個鄰域的分級的 集可以修正,作為義2-義3的函數。然后,根據03,)3的分級的集可以用于完成。 測試根據獲得的分級的第一 N個元素,大小N定義為復雜度的函數或者目標 質量/復雜度折衷的函數。 奇數子幀必須在前一 (偶數)子幀的整數部分A、附近的范圍義、-52/3;"2;)+42/3
內執行搜索。對于這些奇數子幀,就象對偶數子幀4那樣,相關聯的G.723.1 子幀的參數序列(A,,(A),)的延遲^可能不同于該錨定值義、。根據由G.723.1 編碼器所選的增益矢量OS,),, IO個抖動值的集的分級被預先選擇,并且作為 差A-義、)的函數修正。設N (NS10)為被測值的最大允許數量。為了確定有限的搜索范圍,對于每個奇數子幀優選地執行下述步驟。 整個搜索范圍是["。-52/3;義'。+42/3。預先選擇對應增益矢量08,.)。和(A^的兩個分級。然后,分級后的鄰域作為差A-A'。和義,-義。的函數修正。限制這兩 個偏離,因為-一方面,G.729的閉環延遲^在附近(在開環延遲的間隔[-3; 3](這里,等于對應G.723.1的閉環延遲)),-另一方面,在G.723.1編碼器,因為差^-幾。在間隔[-1, 2]內,所以偶 數子幀的閉環延遲和隨后的奇數子幀的閉環延遲之間的偏離是有限的。根據修正后的鄰域的第一 M和N2元素,構造大小為N的單一分級后的 鄰域。首先選擇對兩個子集公共的值,然后如果需要的話,通過交替地將其余 值中的最佳值放到在兩個子集中,完成該集。然后在構造的子集中執行閉環搜 索。子斷3整個搜索范圍是[義'2-52/3;義'2+42/3]。選擇對應增益矢量08,)2的分級。然后, 分級后的鄰域作為差(A「;i、)函數修正。與前一情況正相反,、和A〗之間的偏離在分級的鄰域中是相當大的,通過減去該差修正的偏離可以為零。在該情況 中,優選地為,在整個范圍[^-52/3;1'1+42/3]內執行搜索。使用分級的鄰域也是 以K-Al上的閾值為條件的。例如,只有如果|義2-義'2|<3時,限制鄰域,否貝IJ, 試探整個范圍[-5, 4]。該變型的選擇還取決于所允許的復雜度。子齡5整個搜索范圍是[義'4-52/3;"4+42/3]。選擇對應增益矢量GS丄的分級。然后, 分級后的鄰域作為差(A「A',)的函數修正。如在子幀l的情況中,該偏離是有 限的。具體地,G.729的閉環延遲^在開環延遲的鄰域中,[-3,3](這里,等于 G.723.1的閉環延遲A3)。試探修正后的分級集的第一N個值。這里的解決方案允許大大降低G.729編碼的LTP分析的復雜度。相對于 試探整個鄰域,本發明使得如果G.723.1編碼器的增益矢量在具有170條(分 別85條)的庫中,僅僅測試60% (分別40%)的鄰域值成為可能。第三示例性實施例在6.3-kbit/s的G.723.1編碼器的多抽頭LTP參數的基礎 上確定5.3-kbit/s的G.723.1編碼器的多抽頭LTP參數
兩個模型相同,僅僅選擇的多抽頭LTP增益矢量庫不同。 多抽頭濾波器延遲的確定以與上述確定單抽頭延遲相似的方式,在多抽頭LTP參數的基礎上,可 能使用偶數子幀的延遲作為超級子幀的開環延遲,然后作為6.3-kbit/s模式選 擇的濾波器的5個系數的矢量的函數,限制5.3-kbit/s模式閉環延遲的變化范 圍。優選地,除了簡單復制延遲之外,不需要其他處理。這樣,5.3-kbit/s的每 個子幀采用6.3-kbit/s模式為相同子幀選擇的延遲作為延遲。多抽頭濾波器的系數的確定需要根據本發明中定義的術語,這里有具有5.3-kbit/s模式的5個系數的 170個矢量的單個第二庫,但是需要考慮兩個"第一庫"。這兩個第一庫是 G.723.1的6.3-kbit/s模式使用的增益矢量的兩個庫。在該示例性實施例中,尋求在兩個庫(具有170或者85個矢量)中的一 個庫中通過6.3-kbit/s模式選擇的增益矢量的基礎上為5.3-kbit/s模式具有170 條庫中確定一個增益矢量。兩種情況中的一種可能微不足道,因為如果6.3-kbit/s模式為當前子幀使 用相同的庫(具有170個矢量的庫),將誘使為5.3-kbit/s模式選擇和6.3-kbit/s 模式相同的矢量。然而,該方法產生信號的顯著衰減。特別地,雖然LTP模 型對于兩個模式是相同的(相同的5個增益矢量和延遲的庫),應該注意,編 碼處理的其它部分是不同的。從而LTP濾波不應用到相同的信號,這樣對于 5.3-kbit/s模式需要拓寬濾波器系數矢量的選擇。為此,在兩個庫中執行研究以關聯每個矢量,具有170個矢量的庫的矢量 等級。這樣,為給5.3-kbit/s模式選擇增益矢量,優選地,在6.3-kbit/s模式進行 的增益矢量選擇的基礎上,在大的庫中(170個矢量)試探僅僅限于與6.3-kbit/s 模式選擇的增益矢量相關聯的等級的第一 N個矢量。大小N取決于復雜度或 者質量,或者所需的質量復雜度折衷。這樣,如上所示,從該子集中選擇最大 化準則的增益矢量,該準則優選地為CELP準則。
權利要求
1、 一種編碼方法,該方法在通過實施根據第一格式編碼的至少一步驟獲 得的信息的基礎上根據第二格式進行編碼,尤其是對于語音信號編碼,所述第一和第二格式通過試探包含備選參數的至少一個庫實施搜索LTP長時預測參 數的步驟,為了更精細地搜索LTP參數,第一和第二編碼格式至少之一使用具有多系數的濾波,其特征在于,包括以下步驟a) 定義第二編碼格式使用的至少一個庫的分級;b) 恢復在確定在根據第一格式編碼的過程中的LTP參數的之后得到的先驗信 息以選擇所述庫的至少一個分級;c) 將選擇分級應用到所述庫中的備選者上以選擇有限量的第一備選者;和d) 為了實施第二編碼,只在所述有限量的備選者中執行LTP搜索。
2、 根據權利要求1所述的方法,其中,第一編碼格式使用第一庫,其特 征在于,所述先驗信息是第一庫的劃分的信息,該信息涉及該劃分的類,其中 在根據第一格式編碼過程中獲得的LTP參數屬于該類。
3、 根據權利要求2所述的方法,其特征在于,第一庫的基本劃分包括最 初擬定在大小為1的N個不相交的類中的N個元素。
4、 根據權利要求2所述的方法,其中,第一編碼格式使用第一庫,并且 第二編碼格式使用第二庫,其特征在于,擬定在不相交的類中的第一庫的劃分, 從而同一元素與第二庫中的一個以上分級相關聯。
5、 根據權利要求2至4中任意一項所述的方法,其中,第一編碼格式使 用第一庫,第二編碼格式使用第二庫,其特征在于,擬定相似的分級形成一組, 從而動態地修正第一庫的初始劃分,以及第二庫中分級的數量。
6、 根據權利要求5所述的方法,其特征在于,進一步包括,擬定另一個 操作,在于一旦第二庫的分級在一起形成組,則連續地重新計算第二庫的分級, 并且動態地修正第一庫的初始劃分和/或已經這樣形成組的分級。
7、 根據權利要求2至6任意一項所述的方法,其中,第一編碼格式使用 第一庫,第二編碼格式使用第二庫,其特征在于,對于第二庫的每個分級,選 擇第二庫保留的最大元素數量,作為第一庫的類的函數和/或第二庫的分級, 從而減少存儲第二庫的分級的存儲器資源。
8、 根據上述任一權利要求所述的方法,其特征在于,選擇所述有限量的 備選者,作為第二編碼的質量和復雜度之間的折衷的函數。
9、 根據權利要求8所述的方法,其中,要被編碼的輸入信號按數據塊進 行處理,其特征在于,所述折衷對于要處理的各數據塊是動態地確定的,作為 第一編碼格式的參數的函數和/或要被編碼的信號的特征的函數。
10、 根據權利要求9所述的方法,其特征在于,所述折衷是動態地確定的, 作為每個數據塊包含的LTP子幀的函數。
11、 根據上述任一權利要求所述的方法,其特征在于,包括初始步驟,該 步驟包括形成統計和/或分析研究,作為根據第一編碼格式的LTP參數的連續 序列的函數,從而測定第二編碼格式使用的庫中分級的數量和適當的分級。
12、 根據權利要求2至11中任意一項所述的方法,要被編碼的輸入信號 按數據塊進行處理,每個數據塊包括第一編碼格式的第一 LTP子幀,以及第 二編碼格式的第二 LTP子幀,其特征在于,對于相同持續吋間的第一和第二 子幀,每一個第二編碼格式的當前子幀對應第一編碼格式的單個子幀,并且其 中-第一編碼格式為當前子幀選擇第一LTP參數序列; -在按與第一格式的LTP參數之一相關聯的庫的類的劃分,通過選擇與所 述第一序列的元素的類相關聯的分級,選擇第二格式的庫的試探的分級;和 -依據選擇的分級,試探第二格式的庫中有限量的第一備選者。
13、 根據權利要求2至11中任意一項所述的方法,其中,要被編碼的輸 入信號按數據塊進行處理,每個數據塊包括第一編碼格式的第一 LTP子幀, 以及第二編碼格式的第二 LTP子幀,其特征在于,對于不同持續時間的第一 和第二子幀-第一編碼格式為基本上對應當第二當前子幀的第一子幀選擇多個LTP 參數序列;-在按照與第一格式LTP參數之一相關聯的庫的類的劃分的基礎上,通過 選擇與所述LTP參數序列的元素的類相關聯的分級,預先選擇第二格式的庫 的試探的分級;-在所述預選擇的分級的基礎上,測定至少一個首選的分級;和-依據首選的分級,試探第二格式的所述庫,試探限于它的第一元素。
14、 根據權利要求13所述的方法,其特征在于,首選的分級是從為第二 子幀預選擇的分級中選擇出的最佳預選擇分級。
15、 根據權利要求13所述的方法,其特征在于,首選的分級是與最多地重疊第二格式當前子幀的第一格式子幀相對應的分級。
16、 根據權利要求13所述的方法,其特征在于,根據下述步驟保留第二格式的庫的多個分級的組合,從而獲得第二格式的庫的N個元素的動態分級: -預選擇K個分級;-檢測K個分級中的每一個分級的第一個元素,同時消除冗余,以獲得Kj個元素,其中Ki《K;-加入從包含K個分級的第二元素的集中選擇K2個元素,同時消除冗 余,其中,K2《K,并且K2《N-Kp重復這些步驟,直到獲得所述N個元素。
17、 根據權利要求13所述的方法,其特征在于,按照以下步驟保留第二 格式的庫的多個分級的組合,從而獲得第二格式的庫的N個元素的動態分級-通過預選擇每個等級Ci中的第一Ni元素構造等級的K個子集,其中Nj 《N,下標i在1和K之間;-選擇Ni個元素,使ZiV,2iV;-選擇K個子集中出現的所有的元素,并且用選擇K-i個子集中出現的元 素重復后面步驟,其中i循環增加,直到保留N個元素。
18、 根據上述任一權利要求所述的方法,其中第一編碼格式對第一 LTP 子幀使用單系數濾波,而第二編碼格式對第二 LTP子幀使用多系數濾波,其 特征在于,-對于每一個第一子幀,通過實施第一編碼格式,確定單系數LTP濾波器 的第一參數對(Ae, j8e );-為了編碼第二當前子幀,在第一格式參數序列(人,的基礎上確定 多系數LTP濾波器的參數的多個對(&,08丄),其中*確定LTP延遲&,首選對應于在和第二當前子幀重疊最多的第一子幀上按第一編碼格式確定的延遲;*通過執行步驟b) 、 c)和d),在第一子幀的至少一個增益艮的基礎上確定第二當前子幀的增益矢量(A),,其中第二格式的庫的分級與第二子幀的增 益矢量03丄的集相對應。
19、 根據權利要求18所述的方法,其特征在于,為了編碼第二當前子幀:-在第一格式的第一 LTP增益艮的基礎上,預選擇與第一 LTP增益的類 相關聯的第二格式的庫的分級,其中,第一 LTP增益A是為對應于第二當前 子幀的一個或多個第一子幀而選擇的;-在為所述第二當前子幀所預選擇的所述分級的基礎上,首選動態地構造 這些分級中的單一分級;和-測試通過所述構造的分級確定的和第二增益的N個第一矢量,從而根據 所選的準則,選擇更佳的增益矢量以與和第二子幀相關聯。
20、 根據權利要求1至17任意一項所述的方法,其中,第二編碼格式對 第二 LTP子幀使用單系數濾波,而第一編碼格式對第一 LTP子幀使用多系數 濾波,其特征在于,-對于每一個第一子幀,通過實施第一編碼格式,確定LTP參數第一序列 &,(AL ,該參數序列與包含多系數LTP濾波器的LTP延遲^和相關聯的增益矢量08丄的對相對應;-執行第一格式增益矢量W丄的庫的劃分;-為了按第二格式編碼第二當前子幀,為對應于第二當前子幀的第一子幀 確定的第二格式的庫的分級,所述第二格式的庫是由抖動值的集構造的,并且 該庫的所述分級與第一格式的庫的劃分相關聯;-確定抖動值的分級,在這樣分級后的抖動值上并且在已經確定的一個或 多個錨定延遲的附近連續地試探第二格式的LTP延遲值,所述一個或多個錨 定延遲確定為第一子幀上的延遲義e的函數。
21、 根據權利要求20所述的方法,其特征在于,根據選擇的準則測試各 種LTP延遲值。
22、 根據權利要求20或21所述的方法,其特征在于,這樣分級后的所述 抖動值具有大小按試探的函數增加的幅值。
23、 根據權利要求1至17任意一項所述的方法,其中,第一編碼格式對 第一 LTP子幀使用多系數濾波,而第二編碼格式對第二 LTP子幀使用多系數 濾波,其特征在于,-在通過第一格式選擇的并且包括為至少一個第一子幀確定的至少一個 增益矢量(AX的參數的至少一個序列基礎上,執行第一格式的庫的劃分,與第 - --格式的矢量增益03丄的庫相對應;-從而推導出與第二格式的增益矢量(A),的庫相對應的第二格式的庫的 分級,所述分級與所述劃分相關聯;-在為基本上覆蓋第二當前子幀的第一子幀通過第一格式選擇的增益矢量08丄的基礎上,預選擇第二庫的分級,所述分級與所述劃分的類相關聯; -保留一個預選擇的分級;-確定要與第二當前子幀相關聯的幾個增益矢量,作為保留的分級的函數;-通過測試所述幾個增益矢量,根據所選的準則選擇最佳增益矢量。
24、 根據權利要求19、 21或23所述的方法,其特征在于,所選的準則是 CELP標準。
25、 一種按照第二編碼格式進行編碼的裝置,該裝置使用通過按照第一格 式實施的編碼獲得的編碼信息,尤其是對于語音信號編碼,所述第一和第二格 式通過試探包含備選參數的庫實施對LTP長時預測參數的搜索,為了對更精 細地搜索LTP參數,第一和第二編碼格式至少之一使用具有多系數的濾波, 其特征在于,包括以下步驟-存儲器,用于存儲作為由第一編碼格式確定的LIP參數的函數定義第二 的編碼格式使用的庫的分級的對應表;-用于恢復給出關于在根據第一格式編碼的過程中的LTP參數的至少一 個先驗信息的信號的器件;-在接收到所述信號時活動的器件,用于查閱所述對應表并且選擇第二格 式的所述庫的至少一個分級;-計算器件,用于*根據所選的分級對第二格式的庫進行分級,從而由庫中選擇有限量的 最初的備選者;和*通過僅僅在該有限量的備選者中執行LTP搜索,繼續根據第二格式編碼。
26、 一種編碼系統,用于實施至少一種第一編碼格式和一種第二格式編 碼,其特征在于,包括用于根據第一格式編碼的至少一個設備和實施所述第二 格式的如權利要求25所述的編碼設備。
27、 根據權利要求26所述的編碼系統,其特征在于,用于根據第一格式編碼的設備和用于根據第二格式編碼的設備級聯設置,用于代碼轉換。
28、 根據權利要求26所述的編碼系統,其特征在于,用于根據第一格式 編碼的設備和用于根據第二格式編碼的設備并行設置,用于多編碼。
29、 一種計算機程序產品,存儲于處理單元的存儲器中,或者與所述處理 單元上的閱讀器協作的可移動介質上,或者可從遠程站點下載,其特征在于, 包含實施如權利要求1-24中任意一項權利要求所述的方法中的所有或者部分 步驟的指令。
全文摘要
本發明涉及一種根據來自通過使用根據第一格式編碼獲得的信息項的第二格式編碼的方法。尤其是對于語音信號編碼,所述第一和第二格式利用通過搜索包含備選參數的庫對LTP長時預測參數的搜索。該方法包括以下步驟a)定義(25b)第二編碼格式使用的庫(25)的分級;b)恢復(23)在確定在根據第一格式的編碼過程中的LTP參數的之后得到的先驗信息用于選擇(26)所述庫的分級;c)將選擇的分級應用(27)到所述庫中的備選者上以選擇(29)有限量的第一備選者;以及d)為了實施第二編碼,只在所述有限量的備選者中執行LTP搜索(30)。
文檔編號G10L19/16GK101124625SQ200680003179
公開日2008年2月13日 申請日期2006年1月9日 優先權日2005年1月11日
發明者克勞德·拉姆林, 穆罕默德·格那尼亞 申請人:法國電信公司