專利名稱:用于編碼和低復雜性代碼轉換的頻譜分量轉換的制作方法
用于編碼和低復雜性代碼轉換 的頻鐠分量轉換本申請是申請?zhí)枮?00480003666.7、申請日期為2004年1月30日、發(fā)明名稱為"用于編碼和低復雜性代碼轉換的頻譜分量轉換"的 申請的分案申請。4支術領域本發(fā)明一般涉及音頻編碼方法和設備,更具體地,涉及用于編碼 和代碼轉換音頻信息的改進方法和設備。
背景技術:
A.編碼許多通信系統(tǒng)面臨信息傳輸和記錄容量的需求經常超過可用容 量的問題。因此,在廣播和記錄領域中,非常關注在不降低其感知質 量的情況下,降低發(fā)送或記錄要由人感知的音頻信號所需要的信息量。 同時還關注對于給定帶寬或存儲容量提高輸出信號的感知質量。傳統(tǒng)的用于降低信息容量需要的方法涉及僅發(fā)送或記錄輸入信 號的選定部分。丟棄其余部分。稱作感知編碼的技術通常將原始的音 頻信號轉換成頻鐠分量或頻率子帶信號,從而能夠更容易地識別和丟 棄冗余或不相關的那些信號部分。如果可以根據(jù)信號的其它部分再生 某一信號部分,則將該信號部分視為冗余的。如果某一信號部分在感 知上無關緊要或聽不到,則將該信號部分視為不相關的。感知解碼器 可以根據(jù)編碼信號重新建立丟棄的冗余部分,但是它不能建立任何并 非冗余的已丟棄的不相關信息。然而,丟棄不相關的信息在許多應用 中是可接受的,這是因為它的缺乏對于解碼信號沒有可感知的影響。信號編碼技術在感知上是透明的,如果它僅丟棄冗余或在感知上不相關的那些信號部分的話。 一種可以丟棄信號不相關部分的方式是 用較低精確度等級表示頻鐠分量,這通常稱作量化。將原始頻鐠分量 及其量化表示之間的差值稱作量化噪聲。較低精確度的表示具有較高 的量化噪聲電平。感知編碼技術試圖控制量化噪聲電平,以使其聽不 到。如果感知上透明的技術不能實現(xiàn)充分地降低信息容量要求,則需 要感知上不透明的技術以丟棄非冗余和在感知上相關的附加信號部 分。不可避免的結果是降低了所發(fā)送或所記錄信號的感知保真度。優(yōu) 選地,感知上不透明的技術僅丟棄視為具有最低感知重要性的那些信 號部分。可以使用一種稱作"耦合"的編碼技術來降低信息容量要求,通常 將該技術視為感知上不透明的技術。根據(jù)這種技術,組合在兩個或更 多輸入音頻信號內的頻鐠分量以形成具有這些頻語分量的復合表示的 耦合聲道信號。還生成邊信息,它表示在被組合以形成復合表示的每 個輸入音頻信號內的頻鐠分量的頻鐠包絡。發(fā)送或記錄包括耦合聲道 信號和邊信息的編碼倌號,用于隨后由接收器解碼。通過生成耦合聲 道信號的復本和使用邊信息定標在復制信號內的頻譜分量,從而基本 上恢復原始輸入信號的頻鐠包絡,接收器生成去耦合信號,它是原始 輸入信號的不精確復制品。用于兩聲道立體聲系統(tǒng)的典型耦合技術組 合左右聲道信號的高頻分量以形成復合高頻分量的單個信號,生成表 示在原始的左右聲道信號內高頻分量的頻鐠包絡的邊信息。在先進電視系統(tǒng)委員會(ATSC )標準文件A/52( 1994 )的"數(shù)字音頻壓縮(Digital Audio Compression ) ( AC-3 ),,(在此稱作A/52文件)中描述了耦 合技術的一個例子。稱作頻語再生的編碼技術是可以用于降低信息容量要求的感知 上不透明的技術。在許多實現(xiàn)方式中,將這種技術稱作"高頻再生" (HFR),因為僅再生高頻頻鐠分量。根據(jù)這種技術,發(fā)送或存儲僅 包含輸入音頻信號的低頻分量的基帶信號。還提供表示原始高頻分量 的頻鐠包絡的邊信息。發(fā)送或記錄包括基帶信號和邊信息的編碼信號,用于隨后由接收器解碼。接收器基于邊信息再生具有頻鐠電平的已省 略高頻分量,組合基帶信號與所再生的高頻分量以生成輸出信號。在1979年4月的0/幼e i7i&rfitf^mfl/ Co"/ ^4cows" 57gwfl/ /Voc * Makhoul和Berouti的"在語音編碼系統(tǒng)內的高頻再生 (High-Frequency Regeneration in Speech Coding Systems ),,中可以 發(fā)現(xiàn)HFR的已知方法的描述。在于2002年3月28日提交的標題為"用 于高頻再生的寬帶頻率轉換(Broadband Frequency Translation for High Frequency Regeneration )"的序列號為10/113,858的美國專利申 請、于2002年6月17日提交的標題為"使用頻語孔填充的音頻編碼系 統(tǒng)(Audio Coding System Using Spectral Hole Filling),,的序歹寸號為 10/174,493的美國專利申請、于2002年9月6日提交的標題為"使用 解碼信號特性適配合成頻i普分量的音頻編碼系統(tǒng)(Audio CodingSystem Using Characteristics of a Decoded Signal to Adapt Synthesized Spectral Components )"的序列號為10/238,047的美國專 利申請和于2003年5月8日提交的標題為"使用頻語分量耦合和頻譜 分量再生的改進音頻編碼系統(tǒng)和方法(Improved Audio Coding Systems and Methods Using Spectral Component Coupling and Spectral Component Regeneration ),,的序歹寸號為10/434,449的美國專利申請中公開了適合于編碼高質量音樂的改進頻譜再生技術。 B.代碼轉換已知的編碼技術已經降低了給定感知質量等級的音頻信號的信 息容量要求,或者相反地,已經改善了具有規(guī)定信息容量的音頻信號 的感知質量。盡管有這種成功,還需要進一步的改進,編碼研究繼續(xù) 發(fā)現(xiàn)新的編碼技術,發(fā)現(xiàn)使用已知技術的新方式。進一步改進的一種結果是在用新編碼技術編碼的信號和執(zhí)行舊 編碼技術的現(xiàn)有設備之間的潛在不兼容性。盡管規(guī)格化組織和設備制 造商已經進行了大量努力來防止過早地作廢,但舊的接收器不能始終 正確地解碼用新編碼技術編碼的信號。相反地,新的接收器不能總是 正確地解碼用舊編碼技術編碼的信號。因此,專業(yè)人士和消費者都獲保與用舊編碼技術和新編碼技術 編碼的信號的兼容性的話。
一種能夠減輕或避免這一負擔的方式是獲得能夠將編碼信號從 一種格式轉換成另一種格式的代碼轉換器。代碼轉換器可以用作不同 編碼技術之間的橋梁。例如,代碼轉換器可以將用新編碼技術編碼的 信號轉換成與僅能解碼用舊技術編碼的那些信號的接收器兼容的另一 種信號。
常規(guī)的代碼轉換實現(xiàn)完整的解碼和編碼處理。參見上面提到的代 碼轉換的例子,使用新的解碼技術解碼輸入的編碼信號以獲得隨后通 過合成濾波轉換成數(shù)字音頻信號的頻譜分量。然后,通過分析濾波將 數(shù)字音頻信號再次轉換成頻譜分量,然后,使用舊的編碼技術編碼這 些頻鐠分量。所獲得的結果是與舊接收裝置兼容的編碼信號。也可以 使用代碼轉換從舊格式轉換成新格式,在不同的現(xiàn)代格式之間轉換和 在同一格式的不同比特率之間轉換。
當使用常規(guī)的代碼轉換技術轉換用感知編碼系統(tǒng)編碼的信號時, 這些技術具有嚴重的缺點。 一個缺點是常規(guī)的代碼轉換裝置較昂貴, 因為它必需實現(xiàn)完整的解碼和編碼處理。第二個缺點是相對于輸入編 碼信號在解碼之后的感知質量,經過代碼轉換的信號在解碼之后的感 知質量幾乎總是降低。
發(fā)明內容
本發(fā)明的目的是提供能夠用于改善代碼轉換信號的質量和允許 較低廉地實現(xiàn)代碼轉換裝置的編碼技術。
通過如在權利要求中闡述的本發(fā)明實現(xiàn)這個目的。 一種代碼轉換 技術解碼輸入的編碼信號以獲得頻譜分量,隨后將該頻譜分量編碼成 輸出的編碼信號。避免了因為合成和分析濾波導致的實施成本和信號 劣化。通過在編碼信號中提供控制參數(shù),而不是由代碼轉換器為其自 身確定這些控制參數(shù),可以進一 步降低代碼轉換器的實施成本。
通過參考下述討論和附圖,可以更好地理解本發(fā)明的各個特征及其優(yōu)選實施例,在附圖中相同的參考數(shù)字表示相同的單元。下述討論 和附圖的內容僅作為例子來闡述,不應當理解為表示在本發(fā)明保護范 圍上的限制。
圖l是音頻編碼發(fā)送器的示意圖。
圖2是音頻解碼接收器的示意圖。 圖3是代碼轉換器的示意圖。
圖4和圖5是包含本發(fā)明各個方面的音頻編碼發(fā)送器的示意圖。 圖6是能夠實現(xiàn)本發(fā)明各個方面的設備的示意方框圖。
具體實施方式
A.概述
基本的音頻編碼系統(tǒng)包括編碼發(fā)送器、解碼接收器和通信路徑或 記錄媒體。發(fā)送器接收表示一個或多個音頻聲道的輸入信號,并生成 表示該音頻的編碼信號。隨后,發(fā)送器將編碼信號發(fā)送給用于傳輸?shù)?通信路徑或用于存儲的記錄媒體。接收器從通信路徑或記錄媒體接收 編碼信號,并生成可能是原始音頻的精確或近似復本的輸出信號。如 果輸出信號并非精確的復本,則許多編碼系統(tǒng)試圖提供與原始輸入音 頻在感知上無法區(qū)分的復本。
任何編碼系統(tǒng)的正確操作的內在和顯然的要求是接收機必需能 夠正確地解碼編碼信號。然而,因為在編碼技術上的發(fā)展,出現(xiàn)希望 使用接收器解碼用接收器不能正確解碼的編碼技術所編碼的信號的情 況。例如,可能已經通過編碼技術生成編碼信號,該編碼技術預期解 碼器執(zhí)行頻鐠再生,但是接收器不能執(zhí)行頻語再生。相反地,可能已 經通過編碼技術生成編碼信號,該編碼技術并未預期解碼器執(zhí)行頻譜 再生,但是接收器預期和要求需要頻譜再生的編碼信號。本發(fā)明涉及 能夠在不兼容的編碼技術和編碼設備之間提供橋梁的代碼轉換。
下面描述幾種編碼技術,作為對可以實施本發(fā)明的若干方式的詳
9細描述的介紹。
1.基本系統(tǒng)
a)編碼發(fā)送器
圖1是從路徑11接收輸入音頻信號的分頻帶音頻編碼發(fā)送器10 的一種實施方式的示意圖。分析濾波器組12將輸入的音頻信號分成表 示音頻信號頻鐠內容的頻語分量。編碼器13執(zhí)行將至少一些頻鐠分量 編碼成編碼頻譜信息的處理。使用響應于從量化控制器14接收到的控 制參數(shù)而適配的量化分辨率,由量化器15量化編碼器13尚未編碼的 頻語分量??蛇x擇地,也可以量化一些或全部的編碼頻譜信息。量化 控制器14根據(jù)所檢測的輸入音頻信號的特性導出控制參數(shù)。在所圖示 的實施方式中,根據(jù)編碼器13提供的信息獲得所檢測的特性。量化控 制器14還可以響應于音頻信號的包括時間特性的其它特性來推導控 制參數(shù)??梢栽谟煞治鰹V波器組12執(zhí)行的處理之前、之中或之后,根 據(jù)音頻信號的分析獲得這些特性。由格式化器16將表示量化頻譜信息 的數(shù)據(jù)、編碼頻鐠信息和表示控制參數(shù)的數(shù)據(jù)裝配在編碼信號內,該 編碼信號沿著路徑17傳送以傳輸或存儲。格式化器16還可以將其它 數(shù)據(jù)裝配在編碼信號內,例如同步字、奇偶校驗或錯誤檢測碼、數(shù)據(jù) 庫檢索關鍵字和輔助信號,這些與理解本發(fā)明沒有關系,將不進一步 討論。
可以通過基帶或調制通信路徑在包括從超聲波到紫外線頻率的 頻鐠上發(fā)送編碼信號,或者可以使用任一記錄技術記錄在媒體上,包 括磁帶、卡或盤、光卡或光盤和在諸如紙張等媒體上的可檢測標記。 (1)分析濾波器組
下面討論的分析濾波器組12和合成濾波器組25基本上可以通過 任一希望的方式來實現(xiàn),包括多種數(shù)字濾波器技術、塊變換和小波變 換。在一種音頻編碼系統(tǒng)中,通過改進離散余弦變換(MDCT)實現(xiàn) 分析濾波器組12,通過逆改進離散余弦變換(IMDCT)實現(xiàn)合成濾 波器組25, Princen等人在1987年5月的幼e /"/e/7i^/ow"/ CWi/ o" 5^eec/i 57gw"/ iVoc.第2161-64頁的"基于時域混疊消除的使用濾波器組i殳計的子帶/變換編碼(Subband/Transform: Coding Using Filter Bank Designs Based on Time Domain Aliasing Cancellation)"中描述了這樣的實現(xiàn)方式。具體的濾波器組實施方式 原則上并不重要。
通過塊變換實現(xiàn)的分析濾波器組將輸入信號的 一 個塊或區(qū)間分 成表示該信號區(qū)間的頻鐠內容的一組變換系數(shù)。 一組一個或多個相鄰 變換系數(shù)表示在特定頻率子帶內的頻鐠內容,所述頻率子帶的帶寬與 該組內的系數(shù)個數(shù)相當。
通過諸如多相濾波器的某種類型的數(shù)字濾波器而非塊變換實現(xiàn) 的分析濾波器組將輸入信號分成一組子帶信號。每個子帶信號是在特 定頻率子帶內輸入信號頻語內容的基于時間的表示。優(yōu)選地,抽取該 子帶信號,使得每個子帶信號具有與單位時長的子帶信號內的抽樣個 數(shù)相當?shù)膸挕?br>
下面的討論更具體地涉及使用諸如上述時域混疊消除(TDAC ) 變換等塊變換的實施方式。在該討論中,術語"頻譜分量"是指變換系 數(shù),術語"頻率子帶"和"子帶信號"涉及多組一個或多個相鄰變換系數(shù)。 然而,本發(fā)明的原理也可以應用于其它類型的實施方式,所以術語"頻 率子帶,,和"子帶信號"還涉及表示信號整個帶寬的一部分的頻鐠內容 的信號,術語"頻鐠分量,,一般可以被理解為是指子帶信號的抽樣或成 分。感知編碼系統(tǒng)通常實現(xiàn)分析濾波器組以提供帶寬與人類聽覺系統(tǒng) 的所謂臨界帶寬相當?shù)念l率子帶。 (2)編碼
編碼器13可以執(zhí)行所希望的基本上任一類型的編碼處理。在一 種實施方式中,該編碼處理將頻鐠分量轉換成包括定標值和相關標度 因子的定標表示,如在下文中討論的。在其它的實施方式中,也可以 使用諸如矩陣或生成用于頻譜再生的邊信息或耦合的編碼處理。在下 文中更詳細地討論這些技術中的一些技術。
發(fā)送器IO可以包括圖1未建議的其它編碼處理。例如,量化頻 鐠分量可以經過熵編碼處理,例如算術編碼或霍夫曼編碼。理解本發(fā)明不需要對這些編碼處理的詳細描述。
(3 )量化
響應于從量化控制器14接收到的控制參數(shù),適配由量化器15提供的量化分辨率??梢砸运M娜魏畏绞綄С鲞@些參數(shù);然而,在感知編碼器中,使用某種類型的感知模型估計通過將要編碼的音頻信號可以掩蔽多少量化噪聲。在許多應用中,量化控制器還響應于在編碼信號的信息容量上施加的限制。有時,在用于編碼信號或者用于編碼信號特定部分的最大容許比特率方面表示這一限制。
在感知編碼系統(tǒng)的優(yōu)選實施例中,由比特分配處理使用控制參數(shù)確定分配給每個頻譜分量的比特數(shù)量和確定量化器"用于量化每個頻譜分量的量化分辨率,從而使量化噪聲的可聽性以信息容量或比特率限制為條件而最小化。量化控制器14的具體實施方式
對于本發(fā)明并
不關鍵。
在A/52文件中公開了量化控制器的一個例子,該文件描述了有時稱作杜比AC-3的編碼系統(tǒng)。在這種實施方式中,用定標表示來表示音頻信號的頻語分量,在所述定標表示中,標度因子提供音頻信號的頻鐠形狀的估計。感知模型使用標度因子計算掩蔽曲線,該掩蔽曲線估計音頻信號的掩蔽效應。隨后,量化控制器確定容許的噪聲閾值,它控制如何量化頻鐠分量,從而以某種最佳方式分布量化噪聲以符合所施加的信息容量限制或比特率。容許的噪聲閾值是掩蔽曲線的復本,并以由量化控制器確定的量值偏離該掩蔽曲線。在這種實施方式中,控制參數(shù)是定義容許噪聲閾值的數(shù)值。這些參數(shù)可以通過多種方式表示,例如閾值本身的直接表達或者諸如可以根據(jù)其導出所允許的噪聲閾值的標度因子和偏移等數(shù)值。
b)解碼接收器
圖2是分頻帶音頻解碼接收器20的一種實施方式的示意圖,該接收器20從路徑21接收表示音頻信號的編碼信號。去格式化器22從編碼信號獲得量化頻鐠信息、編碼頻譜信息和控制參數(shù)。由去量化器23使用響應于控制參數(shù)而適配的分辨率去量化所述量化頻譜信息??蛇x擇地,也可以去量化一些或全部的編碼頻語信息。編碼頻i瞽信息
由解碼器24解碼,并與去量化頻鐠分量組合,由合成濾波器組25將所述去量化頻鐠分量轉換成音頻信號后沿著路徑26傳送。
在接收器內執(zhí)行的處理與在發(fā)送器內執(zhí)行的相應處理是互補的。去格式化器22拆散由格式化器16裝配的內容。解碼器24執(zhí)行與由編碼器13執(zhí)行的編碼處理完全相反或擬相反的解碼處理,去量化器23執(zhí)行與量化器15執(zhí)行的處理擬相反的處理。合成濾波器組25執(zhí)行與分析濾波器組12執(zhí)行的處理相反的濾波處理。將解碼和去量化處理描述為擬相反的處理,因為它們可能不提供發(fā)送器內互補處理的完全逆處理。
在一些實施方式中,可以將合成或偽隨機噪聲插入去量化頻語分量的一些最低有效比特內,或者用作一個或多個頻譜分量的替代。接收器還可以執(zhí)行附加的解碼處理以解決在發(fā)送器內可能已經執(zhí)行的任何其它編碼。
c)代碼轉換器
圖3是從路徑31接收表示音頻信號的編碼信號的代碼轉換器30的一種實施方式的示意圖。去格式化器32從編碼信號中獲得量化頻語信息、編碼頻語信息、 一個或多個第一控制參數(shù)和一個或多個第二控制參數(shù)。由去量化器33使用響應于從編碼信號接收到的一個或多個第一控制參數(shù)而適配的分辨率去量化所述量化頻譜信息??蛇x擇地,也可以去量化一些或全部的編碼頻譜信息。如果需要的話,可以由解碼器34解碼全部或一些編碼頻譜信息用于代碼轉換。
編碼器35是特定代碼轉換應用可能不需要的可選組件。如果需要的話,編碼器35執(zhí)行將至少一些去量化頻鐠信息或編碼和/或解碼
頻鐠信息編碼成重新編碼頻鐠信息的處理。由量化器36使用響應于從編碼信號接收的一個或多個笫二控制參數(shù)而適配的量化分辨率重新量
化編碼器35未編碼的頻鐠分量。可選擇地,也可以量化一些或全部重新編碼的頻鐠信息。由格式化器37將表示重新量化頻語信息的數(shù)據(jù)、重新編碼頻鐠信息和表示一個或多個第二控制參數(shù)的數(shù)據(jù)裝配到編碼倌號內,該信號沿著路徑38傳送以傳輸或存儲。格式兆器37還可以將其它數(shù)據(jù)裝配到編碼信號內,如上文針對格式化器16所討論的。
代碼轉換器30能夠更有效地執(zhí)行其操作,因為實現(xiàn)量化控制器以確定第 一和第二控制參數(shù)不需要計算資源。代碼轉換器30可以包括諸如如上所述的量化控制器14的一個或多個量化器控制器以導出一個或多個第二控制參數(shù)和/或一個或多個第一控制參數(shù),而不是根據(jù)編碼信號獲得這些參數(shù)。下面討論確定第一和第二控制參數(shù)需要的編碼發(fā)送器10的特征。
2.數(shù)值的表示(l)定標
音頻編碼系統(tǒng)通常必需表示具有超過100dB的動態(tài)范圍的音頻信號。可以表示該動態(tài)范圍的音頻信號或其頻譜分量的二進制表示所需要的比特數(shù)量正比于該表示的精確度。在諸如常規(guī)光盤的應用中,用16比特表示脈沖編碼調制(PCM)音頻。許多專業(yè)應用使用更多的比特,例如20或24比特,來表示具有更大動態(tài)范圍和更高精確度的PCM音頻。
音頻信號或其頻鐠分量的整數(shù)表示是非常低效的,許多編碼系統(tǒng)使用包括下述形式的定標值和相關標度因子的另 一種表示
s=v.f (1)
其中s-音頻分量的值;
v:定標值;和
f-相關的標度因子??梢杂每赡芟M幕旧先我环绞奖硎径酥祐,包括小數(shù)表示和整數(shù)表示??梢杂酶鞣N方式表示正值和負值,包括符號數(shù)值表示和各種補碼表示,例如用于二進制數(shù)的1的補碼和2的補碼。標度因子f可以是簡單的數(shù),或者它可以是基本上任意函數(shù),例如指數(shù)函數(shù)gf或對數(shù)函數(shù)loggf,其中g是指數(shù)和對數(shù)函數(shù)的底數(shù)。
在適合于在許多數(shù)字計算機中使用的優(yōu)選實施方式中,使用特定的浮點表示,其中"尾數(shù)"m是定標值,使用2的補碼表示將其表示為
14二進制小數(shù),"指數(shù)"x表示標度因子,它是指數(shù)函數(shù)2-x。本公開內容的其它部分涉及浮點尾數(shù)和指數(shù);然而,應當理解這種特定的表示方式僅是本發(fā)明可以應用于用定標值和標度因子表示的音頻信息的一種方式。
用這種特定的浮點表示方式將音頻信號分量的值表示如下s=m.2-x ( 2 )
例如,假設頻語分量的值等于0.175781251(),它等于二進制小數(shù)0.001011012。這個值可以用表I所示的多對尾數(shù)和指數(shù)表示。
表I
尾數(shù)(m )指數(shù)(X)表示
0觀01101200.001011012x20=0.17578125xl=0.17578125
0.0101101210.01011012x2 ;0.3515625x0.5=0.17578125
0,101101220.1011012x2 2=0.703125x0.25=:0.17578125
1.01101231.011012x2 3=1.40625x0.125=0.17578125
在這種特定浮點表示方式中,用值為負數(shù)數(shù)值的2的補碼的尾數(shù)表示負數(shù)。參見表I中的最后一行,例如,2的補碼表示方式的二進制小數(shù)1.011012表示十進制值-0.59375。因此,用該表最后一行內所示的浮點數(shù)實際表示的值是-0.59375x2^二0.07421875,它不同于該表中圖示的預期值。下面討論這一方面的意義。(2 )規(guī)格化
如果"規(guī)格化,,浮點表示方式,則可以用更少的比特表示浮點數(shù)的值。如果在不丟失有關該值的任何信息的情況下已盡可能遠地將尾數(shù)的二進制表示方式內的比特移到最高有效比特位置,則將非零浮點表示方式稱作規(guī)格化的。在2的補碼表示方式中,規(guī)格化的正尾數(shù)始終大于或等于+ 0.5并小于+ 1,而規(guī)格化的負尾數(shù)始終小于-0.5并大于或等于-1。這等同于使最高有效比特不等于符號比特。在表I中,在第三行中的浮點表示方式是規(guī)格化的。用于規(guī)格化尾數(shù)的指數(shù)x等于2,它是將'T,比特移動到最高有效比特位置需要的比特位移次數(shù)。假設頻鐠分量的值等于十進制小數(shù)-0.17578125,它等于二進制數(shù)1.110100112。在2的補碼表示中的初始"1"比特表示該數(shù)值是負數(shù)??梢詫⑦@個數(shù)值表示為具有規(guī)格化尾數(shù)111=1.0100112的浮點數(shù)。用于這個規(guī)格化尾數(shù)的指數(shù)x等于2,它是將"0"比特移動到最高有效比特位置需要的比特位移次數(shù)。
在表I的第一、第二和最后一行內表示的浮點表示方式是未規(guī)格化的浮點表示方式。在該表的前兩行內表示的表示方式是"欠規(guī)格化的",在該表的最后一行內表示的表示方式是"過規(guī)格化的"。
為了編碼目的,可以使用更少的比特表示規(guī)格化浮點數(shù)的尾數(shù)的精確值。例如,可以用九個比特表示未規(guī)格化尾數(shù)m=0.001011012的值。需要八個比特表示小數(shù)值,需要一個比特表示符號??梢詢H用七個比特表示規(guī)格化尾數(shù)m-0.10110l2的值??梢杂酶俚谋忍乇硎驹诒韑最后一行內表示的過規(guī)格化尾數(shù)m-1.0110l2的值;然而,如上面所解釋的,帶有過規(guī)格化尾數(shù)的浮點數(shù)不再表示正確的數(shù)值。
這些例子有助于說明為何通常希望避免欠規(guī)格化的尾數(shù)和為何通常嚴格避免過規(guī)格化的尾數(shù)。欠規(guī)格化尾數(shù)的存在可能意味著在編碼信號中低效地使用比特或者較不精確地表示數(shù)值,而過規(guī)格化尾數(shù)的存在通常意味著數(shù)值嚴重失真。(3)對規(guī)格化的其它考慮
在許多實施方式中,指數(shù)用固定數(shù)量的比特表示,或者可選擇地,限制于具有規(guī)定范圍內的數(shù)值。如果尾數(shù)的比特長度長于最大可能指
數(shù)值,則該尾數(shù)能夠表示不能規(guī)格化的數(shù)值。例如,如果用3個比特表示指數(shù),則它可以表示從O到7的任意值。如果用16個比特表示尾數(shù),則它能夠表示的最小非零值需要14個比特移位以規(guī)格化。3比特指數(shù)顯然不能表示規(guī)格化這個尾數(shù)值需要的數(shù)值。這種情況并不影響本發(fā)明所基于的基本原理,但是實際的實施方式應當確保算術運算并不將尾數(shù)移位到超出相關指數(shù)能夠表示的范圍。
通常,使用其自身的尾數(shù)和指數(shù)表示在編碼信號內的每個頻譜分量的效率很低。如果多個尾數(shù)共享公用指數(shù),則需要較少的指數(shù)。這種配置有時稱作塊浮點(BFP)表示方我。建立用于該塊的指數(shù)值,從而用規(guī)格化的尾數(shù)表示在該塊內具有最大數(shù)值的值。
如果使用較大的塊,則需要較少的指數(shù),和因而表示指數(shù)的較少比特。然而,使用較大的塊通常導致在該塊內更多的值欠規(guī)格化。因此,通常選擇塊的大小以平衡在傳送指數(shù)需要的比特數(shù)量和表示欠規(guī)格化尾數(shù)導致的不精確性和低效性之間的折衷。
塊大小的選擇還可以影響編碼的其它方面,例如由在量化控制器14內使用的感知模型計算出的掩蔽曲線的精確度。在一些實施方式中,感知模型使用BFP指數(shù)作為頻譜形狀的估計以計算掩蔽曲線。如果將很大的塊用于BFP,則降低了 BFP指數(shù)的頻諳分辨率,并降低了由感知模型計算出的掩蔽曲線的精確度??梢詮腁/52文件獲得其它細節(jié)。
在下文的描述中將不討論使用BFP表示方式的結果。應當理解,當使用BFP表示方式時,某些頻語分量將很可能始終是欠規(guī)格化的。(4 )量化
用浮點形式表示的頻譜分量的量化通常是指尾數(shù)的量化。指數(shù)通常并不量化,而是用固定數(shù)量的比特表示,或者可選擇地,限制于具有在規(guī)定范圍內的值。
如果將表I所示的規(guī)格化尾數(shù)m-0.101101量化到0.0625=0.00012的分辨率,則量化尾數(shù)q(m)等于二進制小數(shù)0.10112,它可以用5個比特表示,并等于十進制小數(shù)0.6875。在量化到這個特定分辨率之后用浮點表示方式表示的值是q(m)'2-x=0.6875x0.25=0.171875。
如果將在該表中所示的規(guī)格化尾數(shù)量化到0.25=0.012的分辨率,則已量化的尾數(shù)等于二進制小數(shù)0.102,它可以用3個比特表示,并等于十進制小數(shù)0.5。在量化到這個較粗略的分辨率之后用浮點表示方式表示的值是q(s)=0.5x0.25=0.125。
提供這些特定的例子僅僅為了便于解釋。對于本發(fā)明來說,量化的具體形式和在量化的分辨率和表示量化尾數(shù)需要的比特數(shù)量之間的具體關系在原則上并不重要。(5)算術運算
許多處理器和其它硬件邏輯執(zhí)行可直接應用于數(shù)的浮點表示的 一組專用算術運算。 一些處理器和處理邏輯并不執(zhí)行這些運算,有時 使用這些類型的處理器是很有吸引力的,因為它們通常低廉得多。當 使用這些處理器時, 一種模擬浮點運算的方法是將浮點表示轉換成擴 展精確度的定點小數(shù)表示,對已轉換的值執(zhí)行整數(shù)算術運算,并重新 轉換回浮點表示。更有效的方法是分別對尾數(shù)和指數(shù)執(zhí)行整數(shù)算術運 算。
通過考慮到這些算術運算可能對尾數(shù)的影響,編碼發(fā)送器可能能 夠修改其編碼處理,以便可以按需要控制或防止在隨后解碼處理內的 過規(guī)格化和欠規(guī)格化。如果在解碼處理中出現(xiàn)頻語分量尾數(shù)的過規(guī)格 化或欠規(guī)格化,則解碼器不能在不改變相關指數(shù)數(shù)值的情況下校正這 種情況。
對于代碼轉換器30來說,這尤其麻煩,因為指數(shù)的改變意味著 需要量化控制器的復雜處理以確定用于代碼轉換的控制參數(shù)。如果改 變頻鐠分量的指數(shù),則在編碼信號內傳送的一個或多個控制參數(shù)可能 不再有效,并可能需要再次確定,除非確定這些控制參數(shù)的編碼處理 能夠預料到該改變。
相加、相減和相乘的影響尤其重要,因為在例如在下文中描述的 編碼技術中使用這些算術運算。 (a )相力口
兩個浮點數(shù)的相加可以在兩個步驟中執(zhí)行。在第一步驟中,如果 需要,協(xié)調這兩個數(shù)的定標。如果兩個數(shù)的指數(shù)不相等,則將與較大 指數(shù)相關的尾數(shù)的比特向右移動與兩個指數(shù)的差值相等的次數(shù)。在第 二步驟中,通過使用2的補碼運算相加兩個數(shù)的尾數(shù)來計算"總尾數(shù)"。 隨后,用總尾數(shù)和兩個原始指數(shù)中較小的指數(shù)表示兩個原始數(shù)之和。
在相加運算結束時,總尾數(shù)可能是過規(guī)格化或欠規(guī)格化的。如果 兩個原始尾數(shù)之和等于或大于+1或者小于-1,則總尾數(shù)將是過規(guī)格化 的。如果兩個原始尾數(shù)之和小于+ 0.5和大于或等于-0.5,則總尾數(shù)將是欠規(guī)格化的。如果兩個原始^c數(shù)具有相反的符號,則會出現(xiàn)后一種 情況。
(b )相減
以類似于上面描述的相加的方式,可以在兩個步驟中執(zhí)行兩個浮 點數(shù)的相減。在第二步驟中,通過使用2的補碼運算從一個原始尾數(shù) 中減去另一個原始尾數(shù)計算出"差值尾數(shù)"。隨后,用該差值尾數(shù)和兩 個原始指數(shù)中較小的指數(shù)表示兩個原始數(shù)的差值。
在相減運算結束時,差值尾數(shù)可能是過規(guī)格化或欠規(guī)格化的。如 果兩個原始尾數(shù)的差值小于+0.5和大于或等于-0.5,則差值尾數(shù)將是 欠規(guī)格化的。如果兩個原始尾數(shù)的差值等于或超過+1或者小于-1,則 差值尾數(shù)將是過規(guī)格化的。如果兩個原始尾數(shù)具有相反的符號,則會 出現(xiàn)后一種情況。
(c)相乘
可以在兩個步驟中執(zhí)行兩個浮點數(shù)的相乘。在第一步驟中,通過 相加兩個原始數(shù)的指數(shù)計算出"總指數(shù)"。在第二步驟中,通過使用2 的補碼運算相乘兩個數(shù)的尾數(shù)計算出"乘積尾數(shù)"。隨后,用乘積尾數(shù) 和總指數(shù)表示兩個原始數(shù)的乘積。
在相乘運算結束時,乘積尾數(shù)可能是欠規(guī)格化的,但是有一個例 外,不可能是過規(guī)格化的,因為乘積尾數(shù)的數(shù)值不可能大于或等于+1 或者小于-1。如果兩個原始尾數(shù)的乘積小于+0.5和大于或等于-0.5,則 乘積尾數(shù)將是欠規(guī)格化的。
當將要相乘的兩個浮點數(shù)都具有等于-1的尾數(shù)時,出現(xiàn)過規(guī)格化 規(guī)則的一個例外。在這種情況下,相乘產生等于+ 1的乘積尾數(shù),它 是過規(guī)格化的。然而,通過保證將要相乘的至少一個數(shù)值不是負值, 能夠防止出現(xiàn)這種情況。對于下面討論的合成技術來說,相乘僅用于 合成來自耦合聲道信號的信號和頻鐠再生。通過要求耦合系數(shù)是非負 值,在耦合中避免了上述例外的情況,并且通過要求包絡定標信息、 所轉換的分量混合參數(shù)和類似噪聲的分量混合參數(shù)是非負值,對于頻 i普再生避免了上述例外情況。該討論的剩余部剩艮設執(zhí)行編碼技術以避免這種例外的情況。如 果不能避免這種情況,則必需在使用相乘時采取步驟也避免過規(guī)格化。 (d)總結
可以將這些運算對尾數(shù)的影響總結如下
(1) 兩個規(guī)格化數(shù)的相加可能產生可以是規(guī)格化、欠規(guī)格化或 過規(guī)格化的總和;
(2) 兩個規(guī)格化數(shù)的相減可能產生可以是規(guī)格化、欠規(guī)格化或 過規(guī)格化的差值;以及
(3 )兩個規(guī)格化數(shù)的相乘可能產生可以是規(guī)格化或欠規(guī)格化的 乘積,但是考慮到上面討論的限制,不會是過規(guī)格化的。
如果是規(guī)格化的,則可以使用更少的比特表示從這些算術運算獲 得的數(shù)值。欠規(guī)格化的尾數(shù)與小于規(guī)格化尾數(shù)的理想值的指數(shù)相關; 欠規(guī)格化尾數(shù)的整數(shù)表示將損失精確度,因為從最低有效比特位置丟 失了有效比特。過規(guī)格化的尾數(shù)與大于規(guī)格化尾數(shù)的理想值的指數(shù)相 關;過規(guī)格化的尾數(shù)的整數(shù)表示將引入失真,因為將有效比特從最高 有效比特位置移位到符號比特位置。下面討論一些編碼技術影響規(guī)格 化的方式。
3.編碼纟支術
一些應用在編碼信號的信息容量上施加了嚴格的限制,基本的感 知編碼技術在解碼信號內不插入不可接受的量化噪聲電平的情況下不 能滿足這些限制??梢允褂闷渌木幋a技術,雖然也降低解碼信號的 質量,但是以某種方式將量化噪聲降低到可接受的電平。下面討論這 些編碼技術中的一些技術。
a)矩陣化
可以使用矩陣化來降低在兩聲道編碼系統(tǒng)內的信息容量要求,如 果在這兩個聲道內的信號非常相關的話。通過將兩個相關信號矩陣化 成和信號和差值信號,兩個矩陣化信號之一將具有與兩個原始信號之
一基本上相等的信息容量要求,但是另一個矩陣化信號將具有低得多 的信息容量要求。例如,如果兩個原始信號完全相關,則矩陣化信號之一的信息容量要求將接近于零。
原則上,可以從兩個矩陣化和信號和差值信號完全恢復出兩個原 始信號;然而,用其它編碼技術插入的量化噪聲將阻止完全恢復。量
化噪聲可能導致的矩陣化問題與本發(fā)明的理解并不相關,將不進一步 討論??梢詮钠渌鼌⒖嘉墨I中獲得其它的細節(jié),例如美國專利
5,291,557以及1999年8月 Audio Eng. Soc. 17th International Conference上Vernon發(fā)表的"杜比數(shù)字用于數(shù)字電視和存儲應用的 音頻編石馬(Dolby Digital: Audio Coding for Digital Television and Storage Applications ),,笫44至57頁,尤其參見第50至51頁。
下面描述用于編碼兩聲道立體聲節(jié)目的典型矩陣。優(yōu)選地,僅當 認為兩個原始子帶信號非常相關時,才將矩陣化自適應地應用于在子 帶信號內的頻鐠分量。該矩陣將左輸入聲道和右輸入聲道的頻譜分量 組合成和聲道信號和差值聲道信號的頻譜分量,如下
Mi-l/2(Li+Rj) (3a) D產l/2(Lj畫Ri) (3b)
其中M產在矩陣的和聲道輸出內的頻譜分量i;
D產在矩陣的差值聲道輸出內的頻謙分量i;
L尸矩陣的左聲道輸入內的頻語分量i;以及
Ri-矩陣的右聲道輸入內的頻鐠分量i。 以類似于用于未矩陣化的信號內的頻譜分量的方式,編碼在和聲道信 號和差值聲道信號內的頻譜分量。在用于左聲道和右聲道的子帶信號 非常相關和同相的情況下,在和聲道信號內的頻譜分量具有與在左聲 道和右聲道內的頻譜分量的幅度基本上相同的幅度,在差值聲道信號
內的頻譜分量將基本上等于零。如果用于左聲道和右聲道的子帶信號 非常相關并相互在相位上相反,則頻譜分量幅度與和聲道信號和差值 聲道信號之間的關系顛倒。
如果將矩陣化自適應地應用于子帶信號,將用于每個頻率子帶的 矩陣化的指示包括在編碼信號內,以便接收器能夠確定何時應當使用 互補逆矩陣。接收器為編碼信號內的每個聲道獨立地處理和解碼子帶信號,除非接收到表示子帶信號被矩陣化的指示。接收器能通過應用 如下的逆矩陣反轉矩陣化的影響和恢復左聲道子帶信號和右聲道子帶
信號的頻譜分量
<formula>formula see original document page 22</formula>
其中4-在矩陣的恢復左聲道輸出內的頻語分量i;和 《-在矩陣的恢復右聲道輸出內的頻語分量i。
通常,因為量化影響,所恢復的頻譜分量并不精確地等于原始的頻譜 分量。
:v 如果逆矩陣接收到具有規(guī)格化的尾數(shù)的頻譜分量,_則在該逆矩陣 內的相加和相減運算可能會導致具有如上面所解釋的欠規(guī)格化或過規(guī) 格化的尾數(shù)的恢復頻鐠分量。
如果接收機合成矩陣化子帶信號內的一個或多個頻鐠分量的替 代品,則這種情況更加復雜。合成處理通常建立不確定的頻譜分量值。 這種不確定性導致不可能預先確定來自逆矩陣的哪個頻譜分量將是過 規(guī)格化或欠規(guī)格化的,除非預先已經知道合成處理的總體影響。
b)耦合
可以使用耦合來編碼多個聲道的頻譜分量。在優(yōu)選實施方式中,
將耦合限制于更高頻率子帶內的頻謙分量;然而,在原理上,耦合可 以用于頻鐠的任一部分。
耦合將在多個聲道內的信號頻語分量組合成單個耦合聲道信號 的頻譜分量,并編碼表示耦合聲道信號的信息而不是編碼表示原始多 個信號的信息。編碼信號還包括表示原始信號的頻譜形狀的邊信息。 該邊信息使接收機能夠從耦合聲道信號合成多個信號,所述多個信號
具有與原始多個聲道的信號基本上相同的頻譜形狀。在A/52文件中描 述了可以執(zhí)行耦合的一種方式。
下面的討論描述了可以執(zhí)行耦合的一種簡單的實施方式。#4居這
種實施方式,通過計算在多個聲道內相應頻鐠分量的平均值形成耦合 聲道的頻譜分量。將表示原始信號頻譜形狀的邊信息稱作耦合坐標。根據(jù)在特定聲道內的頻i普分量能量與在耦合聲道信號內頻i昝務量能量 的比值計算出用于特定聲道的耦合坐標。
在優(yōu)選實施方式中,在編碼信號內作為浮點數(shù)同時傳送頻鐠分量 和耦合坐標。接收器通過相乘在耦合聲道信號內的每個頻鐠分量與合 適的耦合坐標而從耦合聲道信號合成多個聲道信號。結果是具有與原 始信號相同或基本上相同的頻譜形狀的一組合成信號??梢詫⑦@個處 理表示如下
Si,j-Ci'ccj,j (5)
其中Si,產在聲道j內的合成頻譜分量i;
C產在耦合聲道信號內的頻語分量i;和
ccj,產用于聲道j內的頻i普分量i的耦合坐標。
如果用規(guī)格化的浮點數(shù)表示耦合聲道頻鐠分量和耦合坐標,則這 兩個數(shù)的乘積將生成用可能是欠規(guī)格化但是因為上面解釋的原因不會 是過規(guī)格化的尾數(shù)表示的值。
如果接收器合成耦合聲道信號內的一個或多個頻鐠分量的替代 品,則這種情況更加復雜。如上所述,合成處理通常建立不確定的頻 譜分量值,這種不確定性導致不可能預先確定相乘所得到的哪個頻譜 分量將是欠規(guī)格化的,除非預先已經知道合成處理的總體影響。
c)頻i脊再生
在使用頻譜再生的編碼系統(tǒng)中,編碼發(fā)送器僅編碼輸入音頻信號 的基帶部分,并丟棄其余部分。解碼接收器生成合成信號以替代所丟 棄的部分。編碼信號包括由解碼處理用于控制信號合成的定標信息, 以便合成信號在一定程度上保持所丟棄的輸入音頻信號部分的頻譜電 平。
可以通過多種方式再生頻鐠分量。 一些方式使用偽隨機數(shù)生成器 生成或合成頻語分量。其它的方式將基帶信號內的頻i普分量轉換或復 制到需要再生的頻鐠部分內。具體的方式對于本發(fā)明來說并不重要; 然而,從上面引用的參考文獻可以獲得一些優(yōu)選實施方式的描述。
下面的討論描述了頻譜分量再生的一種簡單的實施方式。根據(jù)這種賣施方式,通過從基帶信號復制頻譜分量,組合所復制的分量與由 偽隨機數(shù)生成器生成的類似噪聲的分量,和根據(jù)在編碼信號中傳送的 定標信息定標該組合,合成頻語分量。根據(jù)在編碼信號內傳送的混合 參數(shù),還調整所復制的分量和類似噪聲的分量的相對加權??梢杂孟?br>
述表達式表示這一處理
s產er[arTi+bi'Ni] (6)
其中s產合成頻鐠分量i;
e尸用于頻譜分量i的包絡定標信息;
T尸用于頻語分量i的復制頻語分量;
N尸為頻i脊分量i生成的類似噪聲分量;
ar用于轉換分量Tj的混合參數(shù);和
b「用于類似噪聲分量Ni的混合參數(shù)。
如果用規(guī)格化的浮點數(shù)表示復制頻鐠分量、包絡定標信息、類似 噪聲分量和混合參數(shù),則生成合成頻譜分量需要的相加和相乘操作將 產生用因為上面解釋的原因可能是欠規(guī)格化或過規(guī)格化的尾數(shù)表示的 值。不可能預先確定哪個合成頻鐠分量將是欠規(guī)格化或過規(guī)格化的, 除非預先已經知道合成處理的總體影響。
B.改進技術
本發(fā)明涉及允許更高效地執(zhí)行和提供更高質量的代碼轉換信號 的感知編碼信號的代碼轉換的技術。這通過消除代碼轉換處理中的某 些功能來實現(xiàn),例如消除在常規(guī)的編碼發(fā)送器和解碼接收器內需要的 分析和合成濾波。在其最簡單的形式中,根據(jù)本發(fā)明的代碼轉換僅執(zhí) 行去量化頻鐠信息所需要的部分解碼處理,和它僅執(zhí)行重新量化去量 化頻語信息所需要的部分編碼處理。如果需要的話,可以執(zhí)行附加的 解碼和編碼。通過從編碼信號中獲得控制去量化和重新量化需要的控 制參數(shù),進一步簡單了該代碼轉換處理。下面的討論描述了編碼發(fā)送 器可用于生成代碼轉換需要的控制參數(shù)的兩種方法。
1.最差情況假設
a )概述f 用于生成控制參數(shù)的第一種方法假設最差情況條件,并僅在確保
不可能出現(xiàn)過規(guī)格化所需要的程度上修改浮點指數(shù)。預期一些不必要
的欠規(guī)格化。已修改的指數(shù)由量化控制器14用于確定一個或多個第二 控制參數(shù)。已修改的指數(shù)并不需要包括在編碼信號內,因為代碼轉換 處理在相同條件下也修改指數(shù),它修改與已修改指數(shù)相關的尾數(shù),以 使浮點表示方式表達正確的數(shù)值。
參見圖2和圖4,量化控制器14如上所述地確定一個或多個第一 控制參數(shù),估計器43分析與解碼器24的合成處理相關的頻譜分量以 識別為確保在合成處理中不會出現(xiàn)過規(guī)格化而必需修改哪些指數(shù)。修 改這些指數(shù),并將它們與其它未修改的指數(shù)一起傳送給量化控制器 44,它確定用于將在代碼轉換器30內執(zhí)行的重新編碼處理的一個或多 個第二控制參數(shù)。估計器43僅需要考慮在合成處理中可能產生過規(guī)格 化的算術運算。因為這個原因,并不需要考慮類似于上述的用于耦合 聲道信號的合成處理,因為如上面所解釋的,這個特定處理并不會導 致過規(guī)格化??赡苄枰紤]在耦合的其它實施方式中的算術運算。
b)處理的詳細情況 (1)矩陣化
在矩陣化中,不可能知道將提供給逆矩陣的每個尾數(shù)的確切值, 直到由量化器15執(zhí)行了量化和已經合成由解碼處理生成的任何類似 噪聲分量之后。在這種實施方式中,必需為每個矩陣運算假設最差的 情況,因為尾數(shù)值是未知的。參見等式4a和4b,在逆矩陣內的最差 情況運算是符號相同和數(shù)值足夠大到相加成大于1的數(shù)值的兩個尾數(shù) 的相加,或者符號不同和數(shù)值足夠大到相加成大于1的數(shù)值的兩個尾 數(shù)的相減。通過將每個尾數(shù)向右偏移一個比特和將它們的指數(shù)減1, 在代碼轉換器內可以針對任一種最差情況防止過規(guī)格化;因此,估計 器43在逆矩陣計算中降低每個頻語分量的指數(shù),量化控制器44使用 這些修改后的指數(shù)確定用于代碼轉換器的一個或多個第二控制參數(shù)。 在此和在該討論的其余部分中假設在修改之前的指數(shù)值大于零。
如果實際提供給逆矩陣的兩個尾數(shù)符合最差情況,則結果是正確規(guī)格化的尾數(shù)。如果實際的尾數(shù)并不符合最差情況條件,則結果將是 欠規(guī)格化的尾數(shù)。
(2 )頻語再生(HFR )
在頻鐠再生中,不可能知道將提供給再生處理的每個尾數(shù)的確切 值,直到由量化器15執(zhí)行了量化和已經合成由解碼處理生成的任何類 似噪聲分量之后。在這種實施方式中,必需為每個算術運算假設最差 情況,因為尾數(shù)值是未知的。參見等式6,最差情況運算是用于轉換 頻譜分量和類似噪聲頻譜分量的符號相同和數(shù)值足夠大到相加成大于 1的數(shù)值的尾數(shù)的相加。相乘運算不可能導致過規(guī)格化,但是它們也 不能確保不出現(xiàn)過規(guī)格化;因此,必需假設合成的頻譜分量是過規(guī)格 化的。通過將頻鐠分量尾數(shù)和類似噪聲分量尾數(shù)向右偏移一個比特和 將指數(shù)減l,在代碼轉換器內可以防止過規(guī)格化;因此,估計器43降 低用于轉換分量的指數(shù),量化控制器44使用這個已修改的指數(shù)確定用 于代碼轉換器的一個或多個第二控制參數(shù)。
如果實際提供給再生處理的兩個尾數(shù)符合最差情況條件,則結果 是正確規(guī)格化的尾數(shù)。如果實際的尾數(shù)并不符合最差情況條件,則結 果將是欠規(guī)格化的尾數(shù)。
c)優(yōu)點和缺點
這個進行最差情況假設的第一方法可以低成本地實施。然而,它 需要代碼轉換器強制某些頻譜分量欠規(guī)格化,并較不精確地在其編碼 信號內傳送,除非分配更多的比特來表示它們。此外,因為降低了一 些指數(shù)的值,基于這些已修改指數(shù)的掩蔽曲線較不精確。
2.確定性處理
a )概述
用于生成控制參數(shù)的第二種方法執(zhí)行允許確定過規(guī)格化和欠規(guī) 格化的具體情況的處理。修改浮點指數(shù)以防止過規(guī)格化和最小化欠規(guī) 格化的出現(xiàn)率。由量化控制器14使用已修改的指數(shù)來確定一個或多個 第二控制參數(shù)。已修改的指數(shù)并不需要包括在編碼信號內,因為代碼 轉換處理在相同的條件下也修改指數(shù),它修改與已修改指數(shù)相關的尾數(shù),以便浮點表示方式表示正確的值。
參見圖2和圖5,量化控制器14如上所述地確定一個或多個第一 控制參數(shù),合成模型53分析與解碼器24的合成處理相關的頻鐠分量 以識別出必需修改哪些指數(shù),以便確保在合成處理內不出現(xiàn)過規(guī)格化 和最小化在合成處理內出現(xiàn)的欠規(guī)格化的出現(xiàn)率。修改這些指數(shù),并 將它們與其它未修改指數(shù)一起發(fā)送給量化控制器54,它確定用于將在 代碼轉換器30內執(zhí)行的重新編碼處理的一個或多個第二控制參數(shù)。合 成模型53執(zhí)行全部或部分合成處理,或者它模擬其影響以允許預先確 定在合成處理內對所有算術運算的規(guī)格化的影響。
每個量化尾數(shù)的值和任一合成分量必需可用于在合成模型53內 執(zhí)行的分析處理。如果合成處理使用偽隨機數(shù)生成器或其它準隨機處 理,則初始化或籽數(shù)值必需在發(fā)送器的分析處理和接收器的合成處理 之間同步。這可以通過使編碼發(fā)送器10確定所有的初始化值和在編碼 信號內包括這些數(shù)值的某些指示來實現(xiàn)。如果在獨立的間隔或幀內設 置編碼信號,則可能希望將這個信息包括在每個幀內以最小化在解碼
時的啟動延遲和便于諸如編輯等各種節(jié)目制作活動。 b)處理的詳細情況 (1)矩陣化
在矩陣化中,由解碼器24使用的解碼處理可能將合成輸入給逆 矩陣的一個或兩個頻鐠分量。如果合成任一個分量,則由逆矩陣計算 的頻語分量可能是過規(guī)格化或欠規(guī)格化的。由于在尾數(shù)內的量化誤差, 由逆矩陣計算的頻i普分量也可能是過規(guī)格化或欠規(guī)格化的。合成模型 53可以測定這些未規(guī)格化的條件,因為它可以確定輸入給逆矩陣的尾 數(shù)和指數(shù)的確切值。
如果合成模型53確定規(guī)格化將失去,則可以降低輸入給逆矩陣 的一個或兩個分量的指數(shù)以防止過規(guī)格化,并可以增加該指數(shù)以防止 欠規(guī)格化。已修改的指數(shù)并未包括在編碼信號內,但是它們被量化控 制器54用于確定一個或多個第二控制參數(shù)。當代碼轉換器30對這些 指數(shù)進行相同的修改時,也將調整相關的尾數(shù),以便所獲得的浮點數(shù)表示正確的分量值。
(2)頻謙再生(HFR)
在頻語再生中,由解碼器24使用的解碼處理可能將合成轉換的 頻鐠分量,它也可以合成要添加給該轉換分量的類似噪聲分量。因此, 由頻鐠再生處理計算出的頻鐠分量可能是過規(guī)格化或欠規(guī)格化的。由 于在轉換分量尾數(shù)內的量化誤差,再生分量也可能是過規(guī)格化或欠規(guī) 格化的。合成模型53可以測定這些未規(guī)格化的條件,因為它可以確定 輸入給再生處理的尾數(shù)和指數(shù)的確切值。
如果合成模型53確定規(guī)格化將失去,則可以降低用于輸入給再 生處理的一個或兩個分量的指數(shù)以防止過規(guī)格化,并可以增加該指數(shù) 以防止欠規(guī)格化。已修改的指數(shù)并未包括在編碼信號內,但是它們被 量化控制器54用于確定一個或多個第二控制參數(shù)。當代碼轉換器30 對這些指數(shù)進行相同的修改時,也將調整相關的尾數(shù),以便所獲得的 浮點數(shù)表示正確的分量值。 (3 )耦合
在用于耦合聲道信號的合成處理中,由解碼器24使用的解碼處 理可能將合成用于在耦合聲道信號內的一個或多個頻鐠分量的類似噪 聲分量。因此,由合成處理計算出的頻語分量可能是欠規(guī)格化的。由 于在耦合聲道信號內頻語分量的尾數(shù)內的量化誤差,合成分量也可能 是欠規(guī)格化的。合成模型53可以測定這些未規(guī)格化的條件,因為它可 以確定輸入給合成處理的尾數(shù)和指數(shù)的確切值。
如果合成模型53確定規(guī)格化將失去,則可以增加用于輸入給合 成處理的一個或兩個分量的指數(shù)以防止欠規(guī)格化。已修改的指數(shù)并未 包括在編碼信號內,但是它們被量化控制器54用于確定一個或多個第 二控制參數(shù)。當代碼轉換器30對這些指數(shù)進行相同的修改時,也將調 整相關的尾數(shù),以便所獲得的浮點數(shù)表示正確的分量值。
c)優(yōu)點和缺點
與執(zhí)行最差情況估計方法的處理相比,執(zhí)行該確定性方法的處理 實施成本更高;然而,這些附加的實施成本涉及編碼發(fā)送器,并允許
28以更低成本實施代碼轉換器。此外,可以避免或最小化因為未規(guī)格化 尾數(shù)導致的不精確度,與在最差情況估計方法內計算的掩蔽曲線相比, 基于根據(jù)該確定性方法修改的指數(shù)的掩蔽曲線更加精確。
c.實施
本發(fā)明的各個方面可以以各種方式實施,包括由計算^/L和某個其 它設備執(zhí)行的軟件,所述設備包括更專用的組件,例如耦合到類似于
在通用計算機內發(fā)現(xiàn)的組件的數(shù)字信號處理器(DSP)電路。圖6是 可用于實現(xiàn)本發(fā)明的各個方面的設備70的方框圖。DSP 72提供計算 資源。RAM 73是由DSP 72進行信號處理所用的系統(tǒng)隨機存取存儲器 (RAM) 。 ROM 74表示某種形式的持久存儲器,例如只讀存儲器 (ROM),用于存儲操作設備70和執(zhí)行本發(fā)明的各個方面需要的程 序。1/0控制器75表示通過通信信道76、 77接收和發(fā)送信號的接口 電路。模數(shù)轉換器和數(shù)模轉換器可以根據(jù)需要包括在I/O控制器75 內以接收和/或發(fā)送模擬音頻信號。在所圖示的實施例中,所有的主要 系統(tǒng)組件都連接到總線71,該總線可以代表多個物理總線;然而,總 線結構并非本發(fā)明的實施所需要的。
在用通用計算機系統(tǒng)實施的實施例中,可以包括其它組件以建立 與諸如鍵盤或鼠標和顯示器等設備的接口 ,和用于控制具有諸如磁帶 或磁盤或光媒體等存儲媒體的存儲設備。存儲媒體可以記錄用于操作 系統(tǒng)、實用程序和應用程序的指令程序,可以包括實施本發(fā)明各個方 面的程序實施例。
的功:,所述各種方式包^ ^散邏輯組件、集l電路、 一 個或多個ASIC 和/或程控處理器。實現(xiàn)這些組件的方式對于本發(fā)明來說并不重要。
可以通過各種機器可讀媒體傳送本發(fā)明的軟件實施方式,所述各 種機器可讀媒體例如是在包括從超聲波到紫外線頻率的頻譜上的基帶 或調制通信路徑,或"著使用任一記錄技術傳送信息的存儲媒體,包括 磁帶、磁卡或磁盤、光卡或光盤和在諸如紙張等媒體上的可檢測標記。
權利要求
1.一種代碼轉換編碼音頻信息的方法,包括在第一頻帶中接收傳送表示音頻信號頻譜分量的第一量化定標值和第一標度因子的第一編碼信號,并且傳送一個或多個第一控制參數(shù)和一個或多個第二控制參數(shù);從所述第一編碼信號獲得所述第一量化定標值和所述第一標度因子,其中每個第一標度因子與一個或多個第一量化定標值相關,每個第一量化定標值根據(jù)其相關的第一標度因子被定標,并且每個第一量化定標值和相關的第一標度因子表示相應的頻譜分量;從所述第一編碼信號獲得一個或多個第一控制參數(shù)和一個或多個第二控制參數(shù),其中響應于所述第一編碼信號的第一比特率要求導出所述一個或多個第一控制參數(shù),并且響應于所述第二編碼信號的不等于所述第一比特率的第二比特率要求導出所述一個或多個第二控制參數(shù);響應于所述一個或多個第一控制參數(shù)根據(jù)第一比特分配處理來分配比特,并且通過根據(jù)基于由第一比特分配處理分配的比特數(shù)量的量化分辨率來去量化所述第一量化定標值,獲得去量化的定標值;從所述去量化的定標值產生合成頻譜分量,其中所述合成頻譜分量表示所述第一頻帶之外的第二頻帶中的頻譜內容;產生用于所述合成頻譜分量的一個或多個第二標度因子并且產生一個或多個第二定標值,其中每個第二標度因子與一個或多個第二定標值相關,并且每個第二定標值根據(jù)其相關的第二標度因子被定標;響應于所述一個或多個第二控制參數(shù)根據(jù)第二比特分配處理來分配比特,并且通過使用基于由第二比特分配處理分配的比特數(shù)量的量化分辨率來量化所述去量化的定標值和所述第二定標值,獲得第二量化定標值;以及將所述第二量化定標值、所述第二標度因子和所述一個和多個第二控制參數(shù)裝配到所述第二編碼信號內。
2. 根據(jù)權利要求l的方法,包括使用所述一個和多個第一控制參數(shù)來獲得第一容許的量化噪聲閾值;以根據(jù)所述第一容許的量化噪聲閾值建立的量化分辨率來去量 化所述第一量化值;使用所述一個或多個第二控制參數(shù)來獲得不同于所述第一容許 的量化噪聲閾值的第二容許的量化噪聲閾值;以及以根據(jù)第二容許的量化噪聲閾值建立的量化分辨率來量化所述 第二定標值。
3. —種用于代碼轉換編碼音頻信息的代碼轉換器,其中該代碼 轉換器包括用于在第一頻帶中接收傳送表示音頻信號頻語分量的第一量化 定標值和第 一標度因子的第 一編碼信號,并且傳送一個或多個第 一控 制參數(shù)和一個或多個第二控制參數(shù)的裝置;用于從所述第一編碼信號獲得所述第一量化定標值和所述第一 標度因子的裝置,其中每個第一標度因子與一個或多個第一量化定標 值相關,每個第一量化定標值根據(jù)其相關的第一標度因子被定標,并 且每個第 一量化定標值和相關的第 一標度因子表示相應的頻謙分量;用于從所述第一編碼信號獲得一個或多個第一控制參數(shù)和一個 或多個第二控制參數(shù)的裝置,其中響應于所述第一編碼信號的第一比 特率要求導出所述一個或多個第一控制參數(shù),并且響應于所述第二編碼信號的不等于所述第一比特率的第二比特率要求導出所述一個或多 個第二控制參數(shù);用于響應于所述一個或多個第一控制參數(shù)根據(jù)第一比特分配處 理來分配比特、并且通過根據(jù)基于由笫一比特分配處理分配的比特數(shù) 量的量化分辨率來去量化所述第一量化定標值而獲得去量化的定標值 的裝置;用于從所述去量化的定標值產生合成頻譜分量的裝置,其中所述 合成頻語分量表示所述第一頻帶之外的第二頻帶中的頻譜內容;用于產生用于所述合成頻譜分量的一個或多個第二標度因子并 且產生一個或多個第二定標值的裝置,其中每個第二標度因子與一個 或多個第二定標值相關,并且每個第二定標值根據(jù)其相關的第二標度因子被定標;用于響應于所述一個或多個第二控制參數(shù)根據(jù)第二比特分配處 理來分配比特、并且通過使用基于由第二比特分配處理分配的比特數(shù) 量的量化分辨率來量化所述去量化的定標值和所述第二定標值以獲得 第二量化定標值的裝置;以及用于將所迷第二量化定標值、所述第二標度因子和所述一個和多 個第二控制參數(shù)裝配到第二編碼信號內的裝置。
4.根據(jù)權利要求3的代碼轉換器,包括用于使用所述一個和多個第一控制參數(shù)來獲得第一容許的量化 噪聲閾值的裝置;用于以根據(jù)所述第一容許的量化噪聲閾值建立的量化分辨率來 去量化所述第一量化值的裝置;用于使用所述一個或多個第二控制參數(shù)來獲得不等于所述第一 容許的量化噪聲閾值的第二容許的量化噪聲閾值的裝置;以及用于以根據(jù)第二容許的量化噪聲閾值建立的量化分辨率來量化 所述第二定標值的裝置。
全文摘要
在音頻編碼系統(tǒng)中,編碼發(fā)送器將編碼頻譜分量表示為規(guī)格化浮點數(shù)。發(fā)送器提供可用于代碼轉換編碼頻譜參數(shù)的第一和第二控制參數(shù)。代碼轉換器使用第一控制參數(shù)部分地解碼編碼分量和使用第二控制參數(shù)重新編碼該分量。發(fā)送器通過分析在部分解碼處理中的算術運算的影響以識別出浮點表示丟失規(guī)格化的情況來確定第二控制參數(shù)。修改與丟失規(guī)格化的數(shù)值相關的指數(shù),并使用已經修改的指數(shù)計算第二控制參數(shù)。
文檔編號G10L19/00GK101661750SQ20091016443
公開日2010年3月3日 申請日期2004年1月30日 優(yōu)先權日2003年2月6日
發(fā)明者布賴恩·T.·蘭儂, 羅伯特·L.·安德森, 邁克爾·M.·杜魯門 申請人:杜比實驗室特許公司