專利名稱:立體聲音頻編/解碼方法及編/解碼器的制作方法
技術領域:
本發明涉及音頻處理技術領域,具體涉及數字立體聲音頻編/解碼方法及 編/解碼器。
背景技術:
立體聲是指能使聽者有聲源在空間分布的感覺的聲音信號。立體聲音頻在
錄制時通常被分配到兩個獨立的聲道左聲道和右聲道,在重放時人耳通過分 辨來自左右聲道的音頻信號的強度差、延時等產生聽覺的空間感。
通常立體聲信號主要有兩個來源 一是采用雙麥克風或多麥克風自然錄 音,此時左右聲道音頻來自同一音頻場景,除了由于麥克風擺位造成的時間差、 強度差等不同,他們記錄的音頻信息基本一致; 一是采用音頻工作室人工混音, 由于在大多數情況下力求營造具有真實感的音頻場景,因此這種方式下左右聲 道間 一般也具有較強的相關性。
在處理立體聲音頻信號時, 一般先對左右聲道進行模/數(A/D: Analog/ Digital)采樣得到數字立體聲信號,本文中將左右聲道的對應的數字信號表示 為兩個矢量語音信號Xl和Xr,矢量的維數與采樣數據點數相關;然后對XL和 XR進行編碼。如何在盡可能低的編碼碼率下獲得盡可能好的重現音質是始終 追求的目標之一。目前主要有兩種立體聲音頻編碼方法
一、 和差立體聲(Sum-difference Stereo)
如圖1所示,該方法將XL和XR在頻域對應頻率處進行相加和相減處理,
分別得到和矢量信號Xs與差矢量信號Xd,然后分別對Xs和XD進行量化編碼。 由圖l可以看出,在較為理想的情況下,由于Xl和Xr差別不大,使得Xd能量 非O但明顯小于Xs。因此可對與XL和XR類似的Xs以常規的碼率進行編碼,而 對Xo則以較小的碼率進行編碼。
二、 強度立體聲(Intensity Stereo )
為了使碼率進一步下降,在強度立體聲方法中引入心理聲學以去除聲道間 的主觀冗余。該方法中只編碼一個聲道的信號,例如Xl或Xr,以及另一個聲
道與之的能量比。在解碼端重現出一個聲道的信號,以及僅體現能量差異的另 一個信號。
在對現有技術的研究和實踐過程中,發明人發現實際的立體聲信號由于受 環境噪音,墻體、地面的多次反射、折射和吸收,以及多聲源的影響,在很多 時候并不接近圖1所示的模型,而是表現為圖2所示的情況,即差矢量信號
Xo的能量并不明顯小于原始的矢量語音信號XL和XR。此時,現有和差立體聲 編碼方法無法帶來碼率降低的效果,而強度立體聲編碼方法則會引入明顯的失真。
發明內容
本發明提供一種能夠有效提高編碼增益的立體聲音頻編碼方法以及相應 的解碼方法和編/解碼器。
一種立體聲音頻編碼方法,包括獲取分別屬于左聲道和右聲道的兩個對 應的矢量語音信號;對所述兩個矢量語音信號進行正交旋轉變換,獲得兩個旋 轉矢量信號;所述兩個旋轉矢量信號之間的相關度大于或等于所述兩個矢量語 音信號之間的相關度;對所述旋轉矢量信號進行編碼;在編碼結果中放入所述 正交旋轉變換的旋轉角度的信息。
一種立體聲音頻解碼方法,包括獲取立體聲音頻編碼碼流;從所述編碼 碼流中獲取旋轉角度的信息;從所述編碼碼流中獲取兩個旋轉矢量信號;按照 所述旋轉角度對所述兩個旋轉矢量信號進行反向正交旋轉變換,獲得兩個矢量 語音信號。
一種立體聲音頻編碼器,包括信號分析單元,用于輸出分別屬于左聲道 和右聲道的兩個對應的矢量語音信號;旋轉變換單元,用于對所述兩個矢量語 音信號進行正交旋轉變換,輸出兩個旋轉矢量信號以及所述正交旋轉變換的旋 轉角度;所述兩個旋轉矢量信號之間的相關度大于或等于所述兩個矢量語音信 號之間的相關度;編碼單元,用于對輸入的兩個矢量信號進行編碼,輸出編碼 結果;當輸入的矢量信號為所述旋轉變換單元輸出的旋轉矢量信號時,在輸出 的編碼結果中放入所述旋轉變換單元輸出的旋轉角度的信息。
一種立體聲音頻解碼器,包括碼流接收單元,用于獲取立體聲音頻編碼
碼流;解碼單元,用于從所述編碼碼流中獲取旋轉角度的信息以及兩個旋轉矢 量信號并輸出;反旋轉變換單元,用于按照所述解碼單元輸出的旋轉角度的信 息對所述解碼單元輸出的兩個旋轉矢量信號進行反向正交旋轉變換,輸出兩個 矢量語音信號。
本發明實施例采用對左右聲道的矢量語音信號進行旋轉正交變換,提高兩 個矢量之間的相關度的方法;由于變換后的兩個矢量具有較好的相關性,使得 后續的編碼過程能夠以低碼率實現較高的音質,確保了編碼增益的提高。與傳 統方法相比,能夠在相同的碼率下獲得更高的音質,或者在同等音質下實現更 低的碼率。
圖l是一種現有左右聲道矢量聲音信號和差示意圖; 圖2是另一種現有左右聲道矢量聲音信號和差示意圖; 圖3是本發明實施例一立體聲音頻編碼方法流程示意圖; 圖4是本發明實施例一中正交旋轉變換示意圖; 圖5是本發明實施例二立體聲音頻解碼方法流程示意圖; 圖6是本發明實施例三立體聲音頻編碼方法流程示意圖; 圖7是本發明實施例四立體聲音頻編碼方法流程示意圖; 圖8是本發明實施例五立體聲音頻編碼方法流程示意圖; 圖9是本發明實施例六立體聲音頻解碼方法流程示意圖; 圖IO是本發明實施例七立體聲音頻編碼器邏輯結構示意圖; 圖ll是本發明實施例八立體聲音頻解碼器邏輯結構示意圖; 圖12是本發明實施例九立體聲音頻編碼器邏輯結構示意圖; 圖13是本發明實施例十立體聲音頻編碼器邏輯結構示意圖; 圖14是本發明實施例十一立體聲音頻編碼器邏輯結構示意圖; 圖15是本發明實施例十二立體聲音頻解碼器邏輯結構示意圖。
具體實施例方式
本發明實施例提供了 一種立體聲音頻編碼方法,對左右聲道的矢量語音信 號進行旋轉正交變換,提高兩個矢量之間的相關度。本發明實施例還提供相應
的立體聲音頻解碼方法和立體聲音頻編/解碼器。以下分別進行詳細說明。
實施例一、 一種立體聲音頻編碼方法,如圖3所示,包括 Al 、獲取分別屬于左聲道和右聲道的兩個對應的矢量語音信號。 對左右聲道矢量語音信號的采集可參照現有方式進行。基于人耳的聽覺特 性,可將左聲道和右聲道按頻率劃分為若干子帶,獲取分別屬于左聲道和右聲 道的相同子帶的兩個矢量語音信號作為對應的矢量語音信號。以子帶為單位進 行立體聲音頻處理的依據在于
人的聽覺可以用一個非均勻帶寬的濾波器組描述,每個濾波器組通道被稱 為一個子帶。子帶的帶寬與人的聽覺特性匹配,人耳對立體聲的空間感主要來 自左右聲道對應子帶信號的整體特性,如強度差、延時等,而對子帶信號的細 節不敏感。從低頻到高頻,子帶的帶寬不斷增大,在理想的情況下與心理聲學 中的關鍵帶(Critical Band)或等效矩形帶寬(Equivalent Rectangular Bandwidth, ERB)—致。因此根據心理聲學,子帶是最小的聽覺單位,每個子帶可以作為 一個獨立的聽覺單元,即可以以子帶為單位進行立體聲音頻處理操作。
獲取子帶的矢量語音信號可采用兩類方法1、基于可重建濾波器組,如 濾波器多相濾波器組(PQMF: Polyphase Quadrature Mirror Filterbank); 2 、基 于時頻變換,如快速傅立葉變換(FFT: Fast Fourier Transform )、離散余弦變 換(DCT: Discrete Cosine Transform)和修正離散余弦變換(MDCT: Modified Discrete Cosine Transform )等。將左右聲道相同子帶的采樣數據按時間(基于
濾波器組)或頻率(基于時頻變換)排列形成矢量語音信號對XL和XR。例如,
若左右聲道劃分為4個子帶,每個子帶包含12個數據點,則有4組12維的X^和 XR向量對,每個向量對均可按照本實施例后續提供的方法進行處理。
A2、對所述兩個矢量語音信號進行正交旋轉變換,獲得兩個旋轉矢量信 號;所述兩個旋轉矢量信號之間的相關度大于或等于所述兩個矢量語音信號之 間的相關度。
對矢量語音信號XL和XR執行的正交旋轉變換如圖4所示,可用公式表示
為<formula>formula see original document page 10</formula><formula>formula see original document page 10</formula>(1)
其中,XL和XR表示左右聲道相同子帶的兩個矢量語音信號;Y。和Yi表示變換
后的兩個旋轉語音信號;e表示旋轉角度。本實施例中僅要求e是使得相關度
增大的旋轉角度,對其帶來的相關度增量以及獲取方式不作限定,例如可在中隨機或按某種規律搜索獲取。由于矢量對的相關度越高后續的編 碼過程就可能獲得更大的編碼增益,因此使得相關度極大化的旋轉角度是希望 被采用的。
下面給出極大化相關度旋轉角的推理過程
由(1)式得到旋轉語音信號Yo和^的代數表達式為,
Y0 :cos0Xjl +sin0XR
A = —sin0Xt + cos0XR 假定矢量對a、 b的相關度corr(a,b)采用如下歸一化的度量計算方式,
(2)
corr(a,b)=
a,b
ab
其中〈xl,x2〉表示矢量xl和x2的標量積;I l表示矢量的模。則由(2)式,相關 度corr(Y。 , ^)可以表示為,
Yo Y
sin 20
2
+ cos2e(XL,XR
(3)
令
9n 二丄arctan
Xr,Xr〉 一 〈XL,XL
(4)
2 2〈XL,X 則使(3)式corr(Yo,Y!)有最大值的旋轉角度e的值在[-7i/2,7i/2]之間表示為,
<formula>formula see original document page 11</formula>此時,旋轉語音信號Yo和Yt有最大的相關度,
<formula>formula see original document page 11</formula> (6) 其中,E虹和ExR分別為XL和XR的能量,等于其模的平方。
由于采用正交旋轉變換,變換前后矢量能量之和不變。在極大化相關度的 旋轉變換下,Yo和Y,的能量EYo和E^有下述重要而簡單的關系,
EY0 =EY1 ="^(EXL十Exr) (7)
圉4中Yo和Y一差矢量信號Yd =(YQ -X)/2的能量Eyd,與X^和Xr的差矢 量信號XD = (XL - XR)/2的能量Exo關系如下,
<formula>formula see original document page 11</formula> (8) A3、對所述旋轉矢量信號進行編碼。
對Y。和Y]編碼的過程可參照現有方式進行,例如采用現有的和差立體聲或 強度立體聲編碼方式。
1、 采用和差立體聲方式。編碼步驟包括計算兩個旋轉矢量信號Yo和Yj的 和與差,獲得和矢量信號Ys = (YQ + Y, )/2與差矢量信號YD = (YQ - ;
對所述和矢量信號Ys與差矢量信號YD分別進行量化編碼, 一般對Ys采用 通常的編碼方式,對YD則可根據碼率、頻帶和信號特性等采用不同精度的編 碼方式。在采用極大化相關度旋轉變換的情況下,由(8)式可以看出變換后
的差矢量信號Yd的能量Eyd小于原差矢量信號Xd的能量Exd,因此和差立體聲 編碼的效率將提高。
2、 采用強度立體聲方式。編碼步驟包括對兩個旋轉矢量信號Yo和Yi中
的任意一個進行量化編碼。在采用極大化相關度旋轉變換的情況下,由(7)
式可以看出,Yo和Y,的能量比例因子恒為l,因此不需要在碼流中記錄這個參 數。由于Yo和Y!的相關度corr(Y。,Y,)大于XL和XR的相關度corr(XL,XK),因此 強度立體聲編碼引入的失真將減小。
A4、在編碼結果中放入所述正交旋轉變換的旋轉角度的信息。 為使解碼端能根據Yo和Y,重建原始的矢量語音信號X^和XR,需要將正交
旋轉變換的旋轉角度e放入編碼結果中,具體放置的字段以及碼流成型格式等
可根據實際應用需要確定,本實施例中不予限定。
本實施例采用對左右聲道的矢量語音信號進行旋轉正交變換,提高兩個矢 量之間的相關度的方法;由于變換后的兩個矢量具有較好的相關性,使得后續 的編碼過程能夠以低碼率實現較高的音質,確保了編碼增益的提高。與傳統方 法相比,能夠在相同的碼率下獲得更高的音質,或者在同等音質下實現更低的 碼率。本實施例還進一步給出計算極大化相關度旋轉角的方法,可獲得具有最 大相關度的旋轉語音信號,使得后續編碼過程能夠獲得更高的編碼增益。
實施例二、 一種立體聲音頻解碼方法,提供與實施例一編碼方法相應的解 碼方法,流程如圖5所示,包括 Bl、獲取立體聲音頻編碼碼流。
該編碼碼流為采用實施例一編碼方法獲得的編碼碼流。 B2 、從所述編碼碼流中獲取旋轉角度的信息。
解碼方可按照與編碼方共同采用的約定,從某個字段中讀取并解碼出旋轉
角度e。
B3、從所述編碼碼流中獲取兩個旋轉矢量信號;
解碼得到兩個旋轉矢量信號Yo和Y!的過程,可對應于Yo和Y,的編碼方式進行。
B4、按照所述旋轉角度對所述兩個旋轉矢量信號進行反向正交旋轉變換, 獲得兩個矢量語音信號。
即相當于對Yo和Yi進行旋轉角度為-e的正交旋轉變換,從而重建原始左右
聲道的矢量語音信號XL和XR。
實施例三、 一種立體聲音頻編碼方法,本實施例方法與實施例一的區別之 處在于在進行正交旋轉變換前,增加了對該變換的編碼增益進行評估判斷的過 程。方法流程如圖6所示,包括
Cl 、獲取分別屬于左聲道和右聲道的兩個對應的矢量語音信號。
此步驟可參照實施例一中的步驟A1進行。
C2、判斷需要對所述兩個矢量語音信號進行正交旋轉變換。
由于進行正交旋轉變換的目的是為了提高矢量的相關度,因此可以利用當 前矢量語音信號的相關度作為判斷的依據,例如可以計算所述兩個矢量語音信 號的相關度,當相關度小于設定閾值時,確定需要進行所述正交旋轉變換。
當然,若相關度大于設定閾值,說明當前矢量語音信號具有良好的相關性, 則可直接按照現有方式進行編碼,不在本實施例討論之列。
C3、對所述兩個矢量語音信號進行正交旋轉變換,獲得相關度增加的兩 個旋轉矢量信號。
C4、對所述旋轉矢量信號進行編碼。
上述步驟C3、 C4可參照實施例一中的步驟A2、 A3進行。
C5、在編碼結果中放入所述正交旋轉變換的旋轉角度的信息,并且在所 述編碼結果中設置已進行正交旋轉變換的標識;這兩個操作的執行不分先后。
為使得解碼端能夠識別編碼碼流是否采用了旋轉正交變換,可以在碼流中 放入一個標志位,用來標識是否進行了正交旋轉變換。在進行了正交旋轉變換 的情況下,需要將該標志位設置成已進行正交旋轉變換的標識,例如設置為l。
本實施例在進行正交旋轉變換前,增加了對該變換的編碼增益進行評估判 斷的過程,使得正交旋轉變換的應用更加有效,提高了編碼的效率。
實施例四、 一種立體聲音頻編碼方法,本實施例方法與實施例一的區別之 處在于在進行正交旋轉變換后,增加了對該變換的編碼增益進行評估判斷的過 程。方法流程如圖7所示,包括
Dl、獲取分別屬于左聲道和右聲道的兩個對應的矢量語音信號。 D2、對所述兩個矢量語音信號進行正交旋轉變換,獲得相關度增加的兩 個旋轉矢量信號。
上述步驟D1、 D2可參照實施例一中的步驟A1、 A2進行。
D3、比較所述兩個旋轉矢量信號之間的相關度相對所述兩個矢量語音信
號之間的相關度的增加量,根據所述增加量判斷需要對所述旋轉矢量信號進行
后續的編碼操作。
由于進行正交旋轉變換的目的是為了提高矢量的相關度,因此可以通過變 換前后相關度的增加量來判斷變換是否有效,例如可設置相關度增加量的閾 值,當相關度增加量超過閾值時,認為所進行的正交旋轉變換是有效的,確定 需要對旋轉矢量信號進行后續的編碼操作。
當然,若相關度增加量未達到閾值,則可認為正交旋轉變換效果不大,可 直接對原始的矢量語音信號按照現有方式進行編碼,不在本實施例討論之列。
D4、對所述旋轉矢量信號進行編碼。
此步驟可參照實施例一中的步驟A3進行。
D5、在編碼結果中放入所述正交旋轉變換的旋轉角度的信息,并且在所 述編碼結果中設置已進行正交旋轉變換的標識;這兩個操作的執行不分先后。
本實施例在進行正交旋轉變換后,增加了對該變換的編碼增益進行評估判 斷的過程,在評估通過時才對正交旋轉變換的結果進行編碼,使得正交旋轉變 換的應用更加有效,提高了編碼的效率。
實施例五、 一種立體聲音頻編碼方法,本實施例方法與實施例一的區別之 處在于在對正交旋轉變換的結果進行編碼后,增加了對該編碼結果的編碼增益 進行評估判斷的過程。方法流程如圖8所示,包括
El 、獲取分別屬于左聲道和右聲道的兩個對應的矢量語音信號。
E2、對所述兩個矢量語音信號進行正交旋轉變換,獲得相關度增加的兩個 旋轉矢量信號。
E3、對所述旋轉矢量信號進行編碼。
上述步驟E1、 E2、 E3可參照實施例一中的步驟A1、 A2、 A3進行。 E4、將在未采用所述正交旋轉變換的情況下對所述兩個矢量語音信號進行
編碼的結果,與所述對旋轉矢量信號進行編碼的結果進行比較,根據比較結果
判斷需要采用所述對旋轉矢量信號進行編碼的結果。
此步驟綜合評價不進行和進行正交旋轉變換的編碼結果,通常可選擇碼流 長度、失真度等作為評價參數,注意在考慮碼流長度時需要加上旋轉角度對應 的編碼長度。例如可設置編碼長度減少量的閾值,當采用正交旋轉變換的編碼 結果帶來的編碼長度減少量超過閾值時,確定需要采用所述對旋轉矢量信號進 行編碼的結果。
當然,若通過編碼結果的比較評價確定選擇不進行正交旋轉變換的編碼結 果,則可直接采用對原始的矢量語音信號進行編碼的結果。
E5、在編碼結果中放入所述正交旋轉變換的旋轉角度的信息,并且在所述
編碼結果中設置已進行正交旋轉變換的標識;這兩個操作的執行不分先后。
本實施例在對正交旋轉變換的結果進行編碼后,增加了對該編碼結果的編 碼增益進行評估判斷的過程,使得正交旋轉變換的應用更加有效,確保編碼結 果的最優性。
實施例六、 一種立體聲音頻解碼方法,提供與實施例三-五編碼方法相應 的解碼方法,流程如圖9所示,包括 Fl、獲取立體聲音頻編碼碼流。
該編碼碼流為采用實施例三~五編碼方法獲得的編碼碼流。 F2、判斷所述編碼碼流中包括已進行正交旋轉變換的標識。 例如解碼方可按照與編碼方共同采用的約定,讀取作為標識的某個標志位
的值,然后根據該值判斷當前編碼碼流是否已進行正交旋轉變換,若確定已進 行正交旋轉變換則按下述解碼過程執行,若判斷未進行正交旋轉變換則可按照 現有解碼方式進行解碼操作,不在本實施例討論之列。
F3、從所述編碼碼流中獲取旋轉角度的信息。
F4、從所述編碼碼流中獲取兩個旋轉矢量信號;
F5、按照所述旋轉角度對所述兩個旋轉矢量信號進行反向正交旋轉變換,
獲得兩個矢量語音信號。
上述步驟F3、 F4、 F5可參照實施例二中的步驟B2、 B3、 B4進行。
應當理解,實現本發明立體聲音頻編碼方法和解碼方法的軟件可以存儲于
計算機可讀介質中。該軟件的編碼方法在執行時,包括如下步驟獲取分別屬
于左聲道和右聲道的兩個對應的矢量語音信號;對所述兩個矢量語音信號進行 正交旋轉變換,獲得兩個旋轉矢量信號;所述兩個旋轉矢量信號之間的相關度 大于或等于所述兩個矢量語音信號之間的相關度;對所述旋轉矢量信號進行編 碼;在編碼結果中放入所述正交旋轉變換的旋轉角度的信息。該軟件的解碼方 法在^^行時,包括如下步驟獲取立體聲音頻編碼碼流;從所述編碼碼流中獲 取旋轉角度的信息;從所述編碼碼流中獲取兩個旋轉矢量信號;按照所述旋轉 角度對所述兩個旋轉矢量信號進行反向正交旋轉變換,獲得兩個矢量語音信 號。所述的可讀介質,如ROM/RAM、磁碟、光盤等。
為更好的理解上述實施例,以下給出實施例一編碼方法的一個數據應用例。
1、 假定左右聲道矢量語音信號的獲取采用MDCT變換方式,變換后左右 聲道的每個語音幀分別包含32個頻譜數據。根據人耳的非線性頻率分辨率將頻 譜數據從低到高分成4個子帶子帶l,譜線1 譜線4;子帶2,譜線5-譜線8; 子帶3,譜線9~語線20;子帶4,譜線21-譜線32。以子帶l為例,假定子帶l 對應的4維矢量語音信號對為,
XL = (-0.4513, -0.0091, -0.5363, -0.3011),
XR= (0.1739, 0.3309, 0.9390, -0.7371), 可得,Xl的能量Exl- 0.5821, Xr的能量Exr: 1.5646; XL和XR的標量積為 〈X^XR〉 =-0.3632,歸一化相關度為,
corr(XL,XR) = -0.3632/(0.5821 x1.5646)05 = -0.3806
2、 由(4)、 (5)兩式可計算得到此時的極大化相關度旋轉角e (弧度)
0 = 6G +兀/2 = 0.5xarctan[(1.5646-0.5821)/(2x陽0.3632)] + 1.5708 = 1.1037
cos6 = 0.4503, sin9 = 0.8929 再由(1)、 (2)兩式得到極大化相關度正交旋轉變換后的旋轉語音信號,
Yo = 0.4503 XL + 0.8929 XR = (-0.0480, 0.2914, 0.5968, -0.7937), = -0.8929 XL + 0.4503 XR = (0.4813, 0.1571, 0.9017, -0.0630), 可得,Yo和Y!的能量Eyo = EY1 = 1.0734; Yo和Y!的標量積為〈Y。,Yi〉 = 0.6109, 歸一化相關度為,
corr(Yo,Y!) = 0.6109/1.0734 = 0.5691 顯然變換后相關度由-0.3806提高到0.5691 。
3、對Yo和Y!采用和差或強度立體聲的方式進行編碼,并在編碼結果中放 入旋轉角度6= 1.1037。
對于左右聲道的其他子帶,可以同樣方式進行處理。
下面對本發明實施例的立體聲音頻編/解碼器進行詳細說明。 實施例七、 一種立體聲音頻編碼器IO,如圖10所示,包括 信號分析單元11 ,用于輸出分別屬于左聲道和右聲道的兩個對應的矢量語 音信號Xl和Xk。
旋轉變換單元12,用于對信號分析單元ll輸出的兩個矢量語音信號Xt和 XR進行正交旋轉變換,輸出兩個旋轉矢量信號Yo和Y!以及所述正交旋轉變換 的旋轉角度e;所述兩個旋轉矢量信號Yo和Yi之間的相關度大于或等于所述兩
個矢量語音信號XL和XR之間的相關度。
編碼單元13,用于對輸入的兩個矢量信號進行編碼,輸出編碼結果;當輸 入的矢量信號為旋轉變換單元12輸出的旋轉矢量信號Yo和Y,時,在輸出的編碼 結果中放入旋轉變換單元12輸出的旋轉角度e的信息。
本實施例立體聲音頻編碼器可用于執行實施例一中描述的立體聲音頻編 碼方法。
實施例八、 一種立體聲音頻解碼器20,如圖ll所示,包括
碼流接收單元21 ,用于獲取立體聲音頻編碼碼流。
解碼單元22,用于從碼流接收單元21獲取的編碼碼流中獲取旋轉角度e的 信息以及兩個旋轉矢量信號Yo和Yi并輸出。
反旋轉變換單元23,用于按照解碼單元22輸出的旋轉角度e的信息對解碼 單元22輸出的兩個旋轉矢量信號Yo和Y!進行反向正交旋轉變換,輸出兩個矢量
語音信號XL和XR。
本實施例立體聲音頻解碼器可用于執行實施例二中描述的立體聲音頻解 碼方法。
實施例九、 一種立體聲音頻編碼器30,如圖12所示,包括 信號分析單元31,用于輸出分別屬于左聲道和右聲道的兩個對應的矢量語 音信號Xl和Xr。
第一判斷單元32,用于判斷信號分析單元31輸出的兩個矢量語音信號XL 和XR是否需要進行正交旋轉變換;若是,則將所述兩個矢量語音信號Xt和XR輸 出到旋轉變換單元32,若否,則將所述兩個矢量語音信號Xt和XR輸出到編碼 單元34。
旋轉變換單元33,用于對第一判斷單元32輸出的兩個矢量語音信號X^和 XR進行正交旋轉變換,輸出兩個旋轉矢量信號Yo和Yi以及所述正交旋轉變換 的旋轉角度e;所述兩個旋轉矢量信號Yo和Y,之間的相關度大于或等于所述兩 個矢量語音信號Xt和XR之間的相關度。
編碼單元34,用于對輸入的兩個矢量信號(XL、 Xr或者Yo、 Y!)進行編 碼,輸出編碼結果;當輸入的矢量信號為旋轉變換單元33輸出的旋轉矢量信號 Yo和Yi時,在輸出的編碼結果中放入旋轉變換單元33輸出的旋轉角度e的信息。
第一填充單元35,用于根據第一判斷單元32的判斷結果,在編碼單元34 輸出的編碼結果中設置已進行或未進行正交旋轉變換的標識。
本實施例立體聲音頻編碼器可用于執行實施例三中描述的立體聲音頻編 碼方法。
實施例十、 一種立體聲音頻編碼器40,如圖13所示,包括 信號分析單元41,用于輸出分別屬于左聲道和右聲道的兩個對應的矢量語 音信號Xl和Xr。
旋轉變換單元42,用于對信號分析單元41輸出的兩個矢量語音信號X^和 XR進行正交旋轉變換,輸出兩個旋轉矢量信號Yo和Y!以及所述正交旋轉變換 的旋轉角度0;所述兩個旋轉矢量信號Yo和Y!之間的相關度大于或等于所述兩
個矢量語音信號XL和XR之間的相關度。
第二判斷單元43 ,用于比較旋轉變換單元42輸出的兩個旋轉矢量信號Yo和 Y!之間的相關度,相對信號分析單元41輸出的兩個矢量語音信號XL和XR之間 的相關度的增加量,根據所述增加量判斷是否需要對所述旋轉矢量信號Yo和
Y,進行后續的編碼操作;若是,則將所述兩個旋轉矢量信號Yo和Y!輸出到編 碼單元44,若否,則將所述兩個矢量語音信號XL和XR輸出到編碼單元44。
編碼單元44,用于對第二判斷單元43輸入的兩個矢量信號(XL、 Xr或者 Y0、 YJ進行編碼,輸出編碼結果;當輸入的矢量信號為旋轉矢量信號Yo和 Yt時,在輸出的編碼結果中放入旋轉變換單元42輸出的旋轉角度e的信息。
第二填充單元45,用于根據第二判斷單元43的判斷結果,在編碼單元44 輸出的編碼結果中設置已進行或未進行正交旋轉變換的標識。
本實施例立體聲音頻編碼器可用于執行實施例四中描述的立體聲音頻編 碼方法。
實施例十一、 一種立體聲音頻編碼器50,如圖14所示,包括 信號分析單元51,用于輸出分別屬于左聲道和右聲道的兩個對應的矢量語 音信號Xl和Xk。
旋轉變換單元52,用于對信號分析單元51輸出的兩個矢量語音信號X^和 XR進行正交旋轉變換,輸出兩個旋轉矢量信號Yo和Y!以及所述正交旋轉變換 的旋轉角度e;所述兩個旋轉矢量信號Yo和Yi之間的相關度大于或等于所述兩
個矢量語音信號XL和XR之間的相關度。
編碼單元53,用于分別對信號分析單元51和旋轉變換單元52輸入的兩個矢 量信號(X^ Xr和Yo、 Y。進行編碼,輸出編碼結果;當輸入的矢量信號為 旋轉矢量信號Yo和Yi時,在輸出的編碼結果中放入旋轉變換單元52輸出的旋轉
角度e的信息。
第三判斷單元54,用于對編碼單元53輸出的兩種編碼結果進行比較,根據 比較結果選擇輸出所述兩種編碼結果之一;
第三填充單元55,用于根據第三判斷單元54的選擇,在第三判斷單元54 選擇的編碼結果中設置已進行或未進行正交旋轉變換的標識。
本實施例立體聲音頻編碼器可用于執行實施例五中描述的立體聲音頻編 碼方法。
實施例十二、 一種立體聲音頻解碼器60,如圖15所示,包括
碼流接收單元61,用于獲取立體聲音頻編碼碼流。
第四判斷單元62,用于判斷碼流接收單元61獲取的編碼碼流中包括已進行 正交旋轉變換的標識,觸發解碼單元62的操作。
解碼單元63,用于從碼流接收單元61獲取的編碼碼流中獲取旋轉角度e的 信息以及兩個旋轉矢量信號Yo和Yi并輸出。
反旋轉變換單元64,用于按照解碼單元63輸出的旋轉角度e的信息對解碼 單元63輸出的兩個旋轉矢量信號Yo和Yi進行反向正交旋轉變換,輸出兩個矢量 語音信號Xi和XR。
本實施例立體聲音頻解碼器可用于執行實施例六中描述的立體聲音頻解 碼方法。
通過上述實施例可以看出,本發明實施例采用對左右聲道的矢量語音信號 進行旋轉正交變換,提高兩個矢量之間的相關度的方法;由于變換后的兩個矢 量具有較好的相關性,使得后續的編碼過程能夠以低碼率實現較高的音質,確 保了編碼增益的提高。與傳統方法相比,能夠在相同的碼率下獲得更高的音質, 或者在同等音質下實現更低的碼率。采用本發明實施例進一步給出的計算極大 化相關度旋轉角的方法,可獲得具有最大相關度的旋轉語音信號,使得后續編 碼過程能夠獲得更高的編碼增益。并且若進一步增加對正交旋轉變換的編碼增 益進行評估判斷的過程,能夠使得正交旋轉變換的應用更加有效,確保編碼結 果的優選性。
以上對本發明實施例所提供的立體聲音頻編/解碼方法及編/解碼器進行了
上實施例的說明只是用于幫助理解本發明的方法及其核心思想;同時,對于本 領域的一般技術人員,依據本發明的思想,在具體實施方式
及應用范圍上均會 有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。
權利要求
1、一種立體聲音頻編碼方法,其特征在于,包括獲取分別屬于左聲道和右聲道的兩個對應的矢量語音信號;對所述兩個矢量語音信號進行正交旋轉變換,獲得兩個旋轉矢量信號;所述兩個旋轉矢量信號之間的相關度大于或等于所述兩個矢量語音信號之間的相關度;對所述旋轉矢量信號進行編碼;在編碼結果中放入所述正交旋轉變換的旋轉角度的信息。
2、 根據權利要求l所述的立體聲音頻編碼方法,其特征在于,所述左聲道 和右聲道按頻率劃分為若干子帶,所述獲取分別屬于左聲道和右聲道的兩個對 應的矢量語音信號的步驟具體為獲取分別屬于左聲道和右聲道的相同子帶的 兩個矢量語音信號。
3、 根據權利要求l所述的立體聲音頻編碼方法,其特征在于,在所述對兩 個矢量語音信號進行正交旋轉變換的步驟之前還包括判斷需要對所述兩個矢 量語音信號進行正交旋轉變換;在所述對旋轉矢量信號進行編碼的步驟之后還包括在所述編碼結果中設 置已進行正交旋轉變換的標識。
4、 根據權利要求3所述的立體聲音頻編碼方法,其特征在于,所述判斷需 要對兩個矢量語音信號進行正交旋轉變換的步驟具體為計算所述兩個矢量語 音信號的相關度,當相關度小于設定閾值時,確定需要進行所述正交旋轉變換。
5、 根據權利要求l所述的立體聲音頻編碼方法,其特征在于,在所述對兩 個矢量語音信號進行正交旋轉變換的步驟之后還包括比較所述兩個旋轉矢量 信號之間的相關度相對所述兩個矢量語音信號之間的相關度的增加量,根據所 述增加量判斷需要對所述旋轉矢量信號進行后續的編碼操作;在所述對旋轉矢量信號進行編碼的步驟之后還包括在所述編碼結果中設 置已進行正交旋轉變換的標識。
6、 根據權利要求l所述的立體聲音頻編碼方法,其特征在于,在所述對旋 轉矢量信號進行編碼的步驟之后還包括將在未采用所述正交旋轉變換的情況下對所述兩個矢量語音信號進行編 碼的結果,與所述對旋轉矢量信號進行編碼的結果進行比較,根據比較結果判斷需要采用所述對旋轉矢量信號進行編碼的結果;在所采用的編碼結果中設置已進行正交旋轉變換的標識。
7、根據權利要求1 6任意一項所述的立體聲音頻編碼方法,其特征在于, 所述對兩個矢量語音信號進行正交旋轉變換的步驟具體為按照旋轉角度e執 行所述正交旋轉變換,cos 9 sin0 一sin9 cos 9,其中,e的值在[-7i/2,V2]之間表示為,<formula>formula see original document page 3</formula>X^和XR表示所述兩個矢量語音信號;Yo和Yi表示所述兩個旋轉語音信號; 〈xl, x2〉表示矢量xl和x2的標量積。
8、 根據權利要求7所述的立體聲音頻編碼方法,其特征在于,所述對旋轉 矢量信號進行編碼的步驟包括計算所述兩個旋轉矢量信號的和與差,獲得和矢量信號與差矢量信號; 對所述和矢量信號與差矢量信號分別進行量化編碼。
9、 根據權利要求7所述的立體聲音頻編碼方法,其特征在于,所述對旋轉 矢量信號進行編碼的步驟具體為對所述兩個旋轉矢量信號中的任意一個進行 量化編碼。
10、 一種立體聲音頻解碼方法,其特征在于,包括 獲取立體聲音頻編碼碼流; 從所述編碼碼流中獲取旋轉角度的信息; 從所述編碼碼流中獲取兩個旋轉矢量信號;按照所述旋轉角度對所述兩個旋轉矢量信號進行反向正交旋轉變換,獲得 兩個矢量語音信號。
11、 根據權利要求10所述的立體聲音頻解碼方法,其特征在于,在所述從編碼碼流中獲取旋轉角度的信息的步驟之前還包括判斷所述編碼碼流中包括 已進行正交旋轉變換的標識。
12、 一種立體聲音頻編碼器,其特征在于,包括信號分析單元,用于輸出分別屬于左聲道和右聲道的兩個對應的矢量語音 信號;旋轉變換單元,用于對所述兩個矢量語音信號進行正交旋轉變換,輸出兩 個旋轉矢量信號以及所述正交旋轉變換的旋轉角度;所述兩個旋轉矢量信號之 間的相關度大于或等于所述兩個矢量語音信號之間的相關度;編碼單元,用于對輸入的兩個矢量信號進行編碼,輸出編碼結果;當輸入 的矢量信號為所述旋轉變換單元輸出的旋轉矢量信號時,在輸出的編碼結果中 放入所述旋轉變換單元輸出的旋轉角度的信息。
13、 根據權利要求12所述的立體聲音頻編碼器,其特征在于,還包括第 一判斷單元,用于判斷所述信號分析單元輸出的兩個矢量語音信號是否 需要進行正交旋轉變換;若是,則將所述兩個矢量語音信號輸出到所述旋轉變 換單元,若否,則將所述兩個矢量語音信號輸出到所述編碼單元;第一填充單元,用于根據所述第一判斷單元的判斷結果,在所述編碼單元 輸出的編碼結果中設置已進行或未進行正交旋轉變換的標識。
14、 根據權利要求12所述的立體聲音頻編碼器,其特征在于,還包括 第二判斷單元,用于比較所述旋轉變換單元輸出的兩個旋轉矢量信號之間的相關度,相對所述信號分析單元輸出的兩個矢量語音信號之間的相關度的增 加量,根據所述相關度的增加量判斷是否需要對所述旋轉矢量信號進行后續的 編碼操作;若是,則將所述兩個旋轉矢量信號輸出到所述編碼單元,若否,則 將所述兩個矢量語音信號輸出到所述編碼單元;第二填充單元,用于根據所述第二判斷單元的判斷結果,在所述編碼單元 輸出的編碼結果中設置已進行或未進行正交旋轉變換的標識。
15、 根據權利要求12所述的立體聲音頻編碼器,其特征在于,所述編碼單 元分別對所述信號分析單元和旋轉變換單元的輸出進行編碼;所述編碼器還包 括第三判斷單元,用于對所述編碼單元輸出的兩種編碼結果進行比較,根據比較結果選擇輸出所述兩種編碼結果之一 ;第三填充單元,用于根據所述第三判斷單元的選擇,在所述第三判斷單元 選擇的編碼結果中設置已進行或未進行正交旋轉變換的標識。
16、 一種立體聲音頻解碼器,其特征在于,包括 碼流接收單元,用于獲取立體聲音頻編碼碼流;解碼單元,用于從所述編碼碼流中獲取旋轉角度的信息以及兩個旋轉矢量 信號并輸出;反旋轉變換單元,用于按照所述解碼單元輸出的旋轉角度的信息對所述解 碼單元輸出的兩個旋轉矢量信號進行反向正交旋轉變換,輸出兩個矢量語音信—;一
17、 根據權利要求16所述的立體聲音頻解碼器,其特征在于,還包括第四判斷單元,用于判斷所述編碼碼流中包括已進行正交旋轉變換的標 識,觸發所述解碼單元的操作。
全文摘要
本發明公開了一種立體聲音頻編碼方法,對左右聲道的矢量語音信號進行旋轉正交變換,提高兩個矢量之間的相關度。本發明還提供相應的立體聲音頻解碼方法以及立體聲音頻編/解碼器。由于變換后的兩個矢量具有較好的相關性,本發明使得后續的編碼過程能夠以低碼率實現較高的音質,確保了編碼增益的提高。與傳統方法相比,能夠在相同的碼率下獲得更高的音質,或者在同等音質下實現更低的碼率。
文檔編號G10L19/00GK101350197SQ20071013583
公開日2009年1月21日 申請日期2007年7月16日 優先權日2007年7月16日
發明者歡 侯, 斌 張, 張樹華, 王庭紅, 竇維蓓, 瑋 肖, 郭利斌 申請人:華為技術有限公司;清華大學