在不活動階段期間利用噪聲合成的音頻編解碼器的制造方法
【專利摘要】在活動階段或非無聲階段期間參數背景噪聲估計被連續地更新,使得當在活動階段后進入不活動階段時即刻開始噪聲生成。根據另一方面,非常有效地使用頻譜域以參數化該背景噪聲,由此獲得更為真實的背景噪聲合成,并且由此導致更加透明的活動階段至不活動階段切換。
【專利說明】在不活動階段期間利用噪聲合成的音頻編解碼器
【技術領域】
[0001]本發明涉及在不活動階段期間支持噪聲合成的音頻編解碼器。
【背景技術】
[0002]利用語音或其它噪聲源的不活動時段來縮小傳輸帶寬的可能是本領域已知的。這種方案一般使用某個檢測形式來區別不活動(或無聲)階段與活動(或非無聲)階段。在不活動階段期間,通過中止精準地編碼該記錄信號的普通數據流的傳輸,而只發送無聲插入描述(SID)更新,而達成較低比特率。SID更新可以常規間隔傳輸,或當檢測到背景噪聲特性改變時傳輸。然后SID幀可用在解碼側來產生背景噪聲,該背景噪聲的特性類似于活動階段期間的背景噪聲,使得中止編碼該記錄信號的普通數據流的傳輸在接收者側不會導致從活動階段至不活動階段令人不愉悅的過渡。
[0003]但仍然需要進一步減低傳輸率。比特率耗用者數目的增加諸如移動電話數目的增力口,及或多或少比特率密集應用數目的增加諸如無線傳輸廣播,要求穩定地減少耗用的比特率。
[0004]另一方面,合成噪聲須接近地模擬真實噪聲,使得該合成對使用者而言是透明的。
【發明內容】
[0005]據此,本發明的一個目的是提出一種在不活動階段期間支持噪聲合成的音頻編解碼器方案,其使得能夠減低傳輸比特率同時維持可達成的噪聲產生質量。
[0006]此目的是通過獨立權利要求的部分主題而達成的。
[0007]本發明的基本構想為若在活動階段期間連續地更新參數背景噪聲估計使得接在活動階段后方的不活動階段進入時立即開始噪聲生成,則可節省有價值的比特率同時維持在不活動階段內的噪聲產生質量。舉例言之,可在解碼側進行連續地更新,無需緊接在檢測到不活動階段后的預熱階段期間對該解碼側初步提供背景噪聲的編碼表示,該提供將耗用有價值的比特率,由于解碼側已經在活動階段期間連續地更新該參數背景噪聲估計,因此隨時地準備以適當噪聲生成而立即進入不活動階段。同理,若參數背景噪聲估計是在編碼側完成的,可避開此種預熱階段。當檢測到進入不活動階段時,替代在解碼側初步連續地提供常規編碼的背景噪聲表示以便學習背景噪聲,及在學習階段后據此而通知解碼側,在檢測到進入不活動階段時,編碼器能夠立即對解碼器提供需要的參數背景噪聲估計,采用的方式是降回到過去活動階段期間連續更新的參數背景噪聲估計,由此避免比特率耗用在初步進一步執行額外編碼背景噪聲。
[0008]依據本發明的具體實施例,例如就比特率及運算復雜度而言,達成在中等開銷下的更為真實的噪聲生成。具體地,依據這些實施例,頻譜域被用來參數化背景噪聲,由此獲得背景噪聲合成,該背景噪聲合成更為真實,因此導致更加透明的活動階段至不活動階段切換。此外,發現在頻譜域參數化背景噪聲,允許從有用信號分離噪聲,因此,在頻譜域參數化背景噪聲當組合前述在活動階段期間參數背景噪聲估計的連續地更新時具有優點,原因在于頻譜域可達成噪聲與有用信號間的更佳分離,使得組合本申請的兩個有益方面時無需從一個域至另一域的額外過渡。
[0009]本發明的實施例的額外有益細節為權利要求中的附屬項的主題。
【專利附圖】
【附圖說明】
[0010]下面參考【專利附圖】
【附圖說明】本申請的優選實施例,附圖中:
[0011]圖1示出依據實施例的音頻編碼器的框圖;
[0012]圖2示出編碼引擎14的可能實現;
[0013]圖3示出依據實施例音頻解碼器的框圖;
[0014]圖4示出依據實施例的圖3的解碼引擎的可能實現;
[0015]圖5示出依據實施例的又一更詳細描述的音頻編碼器的框圖;
[0016]圖6示出依據實施例可與圖5的編碼器一起使用的解碼器的框圖;
[0017]圖7示出依據實施例的又一更詳細描述的音頻解碼器的框圖;
[0018]圖8示出依據實施例的音頻編碼器的頻譜帶寬擴展部分的框圖;
[0019]圖9示出依據實施例的圖8的CNG頻譜帶寬擴展編碼器的實現;
[0020]圖10示出依據實施例的使用頻譜帶寬擴展的音頻解碼器的框圖;
[0021]圖11示出使用頻譜帶寬復制的音頻解碼器的實施例的可能的更詳細描述的框圖;
[0022]圖12示出依據又一實施例使用頻譜帶寬擴展的音頻編碼器的框圖;以及
[0023]圖13示出音頻編碼器的又一實施例的框圖。
【具體實施方式】
[0024]圖1示出依據本發明的實施例的音頻編碼器。圖1的音頻編碼器包括背景噪聲估計器12、編碼引擎14、檢測器16、音頻信號輸入端18及數據流輸出端20。提供器12、編碼引擎14及檢測器16分別具有連接至音頻信號輸入端18的輸入端。估計器12及編碼引擎14的輸出端分別經由開關22而連接至數據流輸出端20。開關22、估計器12及編碼引擎14的控制輸入端分別連接至檢測器16的輸出端。
[0025]背景噪聲估計器12被配置為在活動階段24期間,基于在輸入端18進入音頻編碼器10的輸入音頻信號而連續地更新參數背景噪聲估計。雖然圖1提示背景噪聲估計器12可基于在輸入端18輸入的音頻信號而得出參數背景噪聲估計的連續更新,但不一定為此種情況。背景噪聲估計器12可替換地或附加地從編碼引擎14獲得音頻信號版本,如虛線26例示說明的。在這種情況下,背景噪聲估計器12可替換地或附加地分別經由連接線26及編碼引擎14而間接地連接至輸入端18。具體地,針對背景噪聲估計器12連續地更新背景噪聲估計,存在不同的可能,后面將進一步描述若干這種可能。
[0026]編碼引擎14被配置為在活動階段24期間將到達輸入端18的輸入音頻信號編碼為數據流。活動階段應涵蓋該音頻信號內包含有用信息的全部時間,諸如語音或噪聲源的其它有用聲音。另一方面,具有幾乎不隨時間變化的特性的聲音諸如于揚聲器背景中由雨聲或交通聲所引起的不隨時間變化的頻譜須歸類為背景噪聲,每當只存在此種背景噪聲時,相應時段應歸類為不活動階段28。檢測器16是負責基于在輸入端18輸入的音頻信號而檢測在活動階段24后進入不活動階段28。換言之,檢測器16區分兩個階段,即活動階段及不活動階段,其中檢測器16確定目前存在哪個階段。檢測器16將目前存在的階段通知給編碼引擎14,及如前文已述,編碼引擎14在活動階段24期間將該輸入音頻信號編碼成為數據流。檢測器16據此控制開關22,使得由編碼引擎14輸出的數據流在輸出端20輸出。在不活動階段期間,編碼引擎14可停止編碼輸入音頻信號。至少在輸出端20處輸出的數據流不再由可能通過編碼引擎14輸出的任何數據流饋送。此外,編碼引擎14可只執行最少處理來支持估計器12而只有若干狀態變量更新。此種動作將大大降低運算功率。例如開關22被設置為使得估計器12的輸出端連接至輸出端20,而非連接至編碼引擎的輸出端。由此減少用以傳輸在輸出端20輸出的比特流的有用的傳輸比特率。
[0027]背景噪聲估計器12被配置為在活動階段24期間,基于如前文已述的輸入音頻信號18而連續地更新參數背景噪聲估計,以及因此,在從活動階段24過渡至不活動階段28后,即在進入不活動階段28時,估計器12能夠立即將在活動階段24期間連續地更新的該參數背景噪聲估計插入在輸出端20輸出的數據流30。緊接在活動階段24結束后,及緊接在檢測器16檢測到進入不活動階段28的時間瞬間34后,背景噪聲估計器12例如可將無聲插入描述符(SID)幀32插入數據流30內。換言之,由于在活動階段24期間背景噪聲估計器對參數背景噪聲估計的連續更新,在檢測器16檢測到進入不活動階段28與SID32的插入間無需時間間隙。
[0028]如此,總結如上說明,圖1的音頻編碼器10可如下操作。用于例示說明目的,假設目前存在活動階段24。于此種情況下,編碼引擎14當前將在輸入端18的輸入音頻信號編碼成數據流20。開關22將編碼引擎14的輸出端連接至輸出端20。編碼引擎14可使用參數編碼及變換編碼來將輸入音頻信號18編碼成數據流。具體地,編碼引擎14可以幀為單位編碼該輸入音頻信號,每個幀編碼該輸入音頻信號的接續且部分彼此重迭的時間區間之一。編碼引擎14額外地可在數據流的接續幀間,在不同編碼模式間切換。舉例言之,某些幀可使用預測編碼諸如CELP編碼而編碼,而若干其它幀可使用變換編碼諸如TCX或AAC編碼而編碼。請參考例如USAC及其編碼模式,例如IS0/IEC CD 23003-3,2010年9月24日。
[0029]在活動階段24期間,背景噪聲估計器12連續地更新參數背景噪聲估計。據此,背景噪聲估計器12可被配置為區別該輸入音頻信號內部的噪聲成分與有用信號成分而只從該噪聲成分確定參數背景噪聲估計。依據容后詳述的實施例,背景噪聲估計器12可在頻譜域執行此項更新,諸如頻譜域也可用在編碼引擎14內的變換編碼。但其它替代方式也可用,諸如時域。若為頻譜域,則可以是重迭變換域諸如MDCT域,或濾波器組域諸如復數值濾波器組域諸如QMF域。
[0030]此外,例如在預測編碼及/或變換編碼期間,背景噪聲估計器12可基于在編碼引擎14內作為中間結果獲得的激勵信號或殘留信號而執行更新,而非作為進入輸入18的音頻信號或遺漏編碼成數據流的音頻信號。由此方式,該輸入音頻信號內的大量有用的信號成分將已經被去除,使得對背景噪聲估計器12而言噪聲成分的檢測變得更容易。
[0031]在活動階段24期間,檢測器16也連續地運轉來檢測不活動階段28的進入。檢測器16可具體實施為語音/聲音活動檢測器(VAD/SAD)或若干其它構件,其確定有用的信號成分目前是否存在于該輸入音頻信號。假設一旦超過臨界值則進入不活動階段,檢測器16確定是否繼續活動階段24的基本標準可以是:查核該輸入音頻信號的低通濾波功率是否保持低于某個臨界值。
[0032]與檢測器16執行檢測在活動階段24之后進入不活動階段28的確切方式無關地,檢測器16即刻地通知其它實體12、14及22進入不活動階段28。由于在活動階段24期間背景噪聲估計器的連續更新參數背景噪聲估計,可即刻地避免在輸出端20輸出的數據流30進一步從編碼引擎14饋入。反而,當被通知進入不活動階段28時,背景噪聲估計器12將立即以SID幀32形式將該參數背景噪聲估計的末次更新的信息插入數據流30內部。換言之,SID幀32緊接在編碼引擎的最末幀之后,該最末幀是編碼有關檢測器16檢測到不活動階段進入的該時間區間的音頻信號幀。
[0033]一般而言,背景噪聲不常改變。在大部分情況下,背景噪聲傾向于不隨時間變化。據此,緊接在檢測器16檢測到不活動階段28的起始后,在背景噪聲估計器12插入SID幀32后,任何數據流的傳輸可被中斷,使得于此中斷階段34中,數據流30并不耗用任何比特率,或只耗用若干傳輸目的所要求的最小比特率。為了維持最小比特率,背景噪聲估計器12可間歇地重復SID32的輸出。
[0034]但盡管背景噪聲傾向于不隨時間改變,仍可能出現背景噪聲改變。舉例言之,設想在講電話中,移動電話使用者離開汽車,故背景噪聲從馬達噪聲改變成車外的交通噪聲。為了追蹤此種背景噪聲的改變,背景噪聲估計器12可被配置為連續地測量背景噪聲,即便于不活動階段28期間也是如此。每當背景噪聲估計器12判定參數背景噪聲估計改變量超過某個臨界值時,背景估計器12可經由另一個SID38而將參數背景噪聲估計的更新版本插入數據流20,其中隨后可接著另一個中斷階段40,直到例如檢測器16檢測到另一個活動階段42開始為止等等。當然,展現目前已更新參數背景噪聲估計的SID幀可替代地或附加地以中間方式散布在不活動階段內部,而與參數背景噪聲估計的改變無關。
[0035]顯然,通過編碼引擎14輸出及圖1中使用影線指出的數據流44比在不活動階段28期間欲傳輸的數據流片段32及38耗用更多傳輸比特率,因而比特率的節省相當顯著。此外,因背景噪聲估計器12能夠立即開始進行進一步饋送數據流30,超過不活動階段檢測時間點34即無需初步繼續傳輸編碼引擎14的數據流44,因而更進一步減低總耗用比特率。
[0036]如后文中將就更具體實施例進一步詳細說明的,在輸入音頻信號的編碼中,編碼引擎14可被配置為將該輸入音頻信號預測地編碼成線性預測系數,及以將激勵信號變換編碼成編碼成激勵信號,及將線性預測系數分別編碼成數據流30及44。一個可能的實現被顯示于圖2。依據圖2,編碼引擎14包括變換器50、頻域噪聲整形器(FDNS) 52、以及量化器54,其以所述順序串聯連接在編碼引擎14的音頻信號輸入端56與數據流輸出端58之間。此外,圖2之編碼引擎14包括線性預測分析模塊60,被配置為通過分別分析音頻信號各部分的開窗及施加自相關性(autocorrelation)至開窗部分,來根據音頻信號56確定線性預測系數,或基于由變換器50輸出的輸入音頻信號的變換域中的變換而確定自相關性,確定方式是使用其功率頻譜,及對其施加反DFT,因而確定自相關性,隨后基于該自相關性諸如使用(韋_)李-杜算法執行LPC估計。
[0037]基于由線性預測分析模塊60確定的線性預測系數,于輸出端58輸出的數據流被饋送以關于LPC的相應信息,而頻域噪聲整形器是經控制以依據對應于通過模塊60輸出的線性預測系數而確定的線性預測分析濾波器的傳遞函數的傳遞函數而在頻譜上整形該音頻信號的頻譜圖。為了在數據流中傳輸而對LPC的量化可在LSP/LSF域、使用內插法進行,因而比較分析器60中的分析速率,減低了傳輸速率。此外,在roNS中執行的LPC至頻譜加權轉換可涉及施加ODFT至LPC,及施加所得加權值至變換器的頻譜作為除數。
[0038]然后,量化器54對頻譜成形(平坦化)的頻譜圖的變換系數進行量化。舉例言之,變換器50使用重迭變換諸如MDCT來將該音頻信號從時域轉成頻譜域,由此獲得對應于該輸入音頻信號的重迭開窗部分的接續變換,然后通過依據LP分析濾波器的傳遞函數,加權這種變換而通過頻域噪聲整形器52而頻譜成形。
[0039]經整形的頻譜圖可解譯為激勵信號,如虛線箭頭62例示說明的,背景噪聲估計器12可被配置為使用此激勵信號來更新該參數背景噪聲估計。另外地,如通過虛線箭頭64指示的,背景噪聲估計器12可直接利用如由變換器50輸出的重迭變換表示作為更新的基礎,即無需通過噪聲整形器52進行頻域噪聲整形。
[0040]有關圖1至圖2所示組件的可能實現的其他細節可從后文更詳細的實施例得出,注意全部這種細節皆可單獨地轉移至圖1及圖2的組件。
[0041]但在描述這種進一步細節實施例前,參考圖3,其替換地或附加地顯示可在解碼器側執行參數背景噪聲估計更新。
[0042]圖3的音頻解碼器80被配置為解碼進入解碼器80的輸入端82的數據流,因而根據該數據流重建要在解碼器80的輸出端84輸出的音頻信號。該數據流包括至少一個活動階段86,其后是一個不活動階段88。音頻解碼器80內部包括背景噪聲估計器90、解碼引擎
92、參數隨機生成器94、及背景噪聲生成器96。解碼引擎92連接在輸入端82與輸出端84之間,類似,背景噪聲估計器90、背景噪聲生成器96及參數隨機生成器94連接在輸入端82與輸出端84之間。解碼器92被配置為在活動階段期間根據數據流重建音頻信號,使得如在輸出端84輸出的音頻信號98包括噪聲及適當質量的有用聲音。背景噪聲估計器90被配置為在活動階段期間根據數據流連續地更新參數背景噪聲估計。為了達成該目的,背景噪聲估計器90可能不直接連接至輸入82,而是如虛線100之例示說明的經由解碼引擎92而連接,因而從解碼引擎92獲得某種音頻信號的重建版本。原則上,背景噪聲估計器90可被配置為極為類似于背景噪聲估計器12地操作,但下述事實除外:背景噪聲估計器90只存取音頻信號之重建版本,即包括在編碼側通過量化而造成的遺漏。
[0043]參數隨機生成器94可包括一個或更多個真或假隨機數生成器,通過該生成器輸出的數值序列可符合統計分布,可經由背景噪聲生成器96參數地設定該統計分布。
[0044]背景噪聲生成器96被配置為通過在不活動階段88期間取決于得自背景噪聲估計器90的參數背景噪聲估計來控制參數隨機生成器94,以在不活動階段88期間合成音頻信號98。雖然兩個實體96及94顯示為串聯連接,但串聯連接不可解譯為限制性。生成器96與94可以互連。實際上,生成器94可解譯為生成器96的一部分。
[0045]如此,圖3的音頻解碼器80的操作模式可以是如下。在活動階段86期間,輸入端82是被連續地提供以數據流部分102,該部分102在活動階段86期間將由解碼引擎92處理。然后,在某個時刻106,進入輸入端82的數據流104中止專用于解碼引擎92的數據流部分102的傳輸。換言之,在時刻106不再有額外數據流部分的幀可被引擎92用于解碼。進入不活動階段88的信號可以是數據流部分102傳輸的中斷,或者可以通過緊接排列在不活動階段88起點的若干信息108而被傳遞。
[0046]總而言之,不活動階段88的進入極為突然地發生,但這不成問題,原因在于在活動階段86期間,背景噪聲估計器90已經基于數據流部分102而連續地更新參數背景噪聲估計。因此,一旦不活動階段88在106開始時,背景噪聲估計器90能夠對背景噪聲生成器96提供以參數背景噪聲估計的最新版本。因此,從時刻106開始,當解碼引擎92不再被饋送以數據流部分102時,解碼引擎92中止輸出任何音頻信號重建,而參數隨機生成器94是由背景噪聲生成器96依據參數背景噪聲估計加以控制的,使得在時間瞬間106之后立即可在輸出84輸出背景噪聲的仿真,因而無縫地遵循如解碼引擎92在時刻106前所輸出的重建音頻信號。交叉衰減可用來從如由引擎92輸出的活動階段之最末重建幀轉移至如通過近更新的參數背景噪聲估計版本所確定的背景噪聲。
[0047]背景噪聲估計器90被配置為在活動階段86期間,連續地更新來自數據流104的參數背景噪聲估計,背景噪聲估計器90可被配置為區分音頻信號版本內在活動階段86從數據流104所重建的噪聲成分與有用信號成分,并且只從噪聲成分而不從有用信號成分確定該參數背景噪聲估計。背景噪聲估計器90執行此項區分/分離的方式是對應于如前文就背景噪聲估計器12所簡要說明的方式。舉例言之,可使用解碼引擎92內從數據流104所內部重建的激勵信號或殘留信號。
[0048]類似圖2,圖4顯示解碼引擎92之可能實現。依據圖4,解碼引擎92包括用以接收數據流部分102的輸入端110,及用以輸出在活動階段86內部的重建音頻信號的輸出端
112。串聯連接在其間的解碼引擎92包括解量化器114、頻域噪聲整形器(FDNS)116及反變換器118,這些構件以其所述順序連接在輸出端110與輸出端112間。到達輸出端110的數據流部分102包括激勵信號之變換編碼版本,即表示該激勵信號的變換系數水平,該版本被饋送至解量化器的輸入端;以及關于線性預測系數的信息,該信息被饋送至頻域噪聲整形器116。解量化器114解量化激勵信號的頻譜表示型態并將其轉發至頻域噪聲整形器116,頻域噪聲整形器116轉而依據對應于線性預測合成濾波器的傳遞函數而頻譜成形激勵信號(連同平坦量化噪聲)的頻譜圖,由此形成量化噪聲。原則上,圖4的FDNS116的作用類似于圖2的FDNS =LPC是提取自數據流,然后LPC接受頻譜加權轉換,轉換方式例如通過施加ODFT至所提取的LPC,然后施加所得頻譜加權至得自解量化器114的解量化頻譜以作為乘數。然后重新變換器118將如此得到的音頻信號重建從頻域轉換至時域,并在輸出端112輸出如此得到的重建音頻信號。重迭變換可由反變換器118諸如IMDCT使用。如虛線箭頭120例示說明的,激勵信號的頻譜圖可由背景噪聲估計器90用于參數背景噪聲更新。或者,音頻信號的頻譜圖本身可如虛線箭頭122所指示地使用。
[0049]關于圖2及圖4,應注意用以實現編碼/解碼引擎的這些實施例并非解譯為限制性。其它實施例也是可行的。此外,編碼/解碼引擎可以使多模式編解碼器類型,其中圖2及圖4的部件只負責編碼/解碼具有與其相關聯的特定幀編碼模式的幀,而其它幀是由未顯示于圖2及圖4的編碼引擎/解碼引擎部件負責。此種另一幀編碼模式也可以是例如使用線性預測編碼之預測編碼模式,但編碼是在時域而非使用變換編碼。
[0050]圖5顯示圖1的編碼器的更詳細實施例。具體地,依據特定實施例背景噪聲估計器12更詳細地顯示于圖5。
[0051]依據圖5,背景噪聲估計器12包括變換器140、FDNS142、LP分析模塊144、噪聲估計器146、參數估計器148、平穩性測量器150、及量化器152。剛才述及的若干組件部分地或全部地可由編碼引擎14所共同擁有。舉例言之,變換器140與圖2的變換器50可以相同,LP分析模塊60與LP分析模塊144可以相同,FDNS52與FDNS142可以相同,及/或量化器54及量化器152可在一個模塊內實現。
[0052]圖5也顯示比特流封裝器154,其被動負責圖1中開關22的操作。更明確言之,例如VAD作為圖5編碼器的檢測器16,只是確定須采用哪一路徑,音頻編碼14路徑或背景噪聲估計器12路徑。更精確言之,編碼引擎14及背景噪聲估計器12皆是并聯連接在輸入端18與封裝器154之間,其中在背景噪聲估計器12內,變換器140、FDNS142、LP分析模塊
144、噪聲估計器146、參數估計器148、及量化器152并聯連接在輸入端18與封裝器154之間(以所述順序),而LP分析模塊144是單獨地連接在輸入端18與FDNS模塊142的LPC輸入與量化器152的又一輸入端之間,而平穩性測量器150額外地連接在LP分析模塊144與量化器152的控制輸入端之間。比特流封裝器154若接收到來自連接至其輸入端的任一個實體的輸入時單純執行封裝。
[0053]在傳輸零幀的情況下,即在不活動階段的中斷階段期間,檢測器16通知背景噪聲估計器12,尤其是量化器152,來中止處理及不發送任何輸入給比特流封裝器154。
[0054]依據圖5,檢測器16可在時域及/或變換域/頻譜域中操作來檢測活動階段/不活動階段。
[0055]圖5的編碼器的操作模式如下。如將更明了的,圖5的編碼器能夠改良舒適噪聲的質量,諸如通常為靜態噪聲,諸如汽車噪聲、許多人講話的喃喃噪聲、某些樂器、及特別富含和諧的噪聲諸如雨滴聲。
[0056]更明確言之,圖5的編碼器是要控制解碼側的隨機生成器,因而激勵變換系數使得仿真在編碼側檢測到的噪聲。據此,在討論圖5的編碼器的功能前,進一步簡短地參考圖6,其顯示解碼器的一個可能實施例,能夠如通過圖5的編碼器指示而在解碼側仿真該舒適噪聲。更概略言之,圖6顯示匹配圖1的編碼器的解碼器的可能實現。
[0057]更明確言之,圖6的解碼器包括解碼引擎160,因而在活動階段期間解碼數據流部分44,以及舒適噪聲產生部分162用以基于在關于不活動階段28的數據流中提供的信息32及38產生舒適噪聲。舒適噪聲產生部分162包括參數隨機生成器164、FDNS166及反量化器(或合成器)168。模塊164至168彼此串聯連接,因而在合成器168的輸出端導致舒適噪聲,該舒適噪聲填補如關于圖1討論的,在不活動階段28期間通過解碼引擎160輸出的重建音頻信號間的間隙。處理器FDNS166及反量化器168可以是解碼引擎160的一部分。更明確言之,例如可與圖4的FDNS116及118相同。
[0058]圖5及圖6的個別模塊的操作模式及功能根據后文討論將更為明了。
[0059]更明確言之,諸如通過使用重迭變換,變換器140將輸入信號頻譜分解頻譜圖。噪聲估計器146被配置為從頻譜圖中確定噪聲參數。同時,語音或聲音活動檢測器16評估從輸入信號得出的特征,因而檢測是否發生從活動階段過渡至不活動階段,或從不活動階段過渡至活動階段。由檢測器16利用的特征可以呈瞬時/起始檢測器、調性度量、及LPC殘留度量的形式。瞬時/起始檢測器可用來檢測干凈環境或去噪聲化信號中活動語音的攻擊(能量的突增)或起始;調性測量可用來區別有用的背景噪聲,諸如警笛聲、電話鈴聲及音樂聲;LPC殘留可用來獲得該信號中存在有語音的指示。基于這種特征,檢測器16能粗略地給予當前幀是否可歸類為例如語音、無聲、音樂、或噪音的信息。
[0060]雖然噪聲估計器146可負責區別頻譜圖內的噪聲與其中的有用信號成分,諸如[R.Martin, Noise Power Spectral Density Estimation Based on Optimal Smoothingand Minimum Statistics,2001]中提出的,參數估計器148可負責統計上分析噪聲成分,及例如基于噪聲成分而確定各個頻譜成分的參數。
[0061]噪聲估計器146例如可被配置為搜尋頻譜圖中之局部最小值,而參數估計器148可被配置為確定在這種部分的噪聲統計數據,假設頻譜圖中的最小值主要是由于背景噪聲而非前景聲音所促成。
[0062]作為中間注釋,強調的是也可通過沒有FDNS142的噪聲估計器進行估計,原因在于最小值確實也出現在未經整形的頻譜中。圖5的大部分描述維持不變。
[0063]參數量化器152轉而可被配置為參數化由參數估計器148估計的參數。舉例言之,只要考慮噪聲成分,參數可描述頻譜值在輸入信號的頻譜圖內的分布的平均幅值及第一次冪或更高次冪動量。為了節省比特率,參數可轉發至數據流用來以比變換器140所提供的頻譜分辨率更低的頻譜分辨率而插入SID幀內部。
[0064]平穩性測量器150可被配置為針對噪聲信號得出平穩性度量。參數估計器148轉而可使用該平穩性度量,因而確定是否應通過發送另一個SID幀諸如圖1的幀38來起始參數更新,或影響參數的估計方式。
[0065]模塊152量化由參數估計器148及LP分析模塊144計算的參數,及將此參數通過信號傳遞給解碼側。更明確言之,在量化前,頻譜成分可分成多組。這種分組可依據心理聲學方面選擇,諸如依照吠聲標度等。檢測器16通知量化器152是否需執行量化。在無需量化的情況下,接著為零幀。
[0066]當將描述轉移至從活動階段切換至不活動階段的具體情況時,圖5的模塊如下述動作。
[0067]在活動階段期間,編碼引擎14經由封裝器繼續將音頻信號編碼成數據流。編碼可以逐幀進行。數據流之各個幀可表示該音頻信號的一個時間部分/時間區間。音頻編碼器14可被配置為使用LPC編碼來編碼全部幀。音頻編碼器14可被配置為如就圖2所述編碼若干幀,例如稱作TCX幀編碼模式。剩余者可使用代碼激勵線性預測(CELP)編碼諸如ACELP編碼模式編碼。換言之,數據流的部分44可包括運用可等于或大于幀速率的某個LPC傳輸率來連續地更新LPC系數。
[0068]并行地,噪聲估計器146檢查LPC平坦化(LPC分析濾波)頻譜,因而識別TCX頻譜圖內部由這些頻譜序列所表示的最小值kmin。當然,這種最小值可隨時間t而改變,SPkmin(t)。雖然如此,最小值可在由FDNS142輸出的頻譜圖中形成蹤跡,如此針對在時間ti的各個接續頻譜i,最小值可分別與在先行頻譜及后續頻譜的最小值相關聯。
[0069]然后參數估計器從其中得出背景噪聲估計參數,諸如針對不同頻譜成分或頻帶的居中趨勢(平均值、中數等)m及/或分散性(標準差、方差等)d。得出可涉及頻譜圖在該最小值頻譜的連續頻譜系數的統計分析,由此針對各個在kmin的最小值獲得m及d。可執行沿頻譜維度在前述頻譜最小值間的內插,因而獲得其它預定頻譜成分或頻帶的m及d。用于居中趨勢(平均值)的得出及/或內插及分散性(標準差、方差等)的得出的頻譜分辨率可能各異。
[0070]剛才所述參數例如是按照由FDNS142輸出的頻譜而連續地更新。
[0071 ] 一旦檢測器16檢測到進入不活動階段,檢測器16可據此通知編碼引擎14,使得不再有活動幀被轉發至封裝器154。取而代之,量化器152在不活動階段內在第一 SID幀中輸出剛才所述的統計噪聲參數。SID幀可以包括或可不包括LPC的更新。若存在LPC更新,則可以部分44 (即在活動階段期間)所使用的格式在SID幀32的數據流內傳遞,諸如使用在LSF/LSP域中的量化,或不同地,諸如使用對應于LPC分析濾波器或LPC合成濾波器的傳遞函數的頻譜權值,諸如在進行活動階段中已經由FDNS142施加在編碼引擎14的框架內部的頻譜權值。
[0072]在不活動階段期間,噪聲估計器146、參數估計器148及平穩性測量器150繼續共同協作以維持解碼側的更新跟得上背景噪聲的變化。更明確言之,測量器150檢查由LPC定義的頻譜權值,因而識別改變及通知估計器148何時SID幀須被發送給解碼器。舉例言之,每當前述平穩性度量指示LPC的波動度超過某個量時,測量器150可據此而啟動估計器。附加地或替換地,估計器可經觸發來以定期發送已更新的參數。在這種SID更新幀40之間,數據流中不發送任何信息,即“零幀”。
[0073]在解碼器側,在活動階段期間,解碼引擎160負責執行重建音頻信號。一旦不活動階段開始,自適應參數隨機生成器164使用在不活動階段期間在數據流內部由參數量化器150發送的已解量化的隨機生成器參數來產生隨機頻譜成分,由此形成隨機頻譜圖,其是使用合成器168在頻譜能處理器166內部頻譜成形的,然后執行從頻譜域再度變換成時域。為了 FDNS166內的頻譜成形,可使用得自最近活動幀的最近LPC系數,或可通過外推法而從其中得出欲通過FDNS166施加的頻譜加權,或SID幀32本身可傳遞信息。由此方式,在不活動階段的開始,FDNS166繼續依據LPC合成濾波器的傳遞函數而頻譜加權輸入頻譜,定義LPC合成濾波器的LPS是從活動數據部分44或SID幀32得出的。然而,隨著不活動階段的開始,欲通過FDNS166整形的頻譜為隨機產生的頻譜而非如同TCX幀編碼模式的變換編碼。此外,在166施加的頻譜整形只通過使用SID幀38非連續地更新的。在中斷階段36期間,可執行內插或衰減來從一個頻譜整形定義逐漸切換至下一個。
[0074]如圖6所示,自適應參數隨機生成器164可額外地選擇性地使用如包含在數據流中的最末活動階段的最近部分內,即包含在緊接在進入不活動階段前的數據流部分44內的解量化變換系數。舉例言之,該使用可以是:從活動階段內的頻譜圖平滑地變遷成不活動階段內的隨機頻譜圖。
[0075]簡短地返回參考圖1及圖3,遵照圖5及圖6 (及后文解釋的圖7)的實施例,在編碼器及/或解碼器內產生的參數背景噪聲估計可包括針對不同的頻譜部分諸如吠聲帶或不同頻譜成分的時間上接續頻譜值的分散性的統計信息。針對各個此種頻譜部分,例如統計信息可含有分散性度量。據此,分散性度量可以頻譜解析方式在頻譜信息中定義,即在/對于頻譜部分取樣。頻譜分辨率,即沿頻譜軸展開的分散性及居中趨勢的度量數目可在例如分散性度量與選擇性地存在的平均值或居中趨勢度量間相異。統計信息被包含在SID幀內。可以涉及整形頻譜諸如LPC分析濾波(即LPC平坦化)頻譜,諸如整形MDCT頻譜,其允許依據統計頻譜合成隨機頻譜,及依據LPC合成濾波器的傳遞函數而解除其整形來合成之。在該種情況下,頻譜整形信息可存在于SID幀內,然而例如可不在第一 SID幀32中。但如后面所示,這種統計信息另可涉及非整形頻譜。此外,替代使用實數值頻譜表示型態諸如MDCT,可使用復數值濾波器組頻譜諸如音頻信號之QMF頻譜。舉例言之,可使用非整形形式及通過統計信息統計地描述的音頻信號的QMF頻譜,在該種情況下,除非包含在統計信息本身中,否則無頻譜整形。
[0076]類似于圖3的實施例相對于圖1的實施例間之關系,圖7顯示圖3的解碼器的可能實現。如使用圖5的相同附圖標記顯示,圖7的解碼器可包括噪聲估計器146、參數估計器148及平穩性測量器150,其操作類似圖5的相同組件,但圖7的噪聲估計器146是對諸如圖4的120或122經傳輸的且經解量化的頻譜圖操作。然后噪聲估計器146的操作類似圖5中所討論的。同理適用于參數估計器148,其對能量值及頻譜值或LPC數據進行操作,該能量值及頻譜值或LPC數據揭示活動階段期間如經由/從數據流經傳輸的且經解量化的LPC分析濾波器的(或LPC合成濾波器的)頻譜的時間展頻。
[0077]雖然組件146、148及150是作為圖3的背景噪聲估計器90,但圖7的解碼器也包括自適應參數隨機生成器164及FDNS166及逆轉換器168,并且它們類似于圖6中彼此串聯連接,因而在合成器168的輸出端輸出舒適噪聲。模塊164、166及168作為圖3的背景噪聲生成器96,模塊164負責參數隨機生成器94的功能。自適應參數隨機生成器94或164依據由參數估計器148確定的參數而隨機地產生頻譜圖的頻譜成分,該頻譜成分又轉而使用由平穩性測量器150輸出的平穩性度量而被觸發。然后處理器166頻譜整形如此產生的頻譜圖,逆轉換器168然后執行從頻譜域至時域的轉換。注意,在不活動階段88期間,解碼器接收信息108,背景噪聲估計器90執行噪聲估計的更新,接著是某種內插手段。否則,若接收到零幀,則將單純只進行處理,諸如內插及/或衰減。
[0078]總結圖5至圖7,這些實施例顯示技術上可施加經控制的隨機生成器164來激勵TCX系數,其可以是實數諸如在MDCT中、或復數諸如在FFT中。也可有利地將隨機生成器164施加至通常經由濾波器組而達成的多組系數。
[0079]隨機生成器164優選地經控制使得盡可能接近噪聲類型地模型化。若目標噪聲事前已知,則這可以達成。有些應用許可此點。在許多實際應用中,主體可能遭遇不同型噪音,要求自適應方法,如第5至7圖所示。據此使用自適應參數隨機生成器164,其可簡要定義為g=f(x),其中x=(xl,x2,…)為分別由參數估計器146及150提供的隨機生成器參數集
八
口 ο
[0080]為了讓參數隨機生成器變成自適應,隨機生成器參數估計器146適當控制隨機生成器。可包括偏移補償來補償數據被視為統計上不足的情況。做到這一點以基于過去幀產生統計上匹配的噪聲模型,將經常性地更新估計參數。給出一個示例,其中隨機生成器164被提出以產生高斯噪聲。在此種情況下,例如,只需平均及方差參數,并且可計算偏移值并施加至這些參數。更高級的方法可處理任意類型的噪聲或分布,且參數并非一定為分布力矩。
[0081]針對非穩態噪聲,需要平穩性測量,而可使用較非自適應參數隨機生成器。通過測量器148確定的平穩性度量可使用多種方法從輸入信號的頻譜形狀得出,例如板倉(Itakura)距離測量、庫李(Kullback-Leibler)距離測量等。
[0082]為了處理通過SID幀發送的、諸如圖1中以38例示說明的噪聲更新的非連續本質,通常發送額外信息,諸如噪聲的能量及頻譜形狀。此信息可用來在解碼器產生具有平滑轉變的噪聲,即便在不活動階段內的不連續期間亦如此。最后,各項平滑或濾波技術可被應用來協助改善舒適噪聲仿真器的質量。
[0083]如前文已述,一方面圖5及圖6另一方面圖7屬不同情況。在對應于圖5及圖6的情況中,參數背景噪聲估計是在編碼器中基于已處理輸入信號進行的,而后來參數被傳輸給編碼器。圖7對應于另一種情況,其中解碼器可基于活動階段內的過去接收幀而處理參數背景噪聲估計。使用語音/信號活動檢測器或噪聲估計器事有利于提取噪聲成分,即便在例如活動語音期間亦如此。
[0084]在圖5至圖7所示的情況中,以圖7的情況為佳,原因在于此種情況導致傳輸較低比特率。但第5及6圖的情況具有更準確的可用噪聲估計的優點。
[0085]以上全部實施例可與帶寬擴展技術結合,諸如頻帶復制(SBR),但一般可用帶寬擴展。
[0086]為了例示說明此點,參考圖8。通過圖8示出的模塊,圖1及圖5的編碼器可被擴展以關于輸入信號的較高頻部分執行參數編碼。更明確言之,依據圖8,時域輸入音頻信號通過分析濾波器組200諸如圖8所示的QMF分析濾波器組進行頻譜分解。然后前述圖1及圖5的實施例只施加至通過濾波器組200產生的頻譜分解的較低頻部分。為了傳遞較高頻部分的信息給解碼器端,也使用參數編碼。為了達成此目的,常規頻帶復制編碼器202被配置為在活動階段期間參數化較高頻部分,及在數據流內部以頻帶復制信息形式饋送關于較高頻部分的信息給解碼端。開關204可設在QMF濾波器組200的輸出端與頻帶復制編碼器202的輸入端之間來連接濾波器組200之輸出端與并聯連接至編碼器202的頻帶復制編碼器206的輸入端,因而負責在不活動階段期間的帶寬擴展。換言之,開關204可類似圖1的開關22地被控制。如后面詳述的,頻帶復制編碼器模塊206可被配置為類似于頻帶復制編碼器202地操作:二者可被配置為參數化較高頻部分內的輸入音頻信號的頻譜包絡,即剩余較高頻部分不接受例如編碼引擎的核心編碼。但頻帶復制編碼器模塊206可使用最低時間/頻率分辨率,頻譜包絡在數據流內被參數化及傳遞,而頻帶復制編碼器202可被配置為調整時間/頻率分辨率以適應輸入音頻信號,諸如取決于音頻信號內的變遷的發生。
[0087]圖9顯示頻帶復制編碼器模塊206的可能實現。時間/頻率網格設定器208、能量計算器210、及能量編碼器212在編碼模塊206的輸入端與輸出端之間串聯連接。時間/頻率網格設定器208可被配置為設定時間/頻率分辨率,以該分辨率確定較高頻部分的包絡。舉例言之,最小容許時間/頻率分辨率被編碼模塊206連續使用。然后能量計算器210確定在對應于時間/頻率分辨率的時間/頻率平鋪的較高頻部分內通過濾波器組200輸出的頻譜圖的較高頻部分的能量,在不活動階段期間,諸如SID幀內的諸如SID幀38,能量編碼器212可使用例如熵編碼來將計算器210所計算的能量插入數據流40 (參考圖1)。
[0088]應注意依據圖8及圖9的實施例所產生的帶寬擴展信息也可用來根據前述任意實施例(諸如圖3、圖4及圖7)結合解碼器使用。
[0089]如此,圖8及圖9清楚顯示關于圖1至圖7說明的舒適噪聲產生也可結合頻帶復制使用。舉例言之,前述音頻編碼器及音頻解碼器可以不同操作模式操作,其中有些操作模式包括頻帶復制,有些則不包括。超寬帶操作模式例如可涉及頻帶復制。總而言之,以關于圖8及圖9描述的方式,前述圖1至圖7的實施例顯示舒適噪聲的產生示例可結合帶寬擴展技術。負責在不活動階段期間的帶寬擴展的頻帶復制編碼器模塊206可被配置為基于極低時間及頻率分辨率操作。與常規頻帶復制處理相比,編碼器206可在不同頻率分辨率下操作,其需要額外的頻帶表(該頻帶表具有極低頻率分辨率)以及解碼器內的針對每個舒適噪聲產生標度因子(該標度因子內插不活動階段期間施加于包絡調整器的能量標度因子)的IIR平順化濾波器。如剛才所述,時間/頻率網格可被配置為對應于最低可能時間分辨率。
[0090]換言之,帶寬擴展編碼可取決于存在無聲階段或活動階段而在QMF域或頻譜域不同地執行。在活動階段中即在活動幀期間,通過編碼器202進行常規SBR編碼,導致正常SBR數據流分別地伴隨數據流44及102。在不活動階段中或在歸類為SID幀的幀期間,只有表示為能量標度因子的有關頻譜包絡信息可通過施加時間/頻率網格提取,其具有極低頻率分辨率,及例如最低可能時間分辨率。所得到的標度因子可通過編碼器212有效編碼及寫入至數據流。在于零幀中或在中斷階段36期間,并無任何側附屬信息可通過頻帶復制編碼器模塊206寫入至該數據流,因此并無能量計算可通過計算器210進行。
[0091]遵照圖8,圖10顯示圖3及圖7的解碼器實施例可能擴展至帶寬擴展編碼技術。更精確言之,圖10顯示依據本申請的音頻解碼器可能的實施例。核心解碼器92并聯連接至舒適噪聲生成器,舒適噪聲生成器以附圖標記220表示,及包括例如舒適噪聲產生模塊162或圖3的模塊90、94及96。開關222是顯示為取決于幀類型,即該幀有關于或屬于活動階段,或有關于或屬于不活動階段,諸如關于中斷階段的SID幀或零幀,分配數據流104及30內的幀至核心解碼器92或舒適噪聲生成器220。核心解碼器92及舒適噪聲生成器220的輸出端連接至帶寬擴展解碼器224的輸入端,其輸出端提供重建的音頻信號。
[0092]圖11顯示帶寬擴展解碼器224的可能實現的進一步細節實施例。
[0093]如圖11所示,依據圖11實施例的帶寬擴展解碼器224包括輸入端226,輸入端226用以接收欲重建的完整音頻信號的較低頻部分的時域重建。輸入端226連接帶寬擴展解碼器224與核心解碼器92及舒適噪聲生成器220的輸出端,使得輸入端226處的時域輸入可以是包括噪聲及有用成分二者的音頻信號的已重建較低頻部分或用以橋接活動階段間的時間的舒適噪聲。
[0094]因依據圖11的實施例,帶寬擴展解碼器224被構建為執行頻譜帶寬復制,解碼器224在后文中稱作SBR解碼器。但關于圖8至圖10,強調這種實施例并非限于頻譜帶寬復制。而更為一般性的帶寬擴展的替代方式也可關于這種實施例而被使用。
[0095]此外,圖11的SBR解碼器224包括時域輸出端228,用以輸出最終重建音頻信號,即在活動階段或不活動階段中。在輸入端226與輸出端228之間,SBR解碼器224包括以所述順序串聯連接的頻譜分解器230(如圖11所示可以是分析濾波器組諸如QMF分析濾波器組)、HF生成器232、包絡調整器234及頻譜至時域轉換器236 (如圖11所示,可實現為合成濾波器組,諸如QMF合成濾波器組)。
[0096]模塊230至236操作如下。頻譜分解器230頻譜分解時域輸入信號,因而獲得重建較低頻部分。HF生成器232基于重建較低頻部分而產生高頻復制部,而包絡調整器234利用經由SBR數據流部傳遞的、及通過前文尚未討論但于圖11顯示在包絡調整器234上方的模塊提供的較高頻部分的頻譜包絡表示型態,來頻譜成形或整形高頻復制部分。如此,包絡調整器234依據所傳輸的高頻包絡的時間/頻率網格表示型態調整高頻復制部分的包絡,及轉發如此所得較高頻部分給頻譜至時域轉換器236,用以將整個頻譜即頻譜成形較高頻部分連同重建較低頻部分變換成輸出端228處的重建時域信號。
[0097]如前文就圖8至圖10已述,較高頻部分頻譜包絡可以能量標度因子形式在數據流內部傳遞,SBR解碼器224包括輸入端238來接收較高頻部分頻譜包絡上的此種信息。如圖11所示,以活動階段為例,即在活動階段期間存在于數據流的活動幀,輸入238可經由個別開關240直接連接至包絡調整器234的頻譜包絡輸入。但SBR解碼器224額外地包括標度因子組合器242、標度因子數據儲存模塊244、內插濾波單元246諸如IIR濾波單元,及增益調整器248。模塊242、244、246及248在輸入端238與包絡調整器234的頻譜包絡輸入間彼此串聯連接,開關240連接在增益調整器248與包絡調整器234之間,而開關250連接在標度因子數據儲存模塊244與濾波單元246之間。開關250被配置為連接此標度因子數據儲存模塊244與濾波單元246的輸入端,或連接標度因子數據恢復器252。在不活動階段期間的SID幀的情況下,以及選擇性地在活動幀之情況下,較高頻部分頻譜包絡的極為粗糙表示型態為可接受的情況下,開關250及240將輸入端238連接至包絡調整器234間的模塊序列242至248。標度因子組合器242將較高頻部分頻譜包絡已經經由數據流傳輸的頻率分辨率調整為包絡調整器234預期接收的分辨率,而標度因子數據儲存模塊244儲存所得頻譜包絡直到下次更新。濾波單元246在時間及/或頻譜維度濾波該頻譜包絡,而增益調整器248適配較高頻部分的頻譜包絡之增益。為了達成該目的,增益調整器可組合通過單元246獲得的包絡數據與從QMF濾波器組輸出導出的實際包絡。標度因子數據恢復器252再現通過標度因子數據儲存模塊244儲存的表示在中斷階段或零幀內的頻譜包絡的標度因子數據。
[0098]如此,在解碼器端可進行下列處理。在活動幀內或在活動階段期間,可施加常規頻帶復制處理。在這種活動時段期間,得自數據流的標度因子(其通常相比于舒適噪聲產生處理可用在更高數目的標度因子頻帶)通過標度因子組合器242而變換成舒適噪聲產生頻率分辨率。標度因子組合器組合針對較高頻率分辨率的標度因子來獲得多個標度因子,通過檢查不同頻帶表的共享頻帶邊界而符合舒適噪聲產生(CNG)。標度因子組合單元242的輸出端處的所得標度因子值被儲存以供零幀再度使用,及后來通過恢復器252再現,及隨后用在更新用于CNG操作模式的濾波單元246。在SID幀中,施加已修改的SBR數據流讀取器,其從數據流提取標度因子信息。SBR處理的其余配置以預定值初始化,時間/頻率網格經初始化為編碼器內使用的相同時間/頻率分辨率。所提取的標度因子被饋送至濾波單元246,在該處,例如一個IIR平順濾波器內插一個低分辨率標度因子帶隨時間的能量進展。在零幀的情況下,未從比特流讀取有效負載,含時間/頻率網格的SBR配置與SID幀使用者相同。在零幀中,濾波單元246中的平滑濾波器被饋送以從標度因子組合單元242輸出的標度因子值,該標度因子值已經儲存在含有效標度因子信息的最末幀。在當前幀被歸類為不活動幀或SID幀的情況下,舒適噪聲在TCX域產生,并變換回時域。隨后,含舒適噪聲的時域信號被饋送進SBR模塊224的QMF分析濾波器組230。在QMF域中,舒適噪聲的帶寬擴展是利用HF生成器232內部的拷貝轉位進行的,最后,人工產生的較高頻部分的頻譜包絡通過將能量標度因子信息施加于包絡調整器234而調整。這種能量標度因子通過濾波單元246的輸出而獲得,并在施用于包絡調整器234前通過增益調整單元248定標。在此增益調整單元248中,用以定標標度因子的增益值被計算及施加來補償該信號的較低頻部分與較高頻部分間邊界的巨大能量差。
[0099]前述實施例常用在圖12及圖13的實施例。圖12顯示依據本案的實施例音頻編碼器的實施例,而圖13顯示音頻解碼器的實施例。有關這種圖式揭示的細節應分別同等適用于前述組件。[0100]圖12的音頻編碼器包括用以頻譜分解輸入音頻信號的QMF分析濾波器組200。檢測器270及噪聲估計器262連接至QMF分析濾波器組200的輸出端。噪聲估計器262負責背景噪聲估計器12的功能。在活動階段期間,得自QMF分析濾波器組的QMF頻譜是通過頻帶復制參數估計器260的并聯處理,接著一方面為某個SBR編碼器264,另一方面為QMF合成濾波器組272接著核心編碼器14的級聯。二并聯路徑連接至比特流封裝器266的相應輸入。在輸出SID幀的情況下,SID幀編碼器274從噪聲估計器262接收數據,并將SID幀輸出給比特流封裝器266。
[0101]由估計器260輸出的頻譜帶寬擴展數據描述頻譜圖的較高頻部分的頻譜包絡或由QMF分析濾波器組200輸出的頻譜,然后通過SBR編碼器264編碼,諸如通過熵編碼而編碼。數據流多路復用器266將活動階段的頻譜帶寬擴展數據插入在多路復用器266的輸出端268的數據流輸出內。
[0102]檢測器270檢測目前是活動階段還是不活動階段。基于此檢測,目前將輸出活動幀、SID幀或零幀即不活動幀。換言之,模塊270確定是活動階段還是不活動階段,及若是不活動階段,則確定是否將輸出SID幀。該確定指示于圖12,I表示零幀,A表示活動幀,而S表示SID幀。對應于存在活動階段的輸入信號的時間區間的幀也轉發給QMF合成濾波器組272與核心編碼器14的級聯。與QMF分析濾波器組200相比,QMF合成濾波器組272具有較低頻率分辨率,或在較低數目QMF子帶操作,從而在將輸入信號的活動幀部分再度轉移至時域時,通過子帶數目比達成相應縮減取樣率。更明確言之,QMF合成濾波器組272被施加至活動幀內的QMF分析濾波器組頻譜圖的較低頻部分或低頻子帶。如此核心編碼器14接收輸入信號的縮減取樣版本,如此只涵蓋輸入QMF分析濾波器組200的原始輸入信號的較低頻部分。其余較高頻部分通過模塊260及264參數編碼。
[0103]SID幀(或更精確言之,欲通過SID幀傳遞的信息)被轉發至SID編碼器274,其例如負責圖5的模塊152的功能。唯一差異:模塊262直接對輸入信號頻譜操作,未經LPC整形。此外,因使用QMF分析濾波,模塊262的操作與通過核心編碼器所選幀模式或頻譜帶寬擴展選項的施加與否無關。圖5的模塊148及150的功能可在模塊274內實現。
[0104]多路復用器266在輸出端268將相應編碼信息復用為數據流。
[0105]圖13的音頻解碼器能對如圖12的編碼器所輸出的數據流進行操作。換言之,模塊280被配置為接收數據流,及將數據流內的幀分類成例如活動幀、SID幀及零幀(即數據流不含任何幀)。活動幀被轉發至核心解碼器92、QMF分析濾波器組282及頻譜帶寬擴展模塊284的級聯。選擇性地,噪聲估計器286連接至QMF分析濾波器組的輸出端。噪聲估計器286的操作類似于例如圖3的背景噪聲估計器90且負責背景噪聲估計器90的功能,但噪聲估計器對未經整形的頻譜而非激勵頻譜進行操作。模塊92、282及284的級聯連接至QMF合成濾波器組288的輸入端。SID幀被轉發至SID幀解碼器290,其例如負責圖3的背景噪聲生成器96的功能。舒適噪聲產生參數更新器292被饋送以來自解碼器290及噪聲估計器286的信息,更新器292控制隨機生成器294,隨機生成器294負責圖3的參數隨機生成器功能。因遺漏不活動幀或零幀,故無需轉發至任何處所,但它們觸發隨機生成器294的另一隨機產生循環。隨機生成器294的輸出端連接至QMF合成濾波器組288,其輸出端提供無聲的重建音頻信號及時域的活動階段。
[0106]如此,在活動階段期間,核心解碼器92重建音頻信號的較低頻部分,包括噪聲成分及有用信號二者。QMF分析濾波器組282頻譜分解重建信號,頻譜帶寬擴展模塊284分別使用數據流及活動幀內的頻譜帶寬擴展信息來加上較高頻部分。噪聲估計器286若存在時基于如通過核心解碼器重建的頻譜部即較低頻部分執行噪聲估計。在不活動階段中,SID幀傳遞信息,該信息描述在編碼器側由噪聲估計器262得出的背景噪聲估計。參數更新器292主要使用編碼器信息來更新其參數背景噪聲估計,在關于SID幀的傳輸損耗的情況下,使用由噪聲估計器286所提供的信息主要是作為備選。QMF合成濾波器組288變換在活動階段由頻譜帶寬擴展模塊284輸出的頻譜分解信號及時域中的舒適噪聲產生信號頻譜。如此,圖12及圖13清楚顯示QMF濾波器組框架可用作基于QMF的舒適噪聲產生的基礎。QMF框架提供方便方式來在編碼器中將輸入信號向下重新取樣至核心編碼器的取樣率,或運用QMF合成濾波器組288在解碼器端向上取樣核心解碼器92的核心解碼器輸出信號。同時,QMF框架也可組合帶寬擴展來提取及處理由核心編碼器14及核心解碼器92 二模塊所留下的信號的頻率成分。據此,QMF濾波器組可對各種信號處理工具提供共享框架。依據圖12及圖13的實施例,舒適噪聲產生被成功地包括于此框架內。
[0107]具體地,依據圖12及圖13的實施例,可知在QMF分析后可能在解碼器端產生舒適噪聲,但在QMF分析前,通過施用隨機生成器294來激勵例如QMF合成濾波器組288的各個QMF系數的實數部分及虛數部分。隨機序列的幅值例如在各個QMF帶中被計算,使得產生舒適噪聲的頻譜類似實際輸入背景噪聲信號的頻譜。此點可在編碼端在QMF分析后使用噪聲估計器而在各個QMF帶達成。然后這些參數可經由SID幀傳輸,來在解碼器側更新在各個QMF帶施加的隨機序列的幅值。
[0108]理想地,注意,施加于編碼器側的噪聲估計器262應可在不活動(即只有噪音)及活動時段(典型地含有嘈雜語音)二者期間操作,使得在各個活動時段結束后即刻更新舒適噪聲參數。此外,噪聲估計也可用在解碼器側。因在基于DTX的編碼/解碼系統中拋棄只有噪音的幀,在解碼器側的噪聲估計有利地能夠對嘈雜語音內容操作。除了編碼器側之外,在解碼器側執行噪聲估計的優點是可更新舒適噪聲的頻譜形狀,即便在一段活動時段后第一個SID幀從編碼器至解碼器的分組傳輸失敗的情況下也是如此。
[0109]噪聲估計須能準確且快速地遵循背景噪聲的頻譜內容變化,如前所述,理想地,應能夠在活動巾貞及不活動巾貞二者期間執行。達成此項目的的一個方式是如[R.Martin,Noise Power Spectral Density Estimation Based on Optimal Smoothing and MinimumStatistics, 2001]所提出的,使用有限長度的滑動窗追蹤功率頻譜在各帶取的最小值。其背后的構思是嘈雜語音頻譜的功率經常衰減至背景噪聲的功率,例如在各字間或在各音節間。追蹤功率頻譜的最小值因而提供各頻帶中固有噪聲水平的估計,即便于語音活動期間亦如此。但通常這種固有噪聲水平被低估。此外,其不允許捕捉頻譜功率的快速起伏,尤其是能量突增。
[0110]盡管如此,在各頻帶中如前述計算的固有噪聲水平提供極為有用的輔助信息來應用噪聲估計的第二階段。實際上,發明人可預期噪聲頻譜的功率接近在不活動期間估計的固有噪聲水平,而頻譜功率將遠高于活動期間的固有噪聲水平。因此在各頻帶單獨計算的固有噪聲水平可用作各頻帶的粗略活動檢測器。基于此知識,容易如下地將背景噪聲功率估計為功率頻譜的遞歸平滑版本:
[0111]O N2 (m, k) = β (m, k).σ N2 (m_l, k) + (1-β (m, k).σ x2 (m, k),[0112]其中,σ x2 (m, k)表示在幀m及頻帶k的功率頻譜密度,σ N2 (m, k)表示噪聲功率估計,而β (m,k)為忘記因子(需在O和I之間)單獨控制各頻帶及各幀的平滑因子。使用固有噪聲水平信息來反映活動狀態,在不活動時段期間應取小值(即此時功率頻譜接近固有噪聲水平),而在活動幀期間,應選擇高值來施加更多平滑(理想地,保持oN2(m,k)恒定)。為了達成此目的,通過如下計算忘記因子可做出軟決策:
[0113]
【權利要求】
1.一種音頻編碼器,包括: 背景噪聲估計器(12),被配置為在活動階段(24)期間,基于輸入音頻信號來連續地更新參數背景噪聲估計; 編碼器(14),用于在該活動階段期間將所述輸入音頻信號編碼成數據流;以及 檢測器(16),被配置為基于所述輸入音頻信號來檢測在所述活動階段(24)后進入不活動階段(28), 其中所述音頻編碼器被配置為:當檢測到進入所述不活動階段時,將所檢測到的不活動階段跟隨的所述活動階段期間連續地更新的所述參數背景噪聲估計編碼到所述數據流。
2.如權利要求1所述的音頻編碼器,其中所述背景噪聲估計器(12)被配置為:在連續地更新所述參數背景噪聲估計的過程中,區分所述輸入音頻信號內的噪聲成分及有用信號成分,并且只根據所述噪聲成分來確定所述參數背景噪聲估計。
3.如權利要求1或2所述的音頻編碼器,其中所述編碼器(14)被配置為:在編碼所述輸入音頻信號的過程中,將所述輸入音頻信號預測地編碼成線性預測系數及激勵信號,并且變換編碼所述激勵信號,并且將所述線性預測系數編碼成所述數據流(30)。
4.如權利要求3所述的音頻編碼器,其中所述背景噪聲估計器(12)被配置為:在所述活動階段期間使用所述激勵信號來更新所述參數背景噪聲估計。
5.如權利要求3或4所述的音頻編碼器,其中所述背景噪聲估計器被配置為:在更新所述參數背景噪聲估計的過程中,識別所述激勵信號中的局部最小值,并且執行所述局部最小值處的所述激勵信號的統計分析,以得出所述參數背景噪聲估計。
6.如前述權利要求中任一項所述的音頻編碼器,其中所述編碼器被配置為:在編碼所述輸入信號的過程中,使用預測編碼和/或變換編碼來編碼所述輸入音頻信號的較低頻部分,以及使用參數編碼來編碼所述輸入音頻信號的較高頻部分的頻譜包絡。
7.如前述權利要求中任一項所述的音頻編碼器,其中所述編碼器被配置為:在編碼所述輸入信號的過程中,使用預測編碼和/或變換編碼來編碼所述輸入音頻信號的較低頻部分,以及在使用參數編碼來編碼所述輸入音頻信號的較高頻部分的頻譜包絡和使所述輸入音頻信號的所述較高頻部分不經編碼之間做出選擇。
8.如權利要求6或7所述的音頻編碼器,其中所述編碼器被配置為:在不活動階段中,中斷所述預測編碼和/或變換編碼以及所述參數編碼;或者在活動階段中,中斷所述預測編碼和/或變換編碼,并以與使用所述參數編碼相比更低的時間/頻率分辨率來對所述輸入音頻信號的所述較高頻部分的所述頻譜包絡執行所述參數編碼。
9.如權利要求6、7或8所述的音頻編碼器,其中所述編碼器使用濾波器組來在頻譜上將所述輸入音頻信號分解為形成所述較低頻部分的子帶集合,和形成所述較高頻部分的子帶集合。
10.如權利要求9所述的音頻編碼器,其中所述背景噪聲估計器被配置為:在活動階段中,基于所述輸入音頻信號的所述較低頻部分和較高頻部分來更新所述參數背景噪聲估計。
11.如權利要求10所述的音頻編碼器,其中所述背景噪聲估計器被配置為:在更新所述參數背景噪聲估計的過程中,識別所述輸入音頻信號的所述較低頻部分和較高頻部分中的局部最小值,以及執行所述局部最小值處的所述輸入音頻信號的所述較低頻部分和較高頻部分的統計分析,以得出所述參數背景噪聲估計。
12.如前述權利要求中任一項所述的音頻編碼器,其中所述噪聲估計器被配置為即便在不活動階段期間仍繼續連續地更新所述背景噪聲估計,其中所述音頻編碼器被配置為間歇地編碼在不活動階段期間連續地更新的所述參數背景噪聲估計的更新。
13.如權利要求12所述的音頻編碼器,其中所述音頻編碼器被配置為:在固定的或可變的時間區間內,間歇地編碼所述參數背景噪聲估計的所述更新。
14.一種用于解碼數據流以根據其重建音頻信號的音頻解碼器,所述數據流至少包括活動階段(86)和接在其后的不活動階段(88),所述音頻解碼器包括: 背景噪聲估計器(90),被配置為在所述活動階段(86)期間連續地根據所述數據流(104)更新參數背景噪聲估計; 解碼器(92),被配置為在所述活動階段期間根據所述數據流重建所述音頻信號; 參數隨機生成器(94);以及 背景噪聲生成器(96),被配置為:通過根據所述參數背景噪聲估計在所述不活動階段(88)期間控制所述參數隨機生成器(94),在所述不活動階段(88)期間合成所述音頻信號。
15.如權利要求14所述的音頻解碼器,其中所述背景噪聲估計器(90)被配置為:在連續地更新所述參數背景噪聲估計的過程中,區分在所述活動階段(86)中根據所述數據流(104)重建的所述音頻信號的版本內的噪聲成分和有用信號成分,以及只根據所述噪聲成分確定所述參數背景噪聲估計。`
16.如權利要求14或15所述的音頻解碼器,其中所述解碼器(92)被配置為:在根據所述數據流重建所述音頻信號的過程中,根據也被編碼到所述數據流的線性預測系數,來對被變換編碼到所述數據流的激勵信號進行整形。
17.如權利要求16所述的音頻解碼器,其中所述背景噪聲估計器(90)被配置為:使用所述激勵信號來更新所述參數背景噪聲估計。
18.如權利要求16或17所述的音頻解碼器,其中所述背景噪聲估計器被配置為:在更新所述參數背景噪聲估計的過程中,識別所述激勵信號中的局部最小值,以及執行所述局部最小值處的所述激勵信號的統計分析,以得出所述參數背景噪聲估計。
19.如前述權利要求中任一項所述的音頻解碼器,其中所述解碼器被配置為:在重建所述音頻信號的過程中,使用預測解碼和/或變換解碼來根據所述數據流重建所述音頻信號的較低頻部分,以及合成所述音頻信號的較高頻部分。
20.如權利要求19所述的音頻解碼器,其中所述解碼器被配置為:根據參數地編碼到所述數據流的所述輸入音頻信號的所述較高頻部分的頻譜包絡,合成所述音頻信號的所述較高頻部分,或基于所述較低頻部分,通過盲帶寬擴展來合成所述音頻信號的所述較高頻部分。
21.如權利要求20所述的音頻解碼器,其中所述解碼器被配置為:在不活動階段內中斷所述預測解碼和/或變換解碼,以及通過在所述活動階段中根據所述頻譜包絡來在頻譜上形成所述音頻信號的所述較低頻部分的拷貝來執行所述音頻信號的所述較高頻部分的合成,以及在所述不活動階段中根據所述頻譜包絡來在頻譜上形成該合成音頻信號的拷貝。
22.如權利要求20或21所述的音頻解碼器,其中所述解碼器包括逆濾波器組,以根據所述較低頻部分的子帶集合及所述較高頻部分的子帶集合在頻譜上組成所述輸入音頻信號。
23.如權利要求14至22中任一項所述的音頻解碼器,其中所述音頻解碼器被配置為:每當所述數據流被中斷時,和/或每當所述數據流給出所述數據流的進入的信號時,檢測到進入所述不活動階段。
24.如權利要求14至23中任一項所述的音頻解碼器,其中所述背景噪聲生成器(96)被配置為:僅在緊接在從活動階段至不活動階段的轉變之后所述數據流中不存在任何參數背景噪聲估計信息的情況下,通過根據由所述背景噪聲估計器連續地更新的所述參數背景噪聲在所述不活動階段(88)期間控制所述參數隨機生成器(94),在所述不活動階段(88)期間合成所述音頻信號。
25.如權利要求14至24中任一項所述的音頻解碼器,其中所述背景噪聲估計器被配置為:在連續地更新所 述參數背景噪聲估計的過程中,使用來自所述解碼器(92)的所重建的所述音頻信號的頻譜分解。
26.如權利要求14至25中任一項所述的音頻解碼器,其中所述背景噪聲估計器被配置為:在連續地更新所述參數背景噪聲估計的過程中,使用來自所述解碼器(92)的所重建的所述音頻信號的QMF頻譜。
27.一種音頻編碼方法,包括: 在活動階段(24)期間,基于輸入音頻信號來連續地更新參數背景噪聲估計; 在所述活動階段期間將所述輸入音頻信號編碼成數據流;基于所述輸入音頻信號檢測跟隨所述活動階段(24)的不活動階段(28)的進入;以及 當檢測到所述不活動階段的進入時,將檢測到的所述不活動階段跟隨的所述活動階段期間所連續地更新的所述參數背景噪聲估計編碼到所述數據流。
28.一種用于解碼數據流以根據其重建音頻信號的音頻解碼方法,所述數據流至少包括活動階段(86)和接在其后的不活動階段(88),所述方法包括: 在所述活動階段(86)期間連續地根據所述數據流更新參數背景噪聲估計; 在所述活動階段期間根據所述數據流重建所述音頻信號; 通過根據所述參數背景噪聲估計在所述不活動階段(88)期間控制所述參數隨機生成器(94 ),在所述不活動階段期間(88 )合成所述音頻信號。
29.一種具有程序代碼的計算機程序,當該計算機程序在計算機上運行時該程序代碼用于執行如權利要求26至28中任一項所述的方法。
【文檔編號】G10L19/012GK103534754SQ201280015995
【公開日】2014年1月22日 申請日期:2012年2月14日 優先權日:2011年2月14日
【發明者】帕尼·塞蒂亞萬, 康斯坦丁·施密特, 斯特凡·維爾登 申請人:弗蘭霍菲爾運輸應用研究公司