專利名稱:語音編碼裝置以及語音編碼方法
技術領域:
本發(fā)明涉及將數字信號壓縮為很少信息量的語音編碼裝置以及語音編碼方法。
背景技術:
在已有的多種語音編碼裝置中,將輸入語音分為頻譜包絡信息和音源信息,并按照規(guī)定長區(qū)間的帳單位分別對它們進行編碼,產生語音碼。作為最有代表性的語音編碼裝置,有使用碼激勵線性預測編碼(Code-Excited Linear PredictionCELP)方法的裝置。
圖1是顯示已有的CELP系的語音編碼裝置的結構圖。圖中,1是線性預測分析單元,用于分析輸入語音、提取出作為該輸入語音的頻譜包絡信息的線性預測系數。2是線性預測系數編碼單元,用于對由線性預測分析單元1提取出的線性預測系數進行編碼,并輸出給多路復用單元6,并將該線性預測系數的量化值輸出給自適應音源編碼單元3、驅動音源編碼單元4以及增益編碼單元5。
3是自適應音源編碼單元,用于使用從線性預測系數編碼單元2輸出的線性預測系數的量化值來生成臨時合成音,選擇臨時合成音與輸入語音的距離最小的自適應音源碼,并輸出到多路復用單元6,同時,將與該自適應音源碼相應的自適應音源信號(周期重復過去的規(guī)定長的音源信號的時間序列向量)輸出到增益編碼單元5。4是驅動音源編碼單元,用于使用從線性預測編碼單元2輸出的線性預測系數的量化值來生成臨時合成音,選擇臨時合成音與編碼對象信號(從輸入語音中減去了由自適應音源信號而產生的合成音的信號)的距離最小的驅動音源碼,并輸出到多路復用單元6,同時,將與作為該驅動音源碼的時間序列向量的驅動音源信號輸出到增益編碼單元5。
5是增益編碼單元,用于將從自適應音源編碼單元3輸出的自適應音源信號和從驅動音源編碼單元4輸出的驅動音源信號乘以增益向量的各要素,將各乘積彼此相加生成音源信號,并使用從線性預測系數編碼單元2輸出的線性預測系數的量化值,由該音源信號而生成臨時合成音,選擇臨時合成音與輸入語音的距離最小的增益碼,并輸出給多路復用單元6。6是多路復用單元,用于對由線性預測系數編碼單元2編碼后的線性預測系數碼、從自適應音源編碼單元3輸出的自適應音源碼、從驅動音源編碼單元4輸出的驅動音源碼、以及從增益編碼單元5輸出的增益碼進行多路復用,從而輸出語音碼。
圖2是顯示驅動音源編碼單元4內部的結構圖。圖中,11是驅動音源代碼簿(日文符號帳)、12是合成濾波器、13是失真計算單元、14是失真估測單元。
接下來,將就操作進行說明。
已有的語音編碼裝置,是以5—50ms的程度為1幀,以幀為單位執(zhí)行處理。
首先,就頻譜包絡信息的編碼進行說明。
線性預測分析單元1在輸入語音之后,分析該輸入語音,并提取出作為語音頻譜包括信息的線性預測系數。
在線性預測分析單元1提取出線性預測系數后,線性預測系數編碼單元2對該線性預測系數進行編碼,并將該碼輸出給多路復用單元6。將該線性預測系數的量化值輸出給自適應音源編碼單元3、驅動音源編碼單元4以及增益編碼單元5。
接下來,就音源信息的編碼進行說明。
自適應音源編碼單元3內藏存儲過去規(guī)定長的音源信號的自適應音源代碼簿,根據在內部產生的各自適應音源碼(自適應音源碼用幾比特的二進制數表示),產生周期性重復過去的音源信號的時間序列向量。
接下來,在將各時間序列向量乘以適當的增益之后,通過使各時間序列向量經過使用從線性預測系數編碼單元2輸出的線性預測系數的量化值的合成濾波器,來產生臨時合成音。
之后,自適應音源編碼單元3例如是調查臨時合成音與輸入語音之間的距離,作為編碼失真,選出該距離最小的自適應音源碼,將其輸出給多路復用單元,同時,將對應該選出的自適應音源碼的時間序列向量作為自適應音源信號,輸出至增益編碼單元5。
將從輸入語音中減去由自適應音源信號產生的合成音后的信號作為編碼對象信號,輸出至驅動音源編碼單元4。
接下來,就驅動音源編碼單元4的操作進行說明。
驅動音源編碼單元4的驅動音源代碼簿11存儲作為噪聲性(noise-like)的多個時間序列向量的驅動碼向量,并根據從失真估測單元14中輸出的各驅動音源信號(驅動音源信號用幾比特的二進制數表示),順序輸出時間序列向量。接著,在將各時間序列向量乘以適當的增益之后,輸入到合成濾波器12。
合成濾波器12使用從線性預測系數編碼單元2輸出的線性預測系數的量化值,產生乘以增益后的各時間序列向量的臨時合成音,并將其輸出。
失真計算單元13例如是計算臨時合成音與從自適應音源編碼單元3輸出的編碼對象信號之間的距離,作為編碼失真。
失真估測單元14選擇由失真計算單元13計算出的臨時合成音與編碼對象信號間的距離最小的驅動音源碼,并輸出至多路復用單元6,同時,將意圖使與該選擇出的驅動音源碼相應的時間序列向量作為驅動音源信號輸出至增益編碼單元5的指令輸出到驅動音源代碼簿11。
增益編碼單元5內藏存儲增益向量的增益代碼簿,根據在內部產生的各增益碼(增益碼由幾比特的二進制數表示),順序執(zhí)行從該增益代碼簿中讀出增益向量。
之后,各增益向量的要素分別乘以從自適應音源編碼單元3輸出的自適應音源信號、以及從驅動音源編碼單元4輸出的驅動音源信號,將各乘積彼此相加,產生音源信號。
接下來,通過使該音源信號通過使用從線性預測系數編碼單元2輸出的線性預測系數的量化值的合成濾波器,從而生成臨時合成音。
之后,增益編碼單元5例如是調查臨時合成音與輸入語音之間的距離,作為編碼失真,選擇該距離最小的增益編碼,并將其輸出至多路復用單元6。然后,將與該增益碼相應的音源信號輸出到自適應音源編碼單元3。由此,自適應音源編碼單元3,利用與由增益編碼單元5選出的增益碼相應的音源信號,執(zhí)行內藏的自適應音源代碼簿的更新。
多路復用單元6對由線性預測系數編碼單元2編碼后的線性預測系數的碼、從自適應音源編碼單元3輸出的自適應音源碼、從驅動音源編碼單元4輸出的驅動音源碼、以及從增益編碼單元5輸出的增益碼進行多路復用,并輸出作為多路復用結果的語音信號。
接下來,就謀求改進上述CELP系的語音編碼裝置的已有技術進行說明。
在特開平5-108098(文獻1)以及江原等人的“使用代數代碼的低比特率CELP的品質改進”,電子信息通信學會,1999年綜合大學演講文集,信息與系統(tǒng),1227頁(文獻2)中,公開了以即便是以低比特率也能得到高品質語音為主要目的的、具有作為多個驅動音源生成單元的驅動音源代碼簿的結構的CELP系的語音編碼裝置。在這些已有結構中,具有產生噪聲性的多個時間序列向量的驅動音源代碼簿、以及產生非噪聲性(脈沖)的多個時間序列向量的驅動音源代碼簿。
這里,非噪聲性的時間序列向量,在文獻1中是成為音頻周期的脈沖串的時間序列向量,在文獻2中是保持由少數脈沖構成的代數音源結構的時間序列脈沖。
圖3是顯示了具有多個驅動音源代碼簿的驅動音源編碼單元4的內部的結構圖。除了驅動音源編碼單元4的內部結構之外,其余為與圖1的語音編碼裝置相同的結構。
圖3中,21是存儲噪聲性的多個時間序列向量的第1驅動音源代碼簿,22是第1合成濾波器,23是第1失真計算單元,24是存儲非噪聲性的多個時間序列向量的第2驅動音源代碼簿,25是第2合成濾波器,26是第2失真計算單元,27是失真估測單元。
接下來,就其操作進行說明。
第1驅動音源代碼簿21存儲作為噪聲性的多個時間序列向量的驅動碼矢量,根據從失真估測單元27輸出的各驅動音源碼,順序輸出時間序列向量。接著,將各時間序列向量乘以適當的增益后,輸入到第1合成濾波器22。
第1合成濾波器22使用從線性預測系數編碼單元2輸出的線性預測系數的量化值,產生乘以增益后的各時間序列向量的臨時合成音,并將其輸出。
之后,第1失真計算單元23例如計算臨時合成音與從自適應音源編碼單元3輸出的編碼對象信號間的距離,將其作為編碼失真輸出到失真估測單元27。
另一方面,第2驅動音源代碼簿24存儲作為非噪聲性的多個時間序列向量的驅動碼向量,根據從失真估測單元27輸出的各驅動音源碼,順序輸出時間序列向量。接著,在將各時間序列向量乘以了適當的增益之后,輸入到第2合成濾波器25。
第2合成濾波器25使用從線性預測系數編碼單元2輸出的線性預測系數的量化值,生成乘以增益后的各時間序列向量的臨時合成音,并將其輸出。
之后,第2失真計算單元26例如計算臨時合成音與從自適應音源編碼單元3輸出的編碼對象信號間的距離,將其作為編碼失真,輸出到失真估測單元27。
失真估測單元27選擇所述臨時合成音與編碼對象信號間的距離為最小的驅動音源碼,將其輸出到多路復用單元6,同時,將意圖將該選出的驅動音源碼相應的時間序列向量作為驅動音源信號輸出到增益編碼單元5的指令輸出到第1驅動音源代碼簿21或第2驅動音源代碼簿24。
特開平5-273999號公報(文獻3)中,公開了在具有多個驅動音源代碼簿的結構中,進一步以避免頻繁切換在元音的穩(wěn)定部分等中所選擇的驅動音源代碼簿為目的,基于音響特征對輸入語音進行分類,并在驅動音源碼選擇的失真估測中反映該分類結果的方法。
由于已有的語音編碼裝置是如上構成的,因此具有所生成的時間序列向量的形態(tài)不同的多個驅動音源代碼簿,選出由各時間序列向量所生成的臨時合成音與編碼對象信號間的距離最小的時間序列向量(參見圖3)。這里,與噪聲性時間序列向量相比,非噪聲性(脈沖)時間序列向量具有臨時合成音與編碼對象信號的距離變小的傾向,被選中的比例大。
但是,由于在多數選擇非噪聲性(脈沖)時間序列向量的情況中,音質多變?yōu)槊}沖樣的,因此,存在所謂的主觀品質不一定最好的缺陷。
編碼對象信號和輸入語音在噪聲性區(qū)間,也存在所謂的在大多選擇非噪聲性(脈沖的)時間序列向量的情況下,音質為脈沖樣的、其主觀品質惡化變顯著的缺陷。
具有多個驅動音源代碼簿的情況下,各驅動音源代碼簿被選中的比例,也是以各驅動音源代碼簿生成的時間序列向量數為基礎的,生成的時間序列向量數多的驅動音源代碼簿被選中的比例大。
這里,如果改變各驅動音源代碼簿生成的時間序列向量的數,調整選中各驅動音源代碼簿的比例,就能夠使主觀品質最佳。
但是,如果各驅動音源代碼簿的結構不同,則既便是所生成的時間序列向量數相同,存儲所需的存儲量和編碼處理中所需的處理量也不同。例如,在使用生成音頻周期的脈沖串的驅動音源代碼簿的情況中,存儲量、處理量都小,但在存儲并使用通過針對語音的失真最小化學習所獲得的時間序列向量的情況下,存儲量、處理量都大。由此,由于安裝語言編碼方法的硬件的規(guī)?;蛐阅芏垢黩寗右粼创a簿生成的時間序列向量的數目受到限制,因此,不能將各驅動音源代碼簿被選中的比例調整為最佳,存在主觀品質不一定最佳的缺陷。
特開平5-273999號公報(文獻3)中,盡管避免了頻繁切換在元音穩(wěn)定部分所選的驅動音源代碼簿,但是,每帳的編碼結果主觀上并不良好,相反,由于類脈沖的音源連續(xù),而存在主觀品質低下的缺陷。
再有,編碼對象信號或輸入語音為噪聲性時,或是有硬件限制時等等情況下,還存在上述問題沒有全部解決的缺陷。
由于本發(fā)明是為了解決上述問題而作出的,因此其目的是得到語音編碼裝置和語音編碼方法,用于效率優(yōu)良地利用多個驅動音源代碼簿,從而能夠獲得主觀上品質高的語音碼。
發(fā)明內容
依據本發(fā)明的語音編碼裝置是這樣構成的在音源信息編碼單元選擇驅動音源碼時,計算噪聲性的驅動碼向量的編碼失真,將其乘以與噪聲性的程度相應的固定的加權值,另一方面,計算非噪聲性的驅動碼向量的編碼失真,將其乘以與噪聲性的程度相應的固定的加權值,選擇與值小一方的乘積有關的驅動音源碼。
如此,效率優(yōu)良地利用多個驅動音源代碼簿,從而具有能夠得到主觀上品質高的語音碼的效果。
依據本發(fā)明的語音編碼裝置是這樣構成的音源信息編碼單元使用噪聲性程度彼此不同的噪聲性驅動碼向量和非噪聲性的驅動碼向量。
由此,減輕了所謂音質變?yōu)轭惷}沖的惡化,從而具有能夠得到主觀上品質高的語音碼。
依據本發(fā)明的語音編碼裝置是這樣構成的音源信息編碼單元根據編碼對象信號的噪聲性程度來改變加權值。
由此,減輕所謂變?yōu)轭惷}沖的音質的惡化,從而具有能夠得到主觀上品質高的語音碼的效果。
依據本發(fā)明的語音編碼裝置是這樣構成的音源信息編碼單元根據輸入語音的噪聲性程度來改變加權值。
由此,減輕所謂變?yōu)轭惷}沖的音質的惡化,從而能夠得到主觀上品質高的語音編碼的效果。
依據本發(fā)明的語音編碼裝置是這樣構成的音源信息編碼單元根據編碼對象信號以及輸入語音的噪聲性程度來改變加權值。
由此,可以進行更高度的加權值控制,從而具有品質改善效果高的效果。
依據本發(fā)明的語音編碼裝置是這樣構成的音源信息編碼單元考慮針對驅動音源代碼簿的驅動碼向量的存儲數,來決定加權值。
由此,不會受到硬件的規(guī)?;蛐阅艿挠绊?,具有能夠得到主觀上品質高的語音碼的效果。
依據本發(fā)明的語音編碼方法是這樣作的在選擇驅動音源碼時,計算噪聲性驅動碼向量的編碼失真,將其乘以與噪聲性程度相應的固定的加權值,另一方面,計算非噪聲性驅動碼的編碼失真,將其乘以與噪聲性程度相應的固定的加權值,選擇與值小一方的乘積相關的驅動音源碼。
由此,效率優(yōu)良地利用多個驅動音源代碼簿,從而具有能夠得到主觀上品質高的語音碼的效果。
依據本發(fā)明的語音編碼方法是這樣作的使用噪聲性程度彼此不同的噪聲性驅動碼向量和非噪聲性的驅動碼向量。
由此,減輕了所謂音質變?yōu)轭惷}沖的惡化,從而具有能夠得到主觀上品質高的語音碼。
依據本發(fā)明的語音編碼方法是這樣作的根據編碼對象信號的噪聲性程度來改變加權值。
由此,減輕所謂成為類脈沖的音質的惡化,具有能夠得到主觀上品質高的語音碼的效果。
依據本發(fā)明的語音編碼方法是這樣作的根據輸入語音的噪聲性程度來改變加權值。
由此,減輕所謂變?yōu)轭惷}沖的音質的惡化,具有能夠得到主觀上品質高的語音編碼的效果。
依據本發(fā)明的語音編碼方法是這樣作的根據編碼對象信號以及輸入語音的噪聲性程度來改變加權值。
由此,可以進行更高度的加權值控制,從而具有品質改善效果高的效果。
依據本發(fā)明的語音編碼方法是這樣作的考慮針對驅動音源代碼簿的驅動碼向量的存儲數,來決定加權值。
由此,不會受到硬件的規(guī)?;蛐阅艿挠绊?,具有能夠得到主觀上品質高的語音碼的效果。
圖1是顯示已有的CELP系的語音編碼裝置的結構圖。
圖2是顯示驅動音源編碼單元4的內部的結構圖。
圖3是顯示具有多個驅動音源代碼簿的驅動音源編碼單元4的內部的結構圖。
圖4是顯示根據本發(fā)明實施例1的語音編碼裝置的結構圖。
圖5是顯示驅動音源編碼單元34的內部的結構圖。
圖6是顯示驅動音源編碼單元34的處理內容的流程圖。
圖7是顯示驅動音源編碼單元34的內部的結構圖。
圖8是顯示根據本發(fā)明實施例3的語音編碼裝置的結構圖。
圖9是顯示驅動音源編碼單元37的內部的結構圖。
圖10是顯示驅動音源編碼單元37的內部的結構圖。
圖11是顯示驅動音源編碼單元34的內部的結構圖。
具體實施例方式
為了對本發(fā)明進行更詳細的說明,以下將根據附圖,對實施本發(fā)明的最佳形式進行說明。
實施例1圖4是顯示依據本發(fā)明實施例1的語音編碼裝置的結構圖。圖中,31是線性預測分析單元,用于分析輸入語音,并提取出作為該輸入語音的頻譜包絡信息的線性預測系數;32是線性預測系數編碼單元,用于對線性預測分析單元31提取出的線性預測系數進行編碼,并將其輸出到多路復用單元36,另一方面,將該線性預測系數的量化值輸出到自適應音源編碼單元33、驅動音源編碼單元34以及增益編碼單元35。
由線性預測分析單元31以及線性預測系數編碼單元32而構成了包絡信息編碼單元。
33是自適應音源編碼單元,用于使用從線性預測系數編碼單元32輸出的線性預測系數的量化值來產生臨時合成音,選出臨時合成音與輸入語音的距離最小的自適應音源碼,將其輸出到多路復用單元36,同時,將與該自適應音源碼相應的自適應音源信號(周期重復過去的規(guī)定長的音源信號的時間序列向量)輸出到增益編碼單元35;34是驅動音源編碼單元,使用從線性預測系數編碼單元32輸出的線性預測系數的量化值來產生臨時合成音,選出臨時合成音與編碼對象信號(從輸入語音中減去了自適應音源信號所導致的合成音)的距離最小的驅動音源碼,將其輸出到多路復用單元36,同時,將作為與該驅動音源碼相應的時間序列向量的驅動音源信號輸出到增益編碼單元35。
35是編碼增益單元,將從自適應音源編碼單元3 3輸出的自適應音源信號和從驅動音源編碼單元34輸出的驅動音源信號乘以增益向量的各要素,將各乘積彼此相加產生音源信號,另一方面,使用從線性預測系數編碼單元32輸出的線性預測系數的量化值,由其音源信號而生成臨時合成音,選擇臨時合成音與輸入語音的距離最小的增益碼,并將其輸出到多路復用單元36。
由自適應音源編碼單元33、驅動音源編碼單元34以及增益編碼單元35構成了音源信息編碼單元。
36是多路復用單元,用于對由線性預測系數編碼單元32編碼的線性預測系數的碼、從自適應音源編碼單元33輸出的自適應音源碼、從驅動音源編碼單元34輸出的驅動音源碼、以及從增益編碼單元35輸出的增益碼進行多路復用,并輸出語音碼。
圖5是顯示驅動音源編碼單元34的內部的結構圖。在圖中,41是第1驅動音源代碼簿,它是存儲噪聲性的多個時間序列向量(驅動碼向量)的驅動音源生成單元;42是第1合成濾波器,它使用從線性預測系數編碼單元32輸出的線性預測系數的量化值,生成各時間序列向量的臨時合成音;43是第1失真計算單元,用于計算臨時合成音與從自適應音源編碼單元33輸出的編碼對象信號間的距離;44是第1加權單元,用于將與上述時間序列向量的噪聲性程序相應的固定的加權值乘以第1失真計算單元43的計算結果。
45是第2驅動音源代碼簿,它是存儲非噪聲性的多個時間序列向量(驅動碼向量)的驅動音源生成單元;46是第2合成濾波器,它使用從線性預測系數編碼單元32輸出的線性預測系數的量化值,生成各時間序列向量的臨時合成音;47是第2失真計算單元,用于計算臨時合成音與從自適應音源編碼單元3 3輸出的編碼對象信號的距離;48是第2加權單元,用于將與上述時間序列向量的噪聲性程序相應的固定的加權值乘以第2失真計算單元47的計算結果;49是失真估測單元,用于選擇與第1加權單元44的乘積和第2加權單元48的乘積中值小一方的乘積有關的驅動音源碼。
圖6是顯示驅動音源編碼單元34的處理內容的流程圖。
接下來就其操作進行說明。
語音編碼裝置以5~50ms的程度為一幀,以幀為單位執(zhí)行處理。
首先,就頻譜包絡信息的編碼進行說明。
線性預測分析單元31在語音輸入后分析該輸入語音,提取作為語音頻譜包絡信息的線性預測系數。
線性預測系數編碼單元32在線性預測分析單元31提取出線性預測系數后,對該線性預測系數進行編碼,并將該碼輸出到多路復用單元36。該線性預測系數的量化值還被輸出到自適應音源編碼單元33、驅動音源編碼單元34以及增益編碼單元35。
接下來,就音源信息的編碼進行說明。
自適應音源編碼單元33內藏存儲過去的規(guī)定長的音源信號的自適應音源代碼簿,根據在內部生成的各自適應音源信號(自適應音源代碼用幾比特的二進制數表示),生成周期重復過去的音源信號的時間序列向量。
接下來,在各時間序列向量乘以適當的增益之后,通過使各時間序列向量經過使用從線性預測系數編碼單元32輸出的線性預測系數的量化值的合成濾波器,從而生成臨時合成音。
之后,自適應音源編碼單元33例如調查臨時合成音與輸入語音的距離,作為編碼矢量,選擇該距離最小的自適應音源碼,并將其輸出到多路復用單元36,同時,將與該選擇的自適應音源碼相應的時間序列向量作為自適應音源信號輸出到增益編碼單元35。
將從輸入語音中減去了由自適應音源信號而產生的合成音后的信號作為編碼對象信號,輸出到驅動音源編碼單元34。
接下來,就驅動音源編碼單元34的操作進行說明。
第1驅動音源代碼簿41存儲作為噪聲性的多個時間序列向量的驅動碼向量,根據從失真估測單元49輸出的各驅動音源碼,順序輸出時間序列向量(步驟ST1)。接下來,在將各時間序列向量乘以適當的增益后,將其輸入到第1合成濾波器42。
第1合成濾波器42使用從線性預測系數編碼單元32輸出的線性預測系數的量化值,產生乘以增益后的各時間序列向量的臨時合成音,并將其輸出(步驟ST2)。
之后,第1失真計算單元43例如計算臨時合成音與從自適應音源編碼單元33輸出的編碼對象信號的距離,作為編碼失真(步驟ST3)。
第1加權單元44,根據存儲在第1驅動音源代碼簿41中的時間序列向量的噪聲性的程度,使預先設定的固定的加權值乘以第1失真計算單元43的計算結果(步驟ST4)。
另一方面,第2驅動音源代碼簿45存儲作為非噪聲性的多個時間序列向量的驅動碼向量,根據從失真估測單元49輸出的各驅動音源碼,順序輸出時間序列向量(步驟ST5)。接下來,在將各時間序列向量乘以適當的增益之后,將其輸出到第2合成濾波器46。
第2合成濾波器46使用從線性預測系數編碼單元32輸出的線性預測系數的量化值,產生乘以了增益的各時間序列向量的臨時合成音(步驟ST6)。
之后,第2失真計算單元47例如計算臨時合成音與從自適應音源編碼單元33輸出的編碼對象信號的距離,作為編碼失真(步驟ST7)。
第2加權單元48根據第2驅動音源代碼簿45中存儲的時間序列向量的噪聲性的程度,使預先設定的固定的加權值乘以第2失真計算單元47的計算結果(步驟ST8)。
失真估測單元49選擇所述臨時合成音與編碼對象信號的距離最小的驅動音源碼。即,選擇與第1加權單元44的乘積與第2加權單元48的乘積中值小一方的乘積有關的驅動音源碼,并將其輸出到多路復用單元36(步驟ST9)。將意圖使與該選出的驅動音源碼相應的時間序列向量作為驅動音源信號而輸出到增益編碼單元35的指令輸出到第1驅動音源代碼簿41或第2驅動音源代碼簿45。
這里,第1加權單元44以及第2加權單元48所分別使用的固定的加權值,是根據它們分別對應的驅動音源代碼簿中存儲的時間序列向量的噪聲性的程度而預先設定的。
以下,說明針對該驅動音源代碼簿的加權設定法的一個例子。
首先,求出驅動音源代碼簿內的各時間序列向量的噪聲性的程度。噪聲性的程度例如是使用過零數、振幅值的方差(日文分散)、能量的時間偏差、非零采樣數(采樣數)、相位特性等物理參數而決定的。
接下來,計算驅動音源代碼簿中存儲的所有時間序列向量的噪聲性的程度的平均值,在該平均值大的情況下,將加權值設置為小,在平均值小的情況下,將加權值設置為大。
即,在與存儲噪聲性的時間序列向量的第1驅動音源代碼簿41相應的第1加權單元44中,將加權設置為小,在與存儲非噪聲性的時間序列向量的第2驅動音源代碼簿45相應的第2加權單元48中,將加權設定為大。
由此,與已有的不執(zhí)行加權的情況相比,容易選擇第1驅動音源代碼簿41內的噪聲性時間序列向量。由此,減輕了已有的由于大多選擇非噪聲性(脈沖的)時間序列向量而引起的所謂成為類脈沖的音質的惡化。
如上所述,驅動音源編碼單元34輸出驅動音源信號后,增益編碼單元35內藏存儲增益向量的增益代碼簿,根據在內部產生的各增益碼(增益碼由幾比特的二進制數表示),順序執(zhí)行從該增益代碼簿中讀出增益向量。
之后,各增益向量的要素分別乘以從自適應音源編碼單元33輸出的自適應音源信號、從驅動音源編碼單元34輸出的驅動音源信號,并將各乘積彼此相加從而產生音源信號。
接下來,通過使該音源信號經過使用從線性預測系數編碼單元32輸出的線性預測系數的量化值,從而生成臨時合成音。
之后,增益編碼單元35例如是調查臨時合成音與輸入語音之間的距離,作為編碼失真,選擇該距離最小的增益碼,并將其輸出到多路復用單元36。并將與該增益碼相應的音源信號輸出到自適應音源編碼單元33。由此,自適應音源編碼單元33使用與由增益編碼單元35選擇的增益碼相應的音源信號,對內藏的自適應音源代碼簿進行更新。
多路復用單元36,對由線性預測系數編碼單元32編碼的線性預測系數的碼、從自適應音源編碼單元33輸出的自適應音源碼、從驅動音源編碼單元34輸出的驅動音源碼、以及從增益編碼單元35輸出的增益碼進行多路復用,并輸出作為其多路復用結果的語音碼。
如上所述,由于根據該實施例1是這樣構成的具有多個生成驅動碼矢量的驅動音源生成單元,決定每個驅動音源生成單元的固定的加權值,當選擇驅動音源碼時,在驅動音源生成單元中使用所決定的加權值,對該驅動音源生成單元產生的驅動碼向量的編碼失真進行加權,并對這種經過加權的編碼失真進行比較估測,從而選出驅動音源碼,因此,高效利用第1以及第2驅動音源代碼簿,從而起到能夠得到主觀上品質高的語音碼的效果。
由于每個驅動音源生成單元的固定的加權值是根據所述驅動音源生成單元產生的驅動碼向量的噪聲性的程度來確定的,因此,能夠抑制大多選擇非噪聲性(脈沖的)的時間序列向量的情況。由此,減輕所謂音質變?yōu)轭惷}沖這樣的惡化,實現得到主觀上品質高的語音碼的效果。
實施例2圖7是顯示驅動音源編碼單元34的內部的結構圖。圖中,由于與圖5相同的標記顯示了相同或相當的部分,因此省去對它們的說明。
50是根據編碼對象信號的噪聲性的程度來改變加權值的估測加權決定單元。
接下來,就其操作進行說明。
但是,由于除了添加了驅動音源編碼單元34的估測加權決定單元50這一點之外,它與上述實施例1都是相同的,因此,僅對不同點進行說明。
估測加權決定單元50分析編碼對象信號,分別決定從第1失真計算單元43以及第2失真計算單元47輸出的臨時合成音與編碼對象信號的距離所乘的加權值,并將這些加權值分別輸出到第1加權單元44和第2加權單元48。
這里,臨時合成音與編碼對象信號的距離所乘的加權值是根據編碼對象信號的噪聲性的程度而決定的,但是,在編碼對象信號的噪聲性的程度大的情況下,針對噪聲性程度大的第1驅動音源代碼簿4 1的加權值變小,針對噪聲性程度小的第2驅動音源代碼簿45的加權值變大。
即,在編碼對象信號的噪聲性程度大的情況下,更容易選擇噪聲性程度大的(噪聲性的)時間序列向量。
由此,減輕像已有情況那樣的、由于編碼對象信號在噪聲性區(qū)間多選擇了非噪聲性(脈沖的)時間序列向量而引起的所謂變?yōu)槊}沖樣的音質的惡化,從而能夠實現得到主觀品質高的語音碼的效果。
實施例3圖8是顯示依據本發(fā)明實施例3的語音編碼裝置的結構圖。圖中,由于與圖4相同的標記表示相同或相當的部分,因此省略對其的說明。
37是驅動音源編碼單元(音源信息編碼單元),它使用從線性預測系數編碼單元32輸出的線性預測系數的量化值來生成臨時合成音,選擇臨時合成音與編碼對象信號(從輸入語音中減去了由自適應音源信號而產生的合成音的信號)的距離最小的驅動音源碼,并將其輸出到多路復用單元36,同時,將作為與該驅動音源碼相應的時間序列向量的驅動音源信號輸出到增益編碼單元35。
圖9是顯示驅動音源編碼單元37的內部的結構圖。圖中,由于與圖5相同的標記顯示了相同或相當的部分,因此省略對其的說明。
51是根據輸入語音的噪聲性程度來改變加權值的估測加權決定單元。
接下來,就其操作進行說明。
但是,由于除了添加了估測加權決定單元51這一點之外都與上述實施例1相同,因此,僅對不同點進行說明。
估測加權決定單元51分析輸入語音,分別決定從第1失真計算單元43以及第2失真計算單元47輸出的臨時合成音與編碼對象信號的距離所乘的加權值,并將這些加權值分別輸出到第1加權單元44和第2加權單元48。
這里,臨時合成音與編碼對象信號的距離所乘的加權值是根據輸入語音的噪聲性的程度而決定的,但是,在輸入語音的噪聲性的程度大的情況下,針對噪聲性程度大的第1驅動音源代碼簿41的加權值變小,針對噪聲性程度小的第2驅動音源代碼簿45的加權值變大。
即,在輸入語音的噪聲性程度大的情況下,更容易選擇噪聲性程度大的(噪聲性的)時間序列向量。
由此,減輕像已有情況那樣的、由于輸入語音在噪聲性區(qū)間多選擇了非噪聲性(脈沖的)時間序列向量而引起的所謂變?yōu)槊}沖樣的音質的惡化,從而能夠實現得到主觀品質高的語音碼的效果。
實施例4圖10顯示了驅動音源編碼單元37的內部的結構圖。圖中,與圖5相同的標記表示相同或相當的部分,引起省略對其的說明。
52是根據編碼對象信號以及輸入語音的噪聲性程度來改變加權值的估測加權決定單元。
接著,就其操作進行說明。
但是,由于除了添加了估測加權決定單元52這一點之外都與上述實施例1相同,因此僅對不同點進行說明。
估測加權決定單元52分析編碼對象信號以及輸入語音,分別決定從第1失真計算單元43以及第2失真計算單元47輸出的臨時合成音與編碼對象信號的距離所乘的加權值,并將這些加權值分別輸出到第1加權單元44和第2加權單元48。
這里,臨時合成音與編碼對象信號的距離所乘的加權值是根據編碼對象信號以及輸入語音的噪聲性的程度而決定的,但是,在編碼對象信號和輸入語音中兩個的噪聲性的程度都大的情況下,針對噪聲性程度大的第1驅動音源代碼簿41的加權值變小,針對噪聲性程度小的第2驅動音源代碼簿45的加權值變大。
在編碼對象信號或輸入信號中只有一方的噪聲性程度大的情況下,針對第1驅動音源代碼簿41的加權值稍微變小,針對第2驅動音源代碼簿45的加權值稍微變大。
即,根據編碼對象信號以及輸入語音的噪聲性程度,來控制噪聲性程度大的(噪聲性的)時間序列向量的選擇容易度。
由此,減輕了像以往那樣的、由于編碼對象信號或輸入語音在噪聲性區(qū)間多選擇非噪聲性的(脈沖的)時間序列向量而引起的所謂變?yōu)槊}沖樣的音質的惡化。通過同時使用編碼對象信號和輸入語音來控制加權值,與僅僅使用其中任何一方的情況相比,處理變復雜了,但是可以進行更高的加權值控制,品質改善效果更高。
實施例5圖11是顯示驅動音源編碼單34的內部的結構圖。圖中,由于與圖5相同的標記表示相同或相當的部分,因此省略對其的說明。
53是存儲多個時間序列向量(驅動碼向量)的第1驅動音源代碼簿,第1驅動音源代碼簿53中存儲了少量的時間序列向量。54是第1加權單元,用于使根據第1驅動音源代碼簿53中存儲的時間序列向量的個數所設定的加權值乘以第1失真計算單元43的計算結果。55是存儲多個時間序列向量(驅動碼向量)的第2驅動音源代碼簿,第2驅動音源代碼簿55中存儲了多個時間序列向量。56是第2加權單元,用于使根據第2驅動音源代碼簿55中存儲的時間序列向量的個數所設定的加權值乘以第2失真計算單元47的計算結果。
接下來,將就其操作進行說明。
但是,由于除了驅動音源編碼單元34之外,其他都與上述實施例1相同,因此僅僅對不同點進行說明。
第1加權單元54使根據第1驅動音源代碼簿53中存儲的時間序列向量的個數所設定的加權值乘以第1失真計算單元43的計算結果。
第2加權單元56使根據第2驅動單元代碼簿55中存儲的時間序列向量的個數所設定的加權值乘以第2失真計算單元47的計算結果。
具體而言,第1加權單元54以及第2加權單元56使用的加權值,是根據它們分別對應的驅動音源代碼簿53、55存儲的時間序列向量的個數而預先設定的。
例如,在時間序列向量的個數少的情況下,加權值變小,在時間序列向量個數多個情況下,加權值變大。
即,對應于時間序列向量的存儲數少的第1驅動音源代碼簿53的第1加權單元54中,將加權值設定為小,對應于時間序列向量的存儲數多的第2驅動音源代碼簿55的第2加權單元56中,將加權值設定為大。
由此,與以往那種不執(zhí)行加權的情況相比,更容易選擇時間序列向量個數少的第1驅動音源代碼簿53,能夠不受硬件規(guī)模或性能的影響來調整選擇各驅動音源代碼簿的比例。由此,起到能夠得到主觀上品質高的語音碼的效果。
實施例6盡管在上述實施例1~5中準備了2個驅動音源代碼簿,但是也可以準備3個以上的驅動音源代碼簿來構成驅動音源編碼單元34、37。
在上述實施例1~5中,明確顯示了具有多個驅動音源代碼簿的情況,但是,也可以將單獨一個驅動音源代碼簿中存儲的時間序列向量根據其形態(tài)分割為多個部分集合,將各個部分集合看作是單獨的驅動音源代碼簿,并為每個部分集合設定不同的加權值。
盡管在上述實施例1~5中表現的是使用預先存儲時間序列向量的驅動音源代碼簿的情況,但也可以不使用驅動音源代碼簿,而使用例如是自適應產生音頻周期的脈沖串的脈沖發(fā)生器。
盡管在上述實施例1~5中表現的是通過乘以加權值而對編碼失真進行加權的,但也可以通過將加權值加到編碼失真上來進行加權。再有,不僅通過對編碼失真進行線性運算而進行加權,也可以通過非線性運算進行加權。
在上述實施例1~5中,是對存儲在多個驅動音源代碼簿中的時間序列向量的編碼失真進行加權估測,并選擇存儲了加權后的編碼失真最小的時間序列向量的驅動音源代碼簿,但是,也可將其擴大使用到由自適應音源編碼單元33、驅動音源編碼單元34以及增益編碼單元35構成的音源信息編碼單元中,可以是這樣一種結構具有多個音源信息編碼單元,對各音源信息編碼單元生成的音源信號的編碼失真進行加權估測,選擇生成加權后的編碼失真為最小的音源信號的音源信號編碼單元。
再有,上述多個音源信息編碼單元的至少一個僅僅由驅動音源編碼單元34和增益編碼單元35構成等,音源信息編碼單元的內部結構不同的結構也是可能的。
如上所述,根據本發(fā)明的語音編碼裝置以及語音編碼方法,適于在將數字語音信號壓縮為少信息量的同時,高效率地利用多個驅動音源代碼簿而得到主觀上品質高的語音碼。
權利要求
1.一種語音編碼裝置,具有包絡信息編碼單元、音源信息編碼單元以及多路復用單元;其中,所述包絡信息編碼單元,用于提取輸入語音的頻譜包絡信息,并對該頻譜包絡信息進行編碼;所述音頻信息編碼單元,使用由上述包絡信息編碼單元提取的頻譜包絡信息,選擇生成與輸入語音距離最小的合成音的自適應音源碼、驅動音源碼以及增益碼;多路復用單元,用于對由上述包絡信息編碼單元編碼后的頻譜包絡信息和由上述音源信息編碼單元選擇的自適應音源碼、驅動音源碼以及增益碼進行多路復用并輸出語音碼,其特征在于在上述音源信息編碼單元選擇驅動音源碼時,計算噪聲性的驅動碼向量的編碼失真,乘以與噪聲性的程度相應的固定的加權值,另一方面,計算非噪聲性的驅動碼向量的編碼失真,并乘以與噪聲性的程度相應的固定的加權值,并選擇與值小的乘積有關的驅動音源碼。
2.如權利要求1所述的語音編碼裝置,其特征在于音源信息編碼單元使用噪聲性程度不同的噪聲性驅動碼向量以及非噪聲性驅動碼向量。
3.如權利要求1所述的語音編碼裝置,其特征在于音源信息編碼裝置根據編碼對象信號的噪聲性的程度來改變加權值。
4.如權利要求2所述的語音編碼裝置,其特征在于音源信息編碼單元根據編碼對象信號的噪聲性的程度來改變加權值。
5.如權利要求1所述的語音編碼裝置,其特征在于音源信息編碼單元根據輸入語音的噪聲性的程度來改變加權值。
6.如權利要求2所述的語音編碼裝置,其特征在于音源信息編碼單元根據輸入語音的噪聲性的程度來改變加權值。
7.如權利要求1所述的語音編碼裝置,其特征在于音源信息編碼單元根據編碼對象信號和輸入語音的噪聲性的程度來改變加權值。
8.如權利要求2所述的語音編碼裝置,其特征在于音源信息編碼單元根據編碼對象信號以及輸入語音的噪聲性的程度來改變加權值。
9.一種語音編碼裝置,具有包絡信息編碼單元、音源信息編碼單元以及多路復用單元;其中,所述包絡信息編碼單元,用于提取輸入語音的頻譜包絡信息,并對該頻譜包絡信息進行編碼;所述音頻信息編碼單元,使用由上述包絡信息編碼單元提取的頻譜包絡信息,選擇生成與輸入語音距離最小的合成音的自適應音源碼、驅動音源碼以及增益碼;多路復用單元,用于對由上述包絡信息編碼單元編碼后的頻譜包絡信息和由上述音源信息編碼單元選擇的自適應音源碼、驅動音源碼以及增益碼進行多路復用并輸出語音碼,其特征在于所述音源信息編碼單元考慮針對驅動音源代碼簿的驅動碼向量的存儲數來決定加權值。
10.一種語音編碼方法,提取輸入語音的頻譜包絡信息,并對該頻譜包絡信息進行編碼時,使用該頻譜包絡信息,選擇生成與輸入語音距離最小的合成音的自適應音源碼、驅動音源碼以及增益碼,對頻譜包絡信息、自適應音源碼、驅動音源碼以及增益碼進行多路復用并輸出語音碼,其特征在于在選擇該驅動音源碼時,計算噪聲性的驅動碼向量的編碼失真,并乘以與噪聲性程度相應的固定的加權值,另一方面,計算非噪聲性的驅動碼向量的編碼失真,并乘以與非噪聲性的程度相應的固定的加權值,并選擇與值小的乘積有關的驅動音源碼。
11.如權利要求10所述的語音編碼方法,其特征在于使用噪聲性的程度不同的噪聲性的驅動碼向量以及非噪聲性的驅動碼向量。
12.如權利要求10所述的語音編碼方法,其特征在于根據編碼對象信號的噪聲性的程度來改變加權值。
13.如權利要求11所述的語音編碼方法,其特征在于根據編碼對象信號的噪聲性的程度來改變加權值。
14.如權利要求10所述的語音編碼方法,其特征在于根據輸入語音的噪聲性的程度來改變加權值。
15.如權利要求11所述的語音編碼方法,其特征在于根據輸入語音的噪聲性的程度來改變加權值。
16.如權利要求10所述的語音編碼方法,其特征在于根據編碼對象信號和輸入語音的噪聲性的程度來改變加權值。
17.如權利要求11所述的語音編碼方法,其特征在于根據編碼對象信號以及輸入語音的噪聲性的程度來改變加權值。
18.一種語音編碼方法,提取輸入語音的頻譜包絡信息,并對該頻譜包絡信息進行編碼時,使用該頻譜包絡信息,選擇生成與輸入語音距離最小的合成音的自適應音源碼、驅動音源碼以及增益碼,對該頻譜包絡信息、自適應音源碼、驅動音源碼以及增益碼進行多路復用而輸出語音碼,其特征在于考慮針對驅動音源代碼簿的驅動碼向量的存儲數決定加權值。
全文摘要
計算噪聲性的驅動碼向量的編碼失真,并乘以與噪聲性的程度相應的固定的加權值,另一方面,計算非噪聲性的驅動碼向量的編碼失真,并乘以與噪聲性的程度相應的固定的加權值,選擇與值小的乘積有關的驅動音源碼。
文檔編號G10L19/12GK1483189SQ01821322
公開日2004年3月17日 申請日期2001年4月26日 優(yōu)先權日2000年12月26日
發(fā)明者山浦正, 田崎裕久, 久 申請人:三菱電機株式會社