本發(fā)明涉及信號處理領(lǐng)域,并且具體地,涉及信號編碼方法及設(shè)備。
背景技術(shù):
非連續(xù)傳輸系統(tǒng)(Discontinuous Transmission,DTX)是一種被廣泛應(yīng)用的語音通信系統(tǒng),能夠在語音通信的靜音期間采用非連續(xù)的編碼和傳輸語音幀的方式減少信道帶寬的占用,同時仍能夠保證足夠的主觀通話質(zhì)量。
語音信號通常可以分為兩類,即活動語音信號和靜音信號?;顒诱Z音信號是指包含有通話語音的信號,而靜音信號則是指不含有通話語音的信號。在DTX系統(tǒng)中,對活動語音信號采用連續(xù)傳輸?shù)姆椒ㄟM行傳輸,對靜音信號采用非連續(xù)傳輸?shù)姆椒ㄟM行傳輸。這種對靜音信號的非連續(xù)傳輸,是通過編碼端間歇地編碼并發(fā)送一種叫靜音描述幀(Silence Descriptor,SID)的特殊編碼幀來實現(xiàn)的,兩個相鄰的SID幀之間DTX系統(tǒng)不會編碼任何其它的信號幀。解碼端根據(jù)非連續(xù)接收到的SID幀自主地生成令用戶主觀聽覺舒適的噪聲。這種舒適噪聲(Comfort Noise,CN)并非以如實的還原原始靜音信號為目的,而是為了滿足解碼端用戶的主觀聽覺質(zhì)量要求,不要有不適感。
為了在解碼端獲得更好的主觀聽覺質(zhì)量,由語音活動段到CN段的過渡質(zhì)量是至關(guān)重要的。為了獲得更平滑的過渡,一種有效的方法是:在由語音活動段過渡到靜音段時,編碼端不立即過渡到非連續(xù)傳輸狀態(tài),而是額外延遲一段時間。在這段時間內(nèi),靜音段開頭的部分靜音幀仍然被視作語音活動幀連續(xù)的編碼和發(fā)送,即設(shè)置一個連續(xù)傳輸?shù)耐衔矃^(qū)間。這樣做的好處是解碼端可以充分地利用這段拖尾區(qū)間內(nèi)的靜音信號更好地估計和提取靜音信號的特征,以生成更優(yōu)的CN。
但是,在現(xiàn)有技術(shù)中沒有對拖尾機制進行高效的控制。拖尾機制的觸發(fā)條件是比較簡單的,即通過簡單地統(tǒng)計在語音活動結(jié)束時是否有足夠數(shù)量的語音活動幀被連續(xù)地編碼和發(fā)送來確定是否觸發(fā)拖尾機制,而觸發(fā)拖尾機制后,固定長度的拖尾區(qū)間就會被強制執(zhí)行。然而,并非有足夠數(shù)量的語音活動幀被連續(xù)地編碼和發(fā)送就一定需要執(zhí)行固定長度的拖尾區(qū)間,例如在通信環(huán)境的背景噪聲比較平穩(wěn)時,即使不設(shè)置拖尾區(qū)間或設(shè)置較短的拖尾區(qū)間,解碼端也能獲得優(yōu)質(zhì)的CN。因此,這種對拖尾機制的簡單控制模式造成了通信帶寬的浪費。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供信號編碼方法及設(shè)備,能夠節(jié)省通信帶寬。
第一方面,提供了一種信號編碼方法,包括:在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在所述當前輸入幀被編碼為靜音描述SID幀的情況下解碼器根據(jù)所述當前輸入幀生成的舒適噪聲,并確定實際靜音信號,其中所述當前輸入幀為靜音幀;確定所述舒適噪聲與所述實際靜音信號的偏離程度;根據(jù)所述偏離程度,確定所述當前輸入幀的編碼方式,所述當前輸入幀的編碼方式包括拖尾幀編碼方式或SID幀編碼方式;根據(jù)所述當前輸入幀的編碼方式,對所述當前輸入幀進行編碼。
結(jié)合第一方面,在第一種可能的實現(xiàn)方式中,所述預(yù)測在所述當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)所述當前輸入幀生成的舒適噪聲,并確定實際靜音信號,包括:預(yù)測所述舒適噪聲的特征參數(shù),并確定所述實際靜音信號的特征參數(shù),其中所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)是一一對應(yīng)的;
所述確定所述舒適噪聲與所述實際靜音信號的偏離程度,包括:確定所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離。
結(jié)合第一方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述根據(jù)所述偏離程度,確定所述當前輸入幀的編碼方式,包括:在所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離小于閾值集合中對應(yīng)閾值的情況下,確定所述當前輸入幀的編碼方式為所述SID幀編碼方式,其中所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離與所述閾值集合中的閾值是一一對應(yīng)的;在所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離大于或等于所述閾值集合中對應(yīng)閾值的情況下,確定所述當前輸入幀的編碼方式為所述拖尾幀編碼方式。
結(jié)合第一方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述舒適噪聲的特征參數(shù)用于表征以下至少一種信息:能量信息,譜信息。
結(jié)合第一方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述能量信息包括碼激勵線性預(yù)測CELP激勵能量;
所述譜信息包括以下至少一種:線性預(yù)測濾波器系數(shù),快速傅立葉變換FFT系數(shù),修正離散余弦變換MDCT系數(shù);
所述線性預(yù)測濾波器系數(shù)包括以下至少一種:線譜頻率LSF系數(shù),線譜對LSP系數(shù),導(dǎo)抗譜頻率ISF系數(shù),導(dǎo)譜對ISP系數(shù),反射系數(shù),線性預(yù)測編碼LPC系數(shù)。
結(jié)合第一方面的第一種可能的實現(xiàn)方式至第四種可能的實現(xiàn)方式中任一實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述預(yù)測所述舒適噪聲的特征參數(shù),包括:根據(jù)所述當前輸入幀的前一幀的舒適噪聲參數(shù)和所述當前輸入幀的特征參數(shù),預(yù)測所述舒適噪聲的特征參數(shù);或者,根據(jù)所述當前輸入幀之前的L個拖尾幀的特征參數(shù)和所述當前輸入幀的特征參數(shù),預(yù)測所述舒適噪聲的特征參數(shù),其中L為正整數(shù)。
結(jié)合第一方面的第一種可能的實現(xiàn)方式至第五種可能的實現(xiàn)方式中任一實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,所述確定所述實際靜音信號的特征參數(shù),包括:確定所述當前輸入幀的特征參數(shù)作為所述實際靜音信號的特征參數(shù);或者,對M個靜音幀的特征參數(shù)進行統(tǒng)計處理,以確定所述實際靜音信號的特征參數(shù)。
結(jié)合第一方面的第六種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,所述M個靜音幀包括所述當前輸入幀以及所述當前輸入幀之前的(M-1)個靜音幀,M為正整數(shù)。
結(jié)合第一方面的第二種可能的實現(xiàn)方式,在第八種可能的實現(xiàn)方式中,所述舒適噪聲的特征參數(shù)包括所述舒適噪聲的碼激勵線性預(yù)測CELP激勵能量和所述舒適噪聲的線譜頻率LSF系數(shù),所述實際靜音信號的特征參數(shù)包括所述實際靜音信號的CELP激勵能量和所述實際靜音信號的LSF系數(shù);
所述確定所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離,包括:確定所述舒適噪聲的CELP激勵能量與所述實際靜音信號的CELP激勵能量之間的距離De,并確定所述舒適噪聲的LSF系數(shù)與所述實際靜音信號的LSF系數(shù)之間的距離Dlsf。
結(jié)合第一方面的第八種可能的實現(xiàn)方式,在第九種可能的實現(xiàn)方式中,所述在所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離小于閾值集合中對應(yīng)閾值的情況下,確定所述當前輸入幀的編碼方式為所述SID幀編碼方式,包括:在所述距離De小于第一閾值,且所述距離Dlsf小于第二閾值的情況下,確定所述當前輸入幀的編碼方式為所述SID幀編碼方式;
所述在所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離大于或等于所述閾值集合中對應(yīng)閾值的情況下,確定所述當前輸入幀的編碼方式為所述拖尾幀編碼方式,包括:在所述距離De大于或等于第一閾值,或者所述距離Dlsf大于或等于第二閾值的情況下,確定所述當前輸入幀的編碼方式為所述拖尾幀編碼方式。
結(jié)合第一方面的第九種可能的實現(xiàn)方式,在第十種可能的實現(xiàn)方式中,還包括:獲取預(yù)設(shè)的所述第一閾值和預(yù)設(shè)的所述第二閾值;或者,根據(jù)所述當前輸入幀之前的N個靜音幀的CELP激勵能量確定所述第一閾值,并根據(jù)所述N個靜音幀的LSF系數(shù)確定所述第二閾值,其中N為正整數(shù)。
結(jié)合第一方面或第一方面的第一種可能的實現(xiàn)方式至第十種可能的實現(xiàn)方式中任一實現(xiàn)方式,在第十一種可能的實現(xiàn)方式中,所述預(yù)測在所述當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)所述當前輸入幀生成的舒適噪聲,包括:采用第一預(yù)測方式,預(yù)測所述舒適噪聲,其中所述第一預(yù)測方式與所述解碼器生成所述舒適噪聲的方式相同。
第二方面,提供了一種信號處理方法,包括:確定P個靜音幀中每個靜音幀的組加權(quán)譜距離,其中所述P個靜音幀中每個靜音幀的組加權(quán)譜距離為所述P個靜音幀中所述每個靜音幀與其它(P-1)個靜音幀之間的加權(quán)譜距離之和,P為正整數(shù);根據(jù)所述P個靜音幀中每個靜音幀的組加權(quán)譜距離,確定第一譜參數(shù),其中所述第一譜參數(shù)用于生成舒適噪聲。
結(jié)合第二方面,在第一種可能的實現(xiàn)方式中,所述每個靜音幀與一組加權(quán)系數(shù)相對應(yīng),其中在所述一組加權(quán)系數(shù)中,對應(yīng)于第一組子帶的加權(quán)系數(shù)大于對應(yīng)于第二組子帶的加權(quán)系數(shù),其中所述第一組子帶的感知重要性大于所述第二組子帶的感知重要性。
結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述根據(jù)所述P個靜音幀中每個靜音幀的組加權(quán)譜距離,確定第一譜參數(shù),包括:從所述P個靜音幀中選擇第一靜音幀,使得在所述P個靜音幀中所述第一靜音幀的組加權(quán)譜距離最?。粚⑺龅谝混o音幀的譜參數(shù)確定為所述第一譜參數(shù)。
結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述根據(jù)所述P個靜音幀中每個靜音幀的組加權(quán)譜距離,確定第一譜參數(shù),包括:從所述P個靜音幀中選擇至少一個靜音幀,使得在所述P個靜音幀中所述至少一個靜音幀的組加權(quán)譜距離均小于第三閾值;根據(jù)所述至少一個靜音幀的譜參數(shù),確定所述第一譜參數(shù)。
結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式至第三種可能的實現(xiàn)方式中任一實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述P個靜音幀包括所述當前輸入靜音幀以及所述當前輸入靜音幀之前的(P-1)個靜音幀。
結(jié)合第二方面的第四種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,還包括:將當前輸入靜音幀編碼為靜音描述SID幀,其中所述SID幀包括所述第一譜參數(shù)。
第三方面,提供了一種信號處理方法,包括:將輸入信號的頻帶劃分為R個子帶,其中R為正整數(shù);在所述R個子帶中的每個子帶上,確定S個靜音幀中每個靜音幀的子帶組譜距離,所述S個靜音幀中每個靜音幀的子帶組譜距離為在所述每個子帶上所述S個靜音幀中所述每個靜音幀與其它(S-1)個靜音幀之間的譜距離之和,S為正整數(shù);在所述每個子帶上根據(jù)所述S個靜音幀中每個靜音幀的子帶組譜距離,確定所述每個子帶的第一譜參數(shù),其中所述每個子帶的第一譜參數(shù)用于生成舒適噪聲。
結(jié)合第三方面,在第一種可能的實現(xiàn)方式中,所述在所述每個子帶上,根據(jù)所述S個靜音幀中每個靜音幀的子帶組譜距離,確定所述每個子帶的第一譜參數(shù),包括:在所述每個子帶上,從所述S個靜音幀中選擇第一靜音幀,使得在所述每個子帶上所述S個靜音幀中所述第一靜音幀的子帶組譜距離最小;在所述每個子帶上,將所述第一靜音幀的譜參數(shù)確定為所述每個子帶的第一譜參數(shù)。
結(jié)合第三方面,在第二種可能的實現(xiàn)方式中,所述在所述每個子帶上,根據(jù)所述S個靜音幀中每個靜音幀的子帶組譜距離,確定所述每個子帶的第一譜參數(shù),包括:在所述每個子帶上,從所述S個靜音幀中選擇至少一個靜音幀,使得所述至少一個靜音幀的子帶組譜距離均小于第四閾值;在所述每個子帶上,根據(jù)所述至少一個靜音幀的譜參數(shù),確定所述每個子帶的第一譜參數(shù)。
結(jié)合第三方面或第三方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述S個靜音幀包括當前輸入靜音幀以及所述當前輸入靜音幀之前的(S-1)個靜音幀。
結(jié)合第三方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,還包括:將所述當前輸入靜音幀編碼為靜音描述SID幀,其中所述SID幀包括所述每個子帶的第一譜參數(shù)。
第四方面,提供了一種信號處理方法,包括:確定T個靜音幀中每個靜音幀的第一參數(shù),所述第一參數(shù)用于表征譜熵,T為正整數(shù);根據(jù)所述T個靜音幀中每個靜音幀的第一參數(shù),確定第一譜參數(shù),其中所述第一譜參數(shù)用于生成舒適噪聲。
結(jié)合第四方面,在第一種可能的實現(xiàn)方式中,所述根據(jù)所述T個靜音幀中每個靜音幀的第一參數(shù),確定第一譜參數(shù),包括:在確定能夠按照聚類準則將所述T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,根據(jù)所述第一組靜音幀的譜參數(shù),確定所述第一譜參數(shù),其中所述第一組靜音幀的第一參數(shù)所表征的譜熵均大于所述第二組靜音幀的第一參數(shù)所表征的譜熵;在確定不能夠按照聚類準則將所述T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,對所述T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定所述第一譜參數(shù),其中所述第一組靜音幀的第一參數(shù)所表征的譜熵均大于所述第二組靜音幀的第一參數(shù)所表征的譜熵。
結(jié)合第四方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述聚類準則包括:所述第一組靜音幀中每個靜音幀的第一參數(shù)與第一均值之間的距離小于或等于所述第一組靜音幀中每個靜音幀的第一參數(shù)與第二均值之間的距離;所述第二組靜音幀中每個靜音幀的第一參數(shù)與所述第二均值之間的距離小于或等于所述第二組靜音幀中每個靜音幀的第一參數(shù)與所述第一均值之間的距離;所述第一均值與所述第二均值之間的距離大于所述第一組靜音幀的第一參數(shù)與所述第一均值之間的平均距離;所述第一均值與所述第二均值之間的距離大于所述第二組靜音幀的第一參數(shù)與所述第二均值之間的平均距離;其中,所述第一均值為所述第一組靜音幀的第一參數(shù)的平均值,所述第二均值為所述第二組靜音幀的第一參數(shù)的平均值。
結(jié)合第四方面,在第三種可能的實現(xiàn)方式中,所述根據(jù)所述T個靜音幀中每個靜音幀的第一參數(shù),確定第一譜參數(shù),包括:
對所述T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定所述第一譜參數(shù);其中,對于所述T個靜音幀中任意不同的第i個靜音幀和第j個靜音幀,所述第i個靜音幀對應(yīng)的加權(quán)系數(shù)大于或等于所述j個靜音幀對應(yīng)的加權(quán)系數(shù);在所述第一參數(shù)與所述譜熵正相關(guān)時,所述第i個靜音幀的第一參數(shù)大于所述第j個靜音幀的第一參數(shù);在所述第一參數(shù)與所述譜熵負相關(guān)時,所述第i個靜音幀的第一參數(shù)小于所述第j個靜音幀的第一參數(shù),i和j均為正整數(shù),且1≤i≤T,1≤j≤T。
結(jié)合第四方面或第四方面的第一種可能的實現(xiàn)方式至第三種可能的實現(xiàn)方式中任一實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述T個靜音幀包括當前輸入靜音幀以及所述當前輸入靜音幀之前的(T-1)個靜音幀
結(jié)合第四方面的第四種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,還包括:將所述當前輸入靜音幀編碼為靜音描述SID幀,其中所述SID幀包括所述第一譜參數(shù)。
第五方面,提供了一種信號編碼設(shè)備,包括:第一確定單元,用于在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在所述當前輸入幀被編碼為靜音描述SID幀的情況下解碼器根據(jù)所述當前輸入幀生成的舒適噪聲,并確定實際靜音信號,其中所述當前輸入幀為靜音幀;第二確定單元,用于確定所述第一確定單元確定的所述舒適噪聲與所述第一確定單元確定的所述實際靜音信號的偏離程度;第三確定單元,用于根據(jù)所述第二確定單元確定的所述偏離程度,確定所述當前輸入幀的編碼方式,所述當前輸入幀的編碼方式包括拖尾幀編碼方式或SID幀編碼方式;編碼單元,用于根據(jù)所述第三確定單元確定的所述當前輸入幀的編碼方式,對所述當前輸入幀進行編碼。
結(jié)合第五方面,在第一種可能的實現(xiàn)方式中,所述第一確定單元具體用于預(yù)測所述舒適噪聲的特征參數(shù),并確定所述實際靜音信號的特征參數(shù),其中所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)是一一對應(yīng)的;所述第二確定單元具體用于確定所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離。
結(jié)合第五方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述第三確定單元具體用于:在所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離小于閾值集合中對應(yīng)閾值的情況下,確定所述當前輸入幀的編碼方式為所述SID幀編碼方式,其中所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離與所述閾值集合中的閾值是一一對應(yīng)的;在所述舒適噪聲的特征參數(shù)與所述實際靜音信號的特征參數(shù)之間的距離大于或等于所述閾值集合中對應(yīng)閾值的情況下,確定所述當前輸入幀的編碼方式為所述拖尾幀編碼方式。
結(jié)合第五方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述第一確定單元具體用于:根據(jù)所述當前輸入幀的前一幀的舒適噪聲參數(shù)和所述當前輸入幀的特征參數(shù),預(yù)測所述舒適噪聲的特征參數(shù);或者,根據(jù)所述當前輸入幀之前的L個拖尾幀的特征參數(shù)和所述當前輸入幀的特征參數(shù),預(yù)測所述舒適噪聲的特征參數(shù),其中L為正整數(shù)。
結(jié)合第五方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式或第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述第一確定單元具體用于:確定所述當前輸入幀的特征參數(shù)作為所述實際靜音信號的參數(shù);或者,對M個靜音幀的特征參數(shù)進行統(tǒng)計處理,以確定所述實際靜音信號的參數(shù)。
結(jié)合第五方面的第二種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述舒適噪聲的特征參數(shù)包括所述舒適噪聲的碼激勵線性預(yù)測CELP激勵能量和所述舒適噪聲的線譜頻率LSF系數(shù),所述實際靜音信號的特征參數(shù)包括所述實際靜音信號的CELP激勵能量和所述實際靜音信號的LSF系數(shù);所述第二確定單元具體用于確定所述舒適噪聲的CELP激勵能量與所述實際靜音信號的CELP激勵能量之間的距離De,并確定所述舒適噪聲的LSF系數(shù)與所述實際靜音信號的LSF系數(shù)之間的距離Dlsf。
結(jié)合第五方面的第五種可能的實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,所述第三確定單元具體用于在所述距離De小于第一閾值,且所述距離Dlsf小于第二閾值的情況下,確定所述當前輸入幀的編碼方式為所述SID幀編碼方式;所述第三確定單元具體用于在所述距離De大于或等于第一閾值,或者所述距離Dlsf大于或等于第二閾值的情況下,確定所述當前輸入幀的編碼方式為所述拖尾幀編碼方式。
結(jié)合第五方面的第六種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,還包括:第四確定單元,用于:獲取預(yù)設(shè)的所述第一閾值和預(yù)設(shè)的所述第二閾值;或者,根據(jù)所述當前輸入幀之前的N個靜音幀的CELP激勵能量確定所述第一閾值,并根據(jù)所述N個靜音幀的LSF系數(shù)確定所述第二閾值,其中N為正整數(shù)。
結(jié)合第五方面或第五方面的第一種可能的實現(xiàn)方式至第七種可能的實現(xiàn)方式中任一實現(xiàn)方式,在第八種可能的實現(xiàn)方式中,所述第一確定單元具體用于采用第一預(yù)測方式,預(yù)測所述舒適噪聲,其中所述第一預(yù)測方式與所述解碼器生成所述舒適噪聲的方式相同。
第六方面,提供了一種信號處理設(shè)備,包括:第一確定單元,用于確定P個靜音幀中每個靜音幀的組加權(quán)譜距離,其中所述P個靜音幀中每個靜音幀的組加權(quán)譜距離為所述P個靜音幀中所述每個靜音幀與其它(P-1)個靜音幀之間的加權(quán)譜距離之和,P為正整數(shù);第二確定單元,用于根據(jù)所述第一確定單元確定的所述P個靜音幀中每個靜音幀的組加權(quán)譜距離,確定第一譜參數(shù),所述第一譜參數(shù)用于生成舒適噪聲。
結(jié)合第六方面,在第一種可能的實現(xiàn)方式中,所述第二確定單元具體用于:從所述P個靜音幀中選擇第一靜音幀,使得在所述P個靜音幀中所述第一靜音幀的組加權(quán)譜距離最?。粚⑺龅谝混o音幀的譜參數(shù)確定為所述第一譜參數(shù)。
結(jié)合第六方面,在第二種可能的實現(xiàn)方式中,所述第二確定單元具體用于:從所述P個靜音幀中選擇至少一個靜音幀,使得在所述P個靜音幀中所述至少一個靜音幀的組加權(quán)譜距離均小于第三閾值;根據(jù)所述至少一個靜音幀的譜參數(shù),確定所述第一譜參數(shù)。
結(jié)合第六方面或第六方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述P個靜音幀包括所述當前輸入靜音幀以及所述當前輸入靜音幀之前的(P-1)個靜音幀;
所述設(shè)備還包括:編碼單元,用于將當前輸入靜音幀編碼為靜音描述SID幀,其中所述SID幀包括所述第二確定單元確定的所述第一譜參數(shù)。
第七方面,提供了一種信號處理設(shè)備,包括:劃分單元,用于將輸入信號的頻帶劃分為R個子帶,其中R為正整數(shù);第一確定單元,用于在所述劃分單元劃分的所述R個子帶中每個子帶上,確定S個靜音幀中每個靜音幀的子帶組譜距離,所述S個靜音幀中每個靜音幀的子帶組譜距離為在所述每個子帶上所述S個靜音幀中所述每個靜音幀與其它(S-1)個靜音幀之間的譜距離之和,S為正整數(shù);第二確定單元,用于在所述劃分單元劃分的所述每個子帶上根據(jù)所述第一確定單元確定的S個靜音幀中每個靜音幀的子帶組譜距離,確定所述每個子帶的第一譜參數(shù),其中所述每個子帶的第一譜參數(shù)用于生成舒適噪聲。
結(jié)合第七方面,在第一種可能的實現(xiàn)方式中,所述第二確定單元具體用于:在所述每個子帶上,從所述S個靜音幀中選擇第一靜音幀,使得在所述每個子帶上的所述S個靜音幀中所述第一靜音幀的子帶組譜距離最??;在所述每個子帶上,將所述第一靜音幀的譜參數(shù)確定為所述每個子帶的第一譜參數(shù)。
結(jié)合第七方面,在第二種可能的實現(xiàn)方式中,所述第二確定單元具體用于:在所述每個子帶上,從所述S個靜音幀中選擇至少一個靜音幀,使得所述至少一個靜音幀的子帶組譜距離均小于第四閾值;在所述每個子帶上,根據(jù)所述至少一個靜音幀的譜參數(shù),確定所述每個子帶的第一譜參數(shù)。
結(jié)合第七方面或第七方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述S個靜音幀包括當前輸入靜音幀以及所述當前輸入靜音幀之前的(S-1)個靜音幀;
所述設(shè)備還包括:編碼單元,用于將所述當前輸入靜音幀編碼為靜音描述SID幀,其中所述SID幀包括所述每個子帶的譜參數(shù)。
第八方面,提供了一種信號處理設(shè)備,包括:第一確定單元,用于確定T個靜音幀中每個靜音幀的第一參數(shù),所述第一參數(shù)用于表征譜熵,T為正整數(shù);第二確定單元,用于根據(jù)所述第一確定單元確定的所述T個靜音幀中每個靜音幀的第一參數(shù),確定第一譜參數(shù),其中所述第一譜參數(shù)用于生成舒適噪聲。
結(jié)合第八方面,在第一種可能的實現(xiàn)方式中,所述第二確定單元具體用于:在確定能夠按照聚類準則將所述T個靜音幀分為所述第一組靜音幀和所述第二組靜音幀的情況下,根據(jù)所述第一組靜音幀的譜參數(shù),確定所述第一譜參數(shù),其中所述第一組靜音幀的第一參數(shù)所表征的譜熵均大于所述第二組靜音幀的第一參數(shù)所表征的譜熵;在確定不能夠按照聚類準則將所述T個靜音幀分為所述第一組靜音幀和所述第二組靜音幀的情況下,對所述T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定所述第一譜參數(shù),其中所述第一組靜音幀的第一參數(shù)所表征的譜熵均大于所述第二組靜音幀的第一參數(shù)所表征的譜熵。
結(jié)合第八方面,在第二種可能的實現(xiàn)方式中,所述第二確定單元具體用于:對所述T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定所述第一譜參數(shù);
其中,對于所述T個靜音幀中任意不同的第i個靜音幀和第j個靜音幀,所述第i個靜音幀對應(yīng)的加權(quán)系數(shù)大于或等于所述j個靜音幀對應(yīng)的加權(quán)系數(shù);在所述第一參數(shù)與所述譜熵正相關(guān)時,所述第i個靜音幀的第一參數(shù)大于所述第j個靜音幀的第一參數(shù);在所述第一參數(shù)與所述譜熵負相關(guān)時,所述第i個靜音幀的第一參數(shù)小于所述第j個靜音幀的第一參數(shù),i和j均為正整數(shù),且1≤i≤T,1≤j≤T。
結(jié)合第八方面或第八方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述T個靜音幀包括當前輸入靜音幀以及所述當前輸入靜音幀之前的(T-1)個靜音幀;
所述設(shè)備還包括:編碼單元,用于將所述當前輸入靜音幀編碼為靜音描述SID幀,其中所述SID幀包括所述第一譜參數(shù)。
本發(fā)明實施例中,通過在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲,并確定舒適噪聲與實際靜音信號的偏離程度,根據(jù)該偏離程度確定當前輸入幀的編碼方式為拖尾幀編碼方式或SID幀編碼方式,而非簡單地根據(jù)統(tǒng)計得到的語音活動幀的數(shù)量將當前輸入幀編碼為拖尾幀,從而能夠節(jié)省通信帶寬。
附圖說明
為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對本發(fā)明實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面所描述的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是根據(jù)本發(fā)明一個實施例的語音通信系統(tǒng)的示意框圖。
圖2是根據(jù)本發(fā)明實施例的信號編碼方法的示意性流程圖。
圖3a是根據(jù)本發(fā)明一個實施例的信號編碼方法的過程的示意性流程圖。
圖3b是根據(jù)本發(fā)明另一實施例的信號編碼方法的過程的示意性流程圖。
圖4是根據(jù)本發(fā)明一個實施例的信號處理方法的示意性流程圖。
圖5是根據(jù)本發(fā)明另一實施例的信號處理方法的示意性流程圖。
圖6是根據(jù)本發(fā)明另一實施例的信號處理方法的示意性流程圖。
圖7是根據(jù)本發(fā)明一個實施例的信號編碼設(shè)備的示意框圖。
圖8是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。
圖9是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。
圖10是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。
圖11是根據(jù)本發(fā)明另一實施例的信號編碼設(shè)備的示意框圖。
圖12是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。
圖13是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。
圖14是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明的一部分實施例,而不是全部實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都應(yīng)屬于本發(fā)明保護的范圍。
圖1是根據(jù)本發(fā)明一個實施例的語音通信系統(tǒng)的示意框圖。
圖1的系統(tǒng)100可以是DTX系統(tǒng)。系統(tǒng)100可以包括編碼器110和解碼器120。
編碼器110可以將輸入的時域語音信號截斷為語音幀,并對語音幀進行編碼,然后將編碼后的語音幀發(fā)送給解碼器120。解碼器120可以從編碼器110接收編碼后的語音幀,并對編碼后的語音幀進行解碼,然后輸出解碼后的時域語音信號。
編碼器110還可以包括語音活動性檢測器(Voice Activity Detector,VAD)110a。VAD 110a可以檢測當前輸入語音幀為語音活動幀還是靜音幀。其中,語音活動幀可以表示含有通話語音信號的幀,靜音幀可以表示不含有通話語音信號的幀。此處,靜音幀可以包括能量低于靜音門限的無聲幀,也可以包括背景噪聲幀。編碼器110可以有兩種工作狀態(tài),即連續(xù)傳輸狀態(tài)和非連續(xù)傳輸狀態(tài)。當編碼器110工作在連續(xù)傳輸狀態(tài)時,編碼器110可以對每個輸入語音幀均進行編碼并發(fā)送。當編碼器110工作在非連續(xù)傳輸狀態(tài)時,編碼器110可以不對輸入語音幀編碼,或者可以將其編碼為SID幀。通常,只有在輸入語音幀為靜音幀時,編碼器110才會工作在非連續(xù)傳輸狀態(tài)下。
如果當前輸入的靜音幀是語音活動段結(jié)束后的第一幀時,此處語音活動段包括可能存在的拖尾區(qū)間,那么編碼器110可以將該靜音幀編碼為SID幀,此處可以用SID_FIRST表示該SID幀。如果當前輸入的靜音幀為上一個SID幀之后的第n幀,此處n為正整數(shù),且與上一個SID幀之間沒有語音活動幀時,那么編碼器110可以將該靜音幀編碼為SID幀,此處可以用SID_UPDATE表示該SID幀。
SID幀可以包括一些描述靜音信號的特征的信息。解碼器根據(jù)這些特征信息能夠生成舒適噪聲。例如SID幀可以包括靜音信號的能量信息和譜信息。進一步地,例如,靜音信號的能量信息可以包括碼激勵線性預(yù)測(Code Excited Linear Prediction,CELP)模型中激勵信號的能量,或者靜音信號的時域能量。譜信息可以包括線譜頻率(Line Spectral Frequency,LSF)系數(shù)、線譜對(Line Spectrum Pair,LSP)系數(shù)、導(dǎo)抗譜頻率(Immittance Spectral Frequencies,ISF)系數(shù)、導(dǎo)譜對(Immittance Spectral Pairs,ISP)系數(shù)、線性預(yù)測編碼(Linear Predictive Coding,LPC)系數(shù)、快速傅立葉變換(Fast Fourier Transform,F(xiàn)FT)系數(shù)或修正離散余弦變換(Modified Discrete Cosine Transform,MDCT)系數(shù)等。
編碼后的語音幀可以包括三種類型:語音編碼幀、SID幀和NO_DATA幀。其中語音編碼幀為編碼器110在連續(xù)傳輸狀態(tài)下編碼的幀,NO_DATA幀可以表示沒有任何編碼比特的幀,即物理上并不存在的幀,如SID幀之間的未編碼靜音幀等。
解碼器120可以從編碼器110接收編碼后的語音幀,并對編碼后的語音幀進行解碼。當接收到語音編碼幀時,解碼器可以直接解碼該幀并輸出時域語音幀。當接收到SID幀時,解碼器可以解碼SID幀,并獲得SID幀中的拖尾長度、能量和譜信息。具體地,當SID幀為SID_UPDATE時,解碼器可以根據(jù)當前SID幀中的信息,或者根據(jù)當前SID幀中的信息并結(jié)合其它信息,獲得靜音信號的能量信息和譜信息,也就是獲得CN參數(shù),從而根據(jù)CN參數(shù)生成時域CN幀。當SID幀為SID_FIRST時,解碼器根據(jù)SID幀中的拖尾長度信息獲得該幀之前m幀中能量和譜的統(tǒng)計信息,并結(jié)合該SID幀中解碼得到的信息獲得CN參數(shù),從而生成時域CN幀,其中m為正整數(shù)。當解碼器的輸入為NO_DATA幀時,解碼器根據(jù)最近接收到的SID幀并結(jié)合其它信息,獲得CN參數(shù),從而生成時域CN幀。
圖2是根據(jù)本發(fā)明實施例的信號編碼方法的示意性流程圖。圖2的方法由編碼器執(zhí)行,例如可以由圖1中的編碼器110執(zhí)行。
210,在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲,并確定實際靜音信號,其中當前輸入幀為靜音幀。
本發(fā)明實施例中,實際靜音信號可以是指輸入編碼器的實際靜音信號。
220,確定舒適噪聲與實際靜音信號的偏離程度。
230,根據(jù)偏離程度,確定當前輸入幀的編碼方式,當前輸入幀的編碼方式包括拖尾幀編碼方式或SID幀編碼方式。
具體地,拖尾幀編碼方式可以是指連續(xù)編碼方式。編碼器可以以連續(xù)編碼方式對處于拖尾區(qū)間的靜音幀進行編碼,編碼得到的幀可以稱為拖尾幀。
240,根據(jù)當前輸入幀的編碼方式,對當前輸入幀進行編碼。
在步驟210中,編碼器可以根據(jù)不同的因素,確定以連續(xù)編碼方式對當前輸入幀的前一幀進行編碼,例如,如果編碼器中的VAD確定前一幀處于語音活動段或者編碼器確定前一幀處于拖尾區(qū)間,那么編碼器會以連續(xù)編碼方式對前一幀進行編碼。
由于輸入語音信號進入靜音段后,編碼器可以根據(jù)實際情況決定工作在連續(xù)傳輸狀態(tài)還是非連續(xù)傳輸狀態(tài)。因此對于作為靜音幀的當前輸入幀而言,編碼器需要確定如何編碼當前輸入幀。
當前輸入幀可以是輸入語音信號進入靜音段后的第一個靜音幀,也可以是輸入語音信號進入靜音段后的第n幀,此處n為大于1的正整數(shù)。
如果當前輸入幀為第一個靜音幀,那么在步驟230中,編碼器確定當前輸入幀的編碼方式也就是確定是否需要設(shè)置拖尾區(qū)間,如果需要設(shè)置拖尾區(qū)間,則編碼器可以將當前輸入幀編碼為拖尾幀;如果不需要設(shè)置拖尾區(qū)間,則編碼器可以將當前輸入幀編碼為SID幀。
如果當前輸入幀為第n個靜音幀且編碼器能夠確定當前輸入幀正處于拖尾區(qū)間,即當前輸入幀前面的靜音幀被連續(xù)地編碼,那么在步驟230中,編碼器確定當前輸入幀的編碼方式也就是確定是否結(jié)束拖尾區(qū)間。如果需要結(jié)束拖尾區(qū)間,則編碼器可以將當前輸入幀編碼為SID幀;如果需要繼續(xù)延長拖尾區(qū)間,則編碼器可以將當前輸入幀編碼為拖尾幀。
如果當前輸入幀為第n個靜音幀,并且也不存在拖尾機制,那么在步驟230中,編碼器需要確定當前輸入幀的編碼方式,使得解碼器對編碼后的當前輸入幀進行解碼能夠得到優(yōu)質(zhì)的舒適噪聲信號。
可見,本發(fā)明實施例既可以應(yīng)用于拖尾機制的觸發(fā)場景,也可以應(yīng)用于拖尾機制的執(zhí)行場景,還可以應(yīng)用于不存在拖尾機制的場景中。具體地,本發(fā)明實施例既可以確定是否觸發(fā)拖尾機制,也可以確定是否提前結(jié)束拖尾機制?;蛘邔τ诓淮嬖谕衔矙C制的場景,本發(fā)明實施例可以確定靜音幀的編碼方式從而達到更好的編碼效果和解碼效果。
具體地,編碼器可以假設(shè)當前輸入幀編碼為SID幀,如果解碼器接收到該SID幀,將根據(jù)SID幀生成舒適噪聲,而編碼器可以預(yù)測到該舒適噪聲。然后,編碼器可以估計該舒適噪聲與輸入編碼器的實際靜音信號的偏離程度。此處的偏離程度也可以理解為近似程度。如果預(yù)測到的舒適噪聲與實際靜音信號足夠接近,那么編碼器可以認為無需設(shè)置拖尾區(qū)間或者無需繼續(xù)延長拖尾區(qū)間。
在現(xiàn)有技術(shù)中,通過簡單地統(tǒng)計語音活動幀的數(shù)量來確定是否執(zhí)行固定長度的拖尾區(qū)間。也就是,如果有足夠數(shù)量的語音活動幀被連續(xù)編碼,那么就設(shè)置固定長度的拖尾區(qū)間。不論當前輸入幀為第一個靜音幀還是處于拖尾區(qū)間的第n個靜音幀,當前輸入幀均會被編碼為拖尾幀。然而,不必要的拖尾幀會造成通信帶寬的浪費。而本發(fā)明實施例中,通過根據(jù)預(yù)測的舒適噪聲與實際靜音信號的偏離程度確定當前輸入幀的編碼方式,而非簡單地依據(jù)語音活動幀的數(shù)量來確定當前輸入幀編碼為拖尾幀,因此能夠節(jié)省通信帶寬。
本發(fā)明實施例中,通過在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲,并確定舒適噪聲與實際靜音信號的偏離程度,根據(jù)該偏離程度確定當前輸入幀的編碼方式為拖尾幀編碼方式或SID幀編碼方式,而非簡單地根據(jù)統(tǒng)計得到的語音活動幀的數(shù)量將當前輸入幀編碼為拖尾幀,從而能夠節(jié)省通信帶寬。
可選地,作為一個實施例,在步驟210中,編碼器可以采用第一預(yù)測方式,預(yù)測舒適噪聲,其中第一預(yù)測方式與解碼器用于生成舒適噪聲的方式相同。
具體地,編碼器與解碼器可以采用相同的方式確定舒適噪聲?;蛘撸幋a器與解碼器也可以分別采用不同的方式確定舒適噪聲。本發(fā)明實施例對此不做限定。
可選地,作為一個實施例,在步驟210中,編碼器可以預(yù)測舒適噪聲的特征參數(shù),并確定實際靜音信號的特征參數(shù),其中舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)是一一對應(yīng)的。在步驟220中,編碼器可以確定舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離。
具體地,編碼器可以比較舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離,從而確定舒適噪聲與實際靜音信號的偏離程度。舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)應(yīng)當是一一對應(yīng)的。也就是說,舒適噪聲的特征參數(shù)的類型與實際靜音信號的特征參數(shù)的類型是相同的。例如,編碼器可以將舒適噪聲的能量參數(shù)與實際靜音信號的能量參數(shù)進行比較,也可以將舒適噪聲的譜參數(shù)與實際靜音信號的譜參數(shù)進行比較。
本發(fā)明實施例中,當特征參數(shù)為標量時,特征參數(shù)之間的距離可以指特征參數(shù)之間的差值的絕對值,即標量距離。當特征參數(shù)為矢量時,特征參數(shù)之間的距離可以是指特征參數(shù)之間對應(yīng)元素的標量距離的和。
可選地,作為另一實施例,在步驟230中,編碼器可以在舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離小于閾值集合中對應(yīng)閾值的情況下,確定當前輸入幀的編碼方式為SID幀編碼方式,其中舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離與閾值集合中的閾值是一一對應(yīng)的。編碼器也可以在舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離大于或等于閾值集合中對應(yīng)閾值的情況下,確定當前輸入幀的編碼方式為拖尾幀編碼方式。
具體地,舒適噪聲的特征參數(shù)和實際靜音信號的特征參數(shù)均可以包括至少一個參數(shù),因此,舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離也可以包括至少一種參數(shù)之間的距離。閾值集合也可以包括至少一個閾值。每種參數(shù)之間的距離可以對應(yīng)于一個閾值。在確定當前輸入幀的編碼方式時,編碼器可以分別將至少一種參數(shù)之間的距離與閾值集合中對應(yīng)的閾值進行比較。閾值集合中的至少一個閾值可以是預(yù)先設(shè)定的,也可以是由編碼器根據(jù)當前輸入幀之前的多個靜音幀的特征參數(shù)確定的。
如果舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離小于閾值集合中對應(yīng)閾值,編碼器可以認為舒適噪聲與實際靜音信號足夠接近,從而可以將當前輸入幀編碼為SID幀。如果舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離大于或等于閾值集合中對應(yīng)閾值,那么編碼器可以認為舒適噪聲與實際靜音信號偏離較大,從而可以將當前輸入幀編碼為拖尾幀。
可選地,作為另一實施例,上述舒適噪聲的特征參數(shù)可以用于表征以下至少一種信息:能量信息,譜信息。
可選地,作為另一實施例,上述能量信息可以包括CELP激勵能量。上述譜信息可以包括以下至少一種:線性預(yù)測濾波器系數(shù),F(xiàn)FT系數(shù),MDCT系數(shù)。線性預(yù)測濾波器系數(shù)可以包括以下至少一種:LSF系數(shù),LSP系數(shù),ISF系數(shù),ISP系數(shù),反射系數(shù),LPC系數(shù)。
可選地,作為另一實施例,在步驟210中,編碼器可以確定當前輸入幀的特征參數(shù)作為實際靜音信號的特征參數(shù)?;蛘?,編碼器可以對M個靜音幀的特征參數(shù)進行統(tǒng)計處理,以確定實際靜音信號的特征參數(shù)。
可選地,作為另一實施例,上述M個靜音幀可以包括當前輸入幀以及當前輸入幀之前的(M-1)個靜音幀,M為正整數(shù)。
例如,如果當前輸入幀為第一個靜音幀,那么實際靜音信號的特征參數(shù)可以是當前輸入幀的特征參數(shù);如果當前輸入幀為第n個靜音幀,那么實際靜音信號的特征參數(shù)可以是編碼器對包含當前輸入幀在內(nèi)的M個靜音幀的特征參數(shù)進行統(tǒng)計處理得到的。M個靜音幀可以是連續(xù)的,也可以是不連續(xù)的,本發(fā)明實施例對此不做限定。
可選地,作為另一實施例,在步驟210中,編碼器可以根據(jù)當前輸入幀的前一幀的舒適噪聲參數(shù)和當前輸入幀的特征參數(shù),預(yù)測舒適噪聲的特征參數(shù)?;蛘撸幋a器可以根據(jù)當前輸入幀之前的L個拖尾幀的特征參數(shù)和當前輸入幀的特征參數(shù),預(yù)測舒適噪聲的特征參數(shù),L為正整數(shù)。
例如,如果當前輸入幀為第一個靜音幀,那么編碼器可以根據(jù)前一幀的舒適噪聲參數(shù)和當前輸入幀的特征參數(shù)預(yù)測舒適噪聲的特征參數(shù)。編碼器對每一幀進行編碼時,會在編碼器內(nèi)部保存每一幀的舒適噪聲參數(shù)。通常只有在輸入幀為靜音幀時,這個保存的舒適噪聲參數(shù)才會較前一幀時發(fā)生變化,因為編碼器可能會根據(jù)當前輸入靜音幀的特征參數(shù)對保存的舒適噪聲參數(shù)進行更新,而在當前輸入幀為語音活動幀時通常不對舒適噪聲參數(shù)進行更新。因此,編碼器可以獲取內(nèi)部存儲的前一幀的舒適噪聲參數(shù)。例如,舒適噪聲參數(shù)可以包括靜音信號的能量參數(shù)和譜參數(shù)。
此外,如果當前輸入幀正處于拖尾區(qū)間,編碼器可以根據(jù)當前輸入幀之前的L個拖尾幀的參數(shù)進行統(tǒng)計,根據(jù)統(tǒng)計得到的結(jié)果和當前輸入幀的特征參數(shù),得到舒適噪聲的特征參數(shù)。
可選地,作為另一實施例,舒適噪聲的特征參數(shù)可以包括舒適噪聲的CELP激勵能量和舒適噪聲的LSF系數(shù),實際靜音信號的特征參數(shù)可以包括實際靜音信號的CELP激勵能量和實際靜音信號的LSF系數(shù)。在步驟220中,編碼器可以確定舒適噪聲的CELP激勵能量與實際靜音信號的CELP激勵能量之間的距離De,并可以確定舒適噪聲的LSF系數(shù)與實際靜音信號的LSF系數(shù)之間的距離Dlsf。
應(yīng)注意,此處距離De和距離Dlsf可以包含一個變量,也可以包含一組變量。例如,距離Dlsf可以包含兩個變量,一個可以是平均的LSF系數(shù)的距離,即每個對應(yīng)LSF系數(shù)的距離的均值。另一個可以是LSF系數(shù)間的最大距離,即距離最大的那對LSF系數(shù)之間的距離。
可選地,作為另一實施例,在步驟230中,在距離De小于第一閾值,且距離Dlsf小于第二閾值的情況下,編碼器可以確定當前輸入幀的編碼方式為SID幀編碼方式。在距離De大于或等于第一閾值,或者距離Dlsf大于或等于第二閾值的情況下,編碼器可以確定當前輸入幀的編碼方式為拖尾幀編碼方式。其中,第一閾值和第二閾值均屬于上述閾值集合。
可選地,作為另一實施例,當De或Dlsf包含一組變量時,編碼器將一組變量中的每個變量與其相對應(yīng)的閾值做比較,從而確定以何種方式編碼當前輸入幀。
具體地,編碼器可以根據(jù)距離De和距離Dlsf,確定當前輸入幀的編碼方式。如果距離De<第一閾值,并且距離Dlsf<第二閾值,則可以表明預(yù)測的舒適噪聲的CELP激勵能量和LSF系數(shù)與實際靜音信號的CELP激勵能量和LSF系數(shù)差別都不大,則編碼器可以認為舒適噪聲和實際靜音信號足夠接近,可以將當前輸入幀編碼為SID幀。否則,可以將當前輸入幀編碼為拖尾幀。
可選地,作為另一實施例,在步驟230中,編碼器可以獲取預(yù)設(shè)的第一閾值和預(yù)設(shè)的第二閾值。或者,編碼器可以根據(jù)當前輸入幀之前的N個靜音幀的CELP激勵能量確定第一閾值,并根據(jù)N個靜音幀的LSF系數(shù)確定第二閾值,其中N為正整數(shù)。
具體地,第一閾值和第二閾值均可以是預(yù)設(shè)的固定值。或者,第一閾值和第二閾值均可以是自適應(yīng)的變量。例如,第一閾值可以是編碼器對當前輸入幀之前的N個靜音幀的CELP激勵能量統(tǒng)計得到的。第二閾值可以是編碼器對當前輸入幀之前的N個靜音幀的LSF系數(shù)統(tǒng)計得到的。N個靜音幀可以是連續(xù)的,也可以是不連續(xù)的。
下面將結(jié)合具體例子詳細描述上述圖2的具體過程。在下面圖3a和圖3b的例子中,將以本發(fā)明實施例可應(yīng)用的兩個場景來進行描述。應(yīng)理解,這些例子只是為了幫助本領(lǐng)域技術(shù)人員更好地理解本發(fā)明實施例,而非限制本發(fā)明實施例的范圍。
圖3a是根據(jù)本發(fā)明一個實施例的信號編碼方法的過程的示意性流程圖。在圖3a中,假設(shè)當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式,編碼器內(nèi)部的VAD確定當前輸入幀為輸入語音信號進入靜音段后的第一個靜音幀。那么,編碼器將需要確定是否設(shè)置拖尾區(qū)間,也就是需要確定是將當前輸入幀編碼為拖尾幀還是SID幀。下面將詳細描述該過程。
301a,確定實際靜音信號的CELP激勵能量和LSF系數(shù)。
具體地,編碼器可以將當前輸入幀的CELP激勵能量e作為實際靜音信號的CELP激勵能量eSI,可以將當前輸入幀的LSF系數(shù)lsf(i)作為實際靜音信號的LSF系數(shù)lsfSI(i),i=0,1,…,K-1,K為濾波器階數(shù)。編碼器可以參照現(xiàn)有技術(shù),確定當前輸入幀的CELP激勵能量以及LSF系數(shù)。
302a,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲的CELP激勵能量和LSF參數(shù)。
編碼器可以假設(shè)當前輸入幀編碼為SID幀,那么解碼器將根據(jù)該SID幀生成舒適噪聲。對于編碼器而言,其能夠預(yù)測該舒適噪聲的CELP激勵能量eCN和LSF系數(shù)lsfCN(i),i=0,1,…,K-1,K為濾波器階數(shù)。編碼器可以根據(jù)編碼器內(nèi)部存儲的前一幀的舒適噪聲參數(shù)和當前輸入幀的CELP激勵能量和LSF系數(shù),分別確定舒適噪聲的CELP激勵能量和LSF系數(shù)。
例如,編碼器可以按照等式(1)預(yù)測舒適噪聲的CELP激勵能量eCN:
eCN=0.4*eCN[-1]+0.6*e (1)
其中,eCN[-1]可以表示前一幀的CELP激勵能量,e可以表示當前輸入幀的CELP激勵能量。
編碼器可以按照等式(2)預(yù)測舒適噪聲的LSF系數(shù)lsfCN(i),i=0,1,…,K-1,K為濾波器階數(shù)。
lsfCN(i)=0.4*lsfCN[-1](i)+0.6*lsf(i) (2)
其中,lsfCN[-1](i)可以表示前一幀的LSF系數(shù),lsf(i)可以表示當前輸入幀的第i個LSF系數(shù)。
303a,確定舒適噪聲的CELP激勵能量與實際靜音信號的CELP激勵能量之間的距離De,并確定舒適噪聲的LSF系數(shù)與實際靜音信號的LSF系數(shù)之間的距離Dlsf。
具體地,編碼器可以根據(jù)等式(3)確定舒適噪聲的CELP激勵能量與實際靜音信號的CELP激勵能量之間的距離De:
De=|log2eCN-log2e| (3)
編碼器可以根據(jù)等式(4)確定舒適噪聲的LSF系數(shù)與實際靜音信號的LSF系數(shù)之間的距離Dlsf:
304a,確定距離De是否小于第一閾值,并且距離Dlsf是否小于第二閾值。
具體地,第一閾值和第二閾值均可以是預(yù)設(shè)的固定值。
或者,第一閾值和第二閾值可以是自適應(yīng)的變量。編碼器可以根據(jù)當前輸入幀之前的N個靜音幀的CELP激勵能量確定第一閾值,例如,編碼器可以按照等式(5)確定第一閾值thr1:
編碼器可以根據(jù)N個靜音幀的LSF系數(shù)確定第二閾值,例如,編碼器可以按照等式(6)確定第二閾值thr2:
其中,在等式(5)和等式(6)中,[x]可以表示第x幀,x可以為n、m或p。例如,e[m]可以表示第m幀的CELP激勵能量。lsf[n](i)可以表示第n幀的第i個LSF系數(shù),lsf[p](i)可以表示第p幀的第i個LSF系數(shù)。
305a,如果距離De小于第一閾值并且距離Dlsf小于第二閾值,則確定不設(shè)置拖尾區(qū)間,將當前輸入幀編碼為SID幀。
如果距離De小于第一閾值并且距離Dlsf小于第二閾值,則編碼器可以認為解碼器能夠生成的舒適噪聲與實際的靜音信號足夠接近,那么可以不設(shè)置拖尾區(qū)間,那么將當前輸入幀編碼為SID幀。
306a,如果距離De大于或等于第一閾值,或者距離Dlsf大于或等于第二閾值,則確定設(shè)置拖尾區(qū)間,將當前輸入幀編碼為拖尾幀。
本發(fā)明實施例中,通過在根據(jù)在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲與實際靜音信號的偏離程度,確定當前輸入幀的編碼方式為拖尾幀編碼方式或SID幀編碼方式,而非簡單地根據(jù)統(tǒng)計得到的語音活動幀的數(shù)量將當前輸入幀編碼為拖尾幀,從而能夠節(jié)省通信帶寬。
圖3b是根據(jù)本發(fā)明另一實施例的信號編碼方法的過程的示意性流程圖。在圖3b中,假設(shè)當前輸入幀已處于拖尾區(qū)間。那么,編碼器需要確定是否結(jié)束拖尾區(qū)間,也就是需要確定是將當前輸入幀編碼繼續(xù)為拖尾幀還是編碼為SID幀。下面將詳細描述該過程。
301b,確定實際靜音信號的CELP激勵能量和LSF系數(shù)。
可選地,類似于步驟301a,編碼器可以將當前輸入幀的CELP激勵能量和LSF系數(shù)作為實際靜音信號的CELP激勵能量和LSF系數(shù)。
可選地,編碼器可以對包括當前輸入幀在內(nèi)的M個靜音幀的CELP激勵能量進行統(tǒng)計處理,得到實際靜音信號的CELP激勵能量。其中,M≤拖尾區(qū)間內(nèi)當前輸入幀之前的拖尾幀的數(shù)目。
例如,編碼器可以按照等式(7)確定實際靜音信號的CELP激勵能量eSI:
再例如,編碼器可以按照等式(8)確定實際靜音信號的LSF系數(shù)lsfSI(i),i=0,1,…,K-1,K為濾波器階數(shù)。
其中,在上述等式(7)和等式(8)中,w(j)可以表示加權(quán)系數(shù),e[-j]可以表示當前輸入幀之前的第j個靜音幀的CELP激勵能量。
302b,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲的CELP激勵能量和LSF系數(shù)。
具體地,編碼器可以根據(jù)當前輸入幀之前的L個拖尾幀的CELP激勵能量和LSF系數(shù),分別確定舒適噪聲的CELP激勵能量eCN和LSF系數(shù)lsfCN(i),i=0,1,…,K-1,K為濾波器階數(shù)。
例如,編碼器可以按照等式(9)確定舒適噪聲的CELP激勵能量eCN:
其中,eHO[-j]可以表示當前輸入幀之前的第j個拖尾幀的激勵能量。
再例如,編碼器可以按照等式(10)確定舒適噪聲的LSF系數(shù)lsfCN(i),i=0,1,…,K-1,K為濾波器階數(shù)。
其中,lsfHO(i)[-j]可以表示當前輸入幀之前的第j個拖尾幀的第i個lsf系數(shù)。
在等式(9)和(10)中,w(j)可以表示加權(quán)系數(shù)。
303b,確定舒適噪聲的CELP激勵能量與實際靜音信號的CELP激勵能量之間的距離De,并確定舒適噪聲的LSF系數(shù)與實際靜音信號的LSF系數(shù)之間的距離Dlsf。
例如,編碼器可以按照等式(3)確定舒適噪聲的CELP激勵能量與實際靜音信號的CELP激勵能量之間的距離De。編碼器可以根據(jù)等式(4)確定舒適噪聲的LSF系數(shù)與實際靜音信號的LSF系數(shù)之間的距離Dlsf。
304b,確定距離De是否小于第一閾值,并且距離Dlsf是否小于第二閾值。
具體地,第一閾值和第二閾值均可以是預(yù)設(shè)的固定值。
或者,第一閾值和第二閾值可以是自適應(yīng)的變量。例如,編碼器可以按照等式(5)確定第一閾值thr1,可以按照等式(6)確定第二閾值thr2。
305b,如果距離De小于第一閾值并且距離Dlsf小于第二閾值,則確定結(jié)束拖尾區(qū)間,將當前輸入幀編碼為SID幀。
306b,如果距離De大于或等于第一閾值,或者距離Dlsf大于或等于第二閾值,則確定繼續(xù)延長拖尾區(qū)間,將當前輸入幀編碼為拖尾幀。
本發(fā)明實施例中,通過根據(jù)在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲與實際靜音信號的偏離程度,確定當前輸入幀的編碼方式為拖尾幀編碼方式或SID幀編碼方式,而非簡單地根據(jù)統(tǒng)計得到的語音活動幀的數(shù)量將當前輸入幀編碼為拖尾幀,從而能夠節(jié)省通信帶寬。
由上述可知,在編碼器進入非連續(xù)傳輸狀態(tài)后,會間歇地編碼SID幀。SID幀通常包括一些描述靜音信號的能量和頻譜信息等。解碼器從編碼器接收到SID幀后,會根據(jù)SID幀中的信息生成舒適噪聲。目前,由于SID幀是每隔若干幀才編碼和發(fā)送一次,因此在編碼SID幀時,SID幀的信息通常都是編碼器對當前輸入靜音幀及其之前的若干靜音幀統(tǒng)計得到的。例如,在一段連續(xù)的靜音區(qū)間內(nèi),當前編碼的SID幀的信息通常是在當前SID幀以及當前SID幀與上一SID幀之間的多個靜音幀中統(tǒng)計得到的。又例如,在一段語音活動段之后的第一個SID幀的編碼信息通常是編碼器對當前輸入靜音幀及與其相鄰的語音活動段末尾的若干拖尾幀統(tǒng)計得到的,也就是對位于拖尾區(qū)間內(nèi)的靜音幀進行統(tǒng)計得到的。為了便于描述,將用于統(tǒng)計SID幀編碼參數(shù)的多個靜音幀稱為分析區(qū)間。具體地,在編碼SID幀時,SID幀的參數(shù)都是對分析區(qū)間的多個靜音幀的參數(shù)取平均或取中值得到的。然而,實際的背景噪聲頻譜會夾雜各種突發(fā)的瞬態(tài)的頻譜成份。一旦分析區(qū)間內(nèi)包含了這樣的頻譜成份,求均值的方法會把這些成份也混入SID幀中,取中值的方法甚至有可能錯誤地將含有這類頻譜成份的靜音譜編碼入SID幀中,從而造成解碼端根據(jù)SID幀生成的舒適噪聲的質(zhì)量下降。
圖4是根據(jù)本發(fā)明一個實施例的信號處理方法的示意性流程圖。圖4的方法由編碼器或解碼器執(zhí)行,例如可以由圖1中的編碼器110或解碼器120執(zhí)行。
410,確定P個靜音幀中每個靜音幀的組加權(quán)譜距離(Group Weighted Spectral Distance),其中P個靜音幀中每個靜音幀的組加權(quán)譜距離為P個靜音幀中每個靜音幀與其它(P-1)個靜音幀之間的加權(quán)譜距離之和,P為正整數(shù)。
例如,編碼器或解碼器可以將當前輸入靜音幀之前的多個靜音幀的參數(shù)存儲在某個緩存中。該緩存的長度可以是固定的或變化的。上述P個靜音幀可以是由編碼器或解碼器從該緩存中選擇的。
420,根據(jù)P個靜音幀中每個靜音幀的組加權(quán)譜距離,確定第一譜參數(shù),第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過根據(jù)P個靜音幀中每個靜音幀的組加權(quán)譜距離確定用于生成舒適噪聲的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,在步驟410中,可以根據(jù)P個靜音幀中每個靜音幀的譜參數(shù),確定每個靜音幀的組加權(quán)譜距離。例如,可以按照等式(11)確定P個靜音幀中的第x幀的組加權(quán)譜距離swd[x],
其中,U[x](i)可以表示第x幀的第i個譜參數(shù),U[j](i)可以表示第j幀的第i個譜參數(shù),w(i)可以為加權(quán)系數(shù),K為譜參數(shù)的系數(shù)數(shù)目。
例如,上述每個靜音幀的譜參數(shù)可以包括LSF系數(shù)、LSP系數(shù)、ISF系數(shù)、ISP系數(shù)、LPC系數(shù)、反射系數(shù)、FFT系數(shù)或MDCT系數(shù)等。因此,相應(yīng)地,在步驟420中,第一譜參數(shù)可以包括LSF系數(shù)、LSP系數(shù)、ISF系數(shù)、ISP系數(shù)、LPC系數(shù)、反射系數(shù)、FFT系數(shù)或MDCT系數(shù)等。
下面以譜參數(shù)為LSF系數(shù)為例說明步驟420的過程。例如,可以確定每個靜音幀的LSF系數(shù)與其它(P-1)個靜音幀的LSF系數(shù)之間的加權(quán)譜距離之和,即每個靜音幀的LSF系數(shù)的組加權(quán)譜距離swd,比如可以按照等式(12)確定這P個靜音幀中第x幀LSF系數(shù)的組加權(quán)譜距離swd′[x],其中x=0,1,2,…,P-1:
其中,w′(i)為加權(quán)系數(shù),K′為濾波器階數(shù)。
可選地,作為一個實施例,每個靜音幀可以與一組加權(quán)系數(shù)相對應(yīng),其中在這一組加權(quán)系數(shù)中,對應(yīng)于第一組子帶的加權(quán)系數(shù)大于對應(yīng)于第二組子帶的加權(quán)系數(shù),其中第一組子帶的感知重要性大于第二組子帶的感知重要性。
子帶可以是基于對頻譜系數(shù)的劃分得到的,具體過程可以參照現(xiàn)有技術(shù)。子帶的感知重要性可以按照現(xiàn)有技術(shù)確定。通常,低頻子帶的感知重要性大于高頻子帶的感知重要性,因此在一個簡化的實施例中,低頻子帶的加權(quán)系數(shù)可以大于高頻子帶的加權(quán)系數(shù)。
例如,在等式(12)中,w′(i)為加權(quán)系數(shù),i=0,1,…,K′-1。每個靜音幀對應(yīng)于一組加權(quán)系數(shù),即w′(0)至w′(K′-1)。在這組加權(quán)系數(shù)中,低頻子帶的lsf系數(shù)的加權(quán)系數(shù)大于高頻子帶的lsf系數(shù)的加權(quán)系數(shù)。由于通常背景噪聲的能量更多地集中在低頻帶,因此,解碼器生成的舒適噪聲的質(zhì)量更多地是由低頻帶的信號的質(zhì)量決定的。因此,高頻帶的lsf系數(shù)的譜距離對最終加權(quán)譜距離的影響應(yīng)當適當減弱。
可選地,作為另一實施例,在步驟420中,可以從P個靜音幀中選擇第一靜音幀,使得在P個靜音幀中第一靜音幀的組加權(quán)譜距離最小,并可以將第一靜音幀的譜參數(shù)確定為第一譜參數(shù)。
具體地,組加權(quán)譜距離最小,可以表明第一靜音幀的譜參數(shù)最能表征這P個靜音幀譜參數(shù)的共性。因此,可以將第一靜音幀的譜參數(shù)編碼入SID幀。例如,對于每個靜音幀的LSF系數(shù)的組加權(quán)譜距離,第一靜音幀的LSF系數(shù)的組加權(quán)譜距離最小,那么可以表明第一靜音幀的LSF譜是最能夠表征這P個靜音幀的LSF譜的共性的LSF譜。
可選地,作為另一實施例,在步驟420中,可以從P個靜音幀中選擇至少一個靜音幀,使得在P個靜音幀中至少一個靜音幀的組加權(quán)譜距離均小于第三閾值,然后可以根據(jù)至少一個靜音幀的譜參數(shù),確定第一譜參數(shù)。
例如,在一個實施例中,可以將至少一個靜音幀的譜參數(shù)的均值確定為第一譜參數(shù)。在另一個實施例中,可以將至少一個靜音幀的譜參數(shù)的中值確定為第一譜參數(shù)。在另一個實施例中,也可以使用本發(fā)明實施例中的其它方法根據(jù)上述至少一個靜音幀的譜參數(shù)確定第一譜參數(shù)。
下面仍以譜參數(shù)為LSF系數(shù)為例進行說明,那么第一譜參數(shù)可以為第一LSF系數(shù)。例如,可以按照等式(12)得到P個靜音幀中每個靜音幀的LSF系數(shù)的組加權(quán)譜距離。從P個靜音幀中選擇LSF系數(shù)的組加權(quán)譜距離小于第三閾值的至少一個靜音幀。然后可以將至少一個靜音幀的LSF系數(shù)的均值作為第一LSF系數(shù)。例如,可以按照等式(13)確定第一LSF系數(shù)lsfSID(i),i=0,1,…,K′-1,K′為濾波器階數(shù)。
其中,{A}可以表示P個靜音幀中除了上述至少一個靜音幀之外的靜音幀。lsf[j](i)可以表示第j幀的第i個LSF系數(shù)。
此外,上述第三閾值可以是預(yù)先設(shè)定的。
可選地,作為另一實施例,在圖4的方法由編碼器執(zhí)行時,上述P個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(P-1)個靜音幀。
在圖4的方法由解碼器執(zhí)行時,上述P個靜音幀可以為P個拖尾幀。
可選地,作為另一實施例,在圖4的方法由編碼器執(zhí)行時,編碼器可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括第一譜參數(shù)。
本發(fā)明實施例中,編碼器可以將當前輸入幀編碼為SID幀,使得SID幀中包括第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到SID幀中的譜參數(shù),從而能夠提升解碼器根據(jù)該SID幀生成的舒適噪聲的質(zhì)量。
圖5是根據(jù)本發(fā)明另一實施例的信號處理方法的示意性流程圖。圖5的方法由編碼器或解碼器執(zhí)行,例如可以由圖1中的編碼器110或解碼器120執(zhí)行。
510,將輸入信號的頻帶劃分為R個子帶,其中R為正整數(shù)。
520,在R個子帶中的每個子帶上,確定S個靜音幀中每個靜音幀的子帶組譜距離,S個靜音幀中每個靜音幀的子帶組譜距離為在每個子帶上S個靜音幀中每個靜音幀與其它(S-1)個靜音幀之間的譜距離之和,S為正整數(shù)。
530,在每個子帶上,根據(jù)S個靜音幀中每個靜音幀的子帶組譜距離,確定每個子帶的第一譜參數(shù),每個子帶的第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過在R個子帶中每個子帶上根據(jù)S個靜音幀中每個靜音幀的子帶組譜距離確定用于生成舒適噪聲的每個子帶的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
在步驟530中,對于每個子帶,可以根據(jù)S個靜音幀每個靜音幀的譜參數(shù),確定每一個子帶上的每個靜音幀的子帶組譜距離。可選地,作為一個實施例,可以按照等式(14)確定第k個子帶上第y個靜音幀的子帶組譜距離ssdk[y],其中,k=1,2,…,R,y=0,1,…,S-1。
其中,L(k)可以表示第k個子帶所包括的譜參數(shù)的系數(shù)數(shù)目,Uk[y](i)可以表示第k個子帶上第y個靜音幀的譜參數(shù)的第i個系數(shù),Uk[j](i)可以表示第k個子帶上第j個靜音幀的譜參數(shù)的第i個系數(shù)。
例如,上述每個靜音幀的譜參數(shù)可以包括LSF系數(shù)、LSP系數(shù)、ISF系數(shù)、ISP系數(shù)、LCP系數(shù)、反射系數(shù)、FFT系數(shù)或MDCT系數(shù)等。
下面以譜參數(shù)為LSF系數(shù)為例進行說明。例如,可以確定每個靜音幀的LSF系數(shù)的子帶組譜距離。每個子帶可以包括一個LSF系數(shù),也可以包括多個LSF系數(shù)。例如,可以按照等式(15)確定第k個子帶上第y個靜音幀的LSF系數(shù)的子帶組譜距離ssdk[y],其中,k=1,2,…,R,y=0,1,…,S-1。
其中,L(k)可以表示第k個子帶所包括的LSF系數(shù)的數(shù)目。lsfk[y](i)可以表示第k個子帶上第y個靜音幀的第i個LSF系數(shù),lsfk[j](i)可以表示第k個子帶上第j個靜音幀的第i個LSF系數(shù)。
相應(yīng)地,每個子帶的第一譜參數(shù)也可以包括LSF系數(shù)、LSP系數(shù)、ISF系數(shù)、ISP系數(shù)、LCP系數(shù)、反射系數(shù)、FFT系數(shù)或MDCT系數(shù)等。
可選地,作為另一實施例,在步驟530中,可以在每個子帶上,從S個靜音幀中選擇第一靜音幀,使得在每個子帶上S個靜音幀中第一靜音幀的子帶組譜距離最小。然后可以在每個子帶上,將第一靜音幀的譜參數(shù)作為每個子帶的第一譜參數(shù)。
具體地,編碼器可以確定每個子帶上的第一靜音幀,將該第一靜音幀的譜參數(shù)作為該子帶的第一譜參數(shù)。
下面仍以譜參數(shù)為LSF系數(shù)為例進行說明,相應(yīng)地,每個子帶的第一譜參數(shù)為每個子帶的第一LSF系數(shù)。例如,可以按照等式(15)確定每個子帶上的各個靜音幀的LSF系數(shù)的子帶組譜距離。對于每個子帶,可以選擇子帶組譜距離最小的幀的LSF系數(shù)作為該子帶的第一LSF系數(shù)。
可選地,作為另一實施例,在步驟530中,可以在每個子帶上,從S個靜音幀中選擇至少一個靜音幀,使得至少一個靜音幀的子帶組譜距離均小于第四閾值。然后可以在每個子帶上,根據(jù)至少一個靜音幀的譜參數(shù),確定每個子帶的第一譜參數(shù)。
例如,在一個實施例中,可以將每個子帶上的S個靜音幀中的至少一個靜音幀的譜參數(shù)的均值確定為每個子帶的第一譜參數(shù)。在另一個實施例中,可以將每個子帶上的S個靜音幀中的至少一個靜音幀的譜參數(shù)的中值確定為每個子帶的第一譜參數(shù)。在另一個實施例中也可以使用本發(fā)明中的其它方法根據(jù)上述至少一個靜音幀的譜參數(shù)確定每個子帶的第一譜參數(shù)。
以LSF系數(shù)為例,可以按照等式(15)確定每個子帶上的各個靜音幀的LSF系數(shù)的子帶組譜距離。對于每個子帶,可以選擇子帶組譜距離均小于第四閾值的至少一個靜音幀,將至少一個靜音幀的LSF系數(shù)的均值確定為該子帶的第一LSF系數(shù)。上述第四閾值可以是預(yù)先設(shè)定的。
可選地,作為另一實施例,在圖5的方法由編碼器執(zhí)行時,上述S個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(S-1)個靜音幀。
在圖5的方法由解碼器執(zhí)行時,上述S個靜音幀可以是S個拖尾幀。
可選地,作為另一實施例,在圖5的方法由編碼器執(zhí)行時,編碼器可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括每個子帶的第一譜參數(shù)。
本發(fā)明實施例中,編碼器可以在編碼SID幀時,使SID幀包括各個子帶的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到SID幀中的譜參數(shù),從而能夠提升解碼器根據(jù)該SID幀生成的舒適噪聲的質(zhì)量。
圖6是根據(jù)本發(fā)明另一實施例的信號處理方法的示意性流程圖。圖6的方法由編碼器或解碼器執(zhí)行,例如可以由圖1中的編碼器110或解碼器120執(zhí)行。
610,確定T個靜音幀中每個靜音幀的第一參數(shù),第一參數(shù)用于表征譜熵,T為正整數(shù)。
例如,在靜音幀的譜熵能夠直接確定時,第一參數(shù)可以為譜熵。某些情況下,遵循嚴格定義的譜熵不一定能被直接確定,此時,第一參數(shù)可以為能夠表征譜熵的其它參數(shù),例如能夠反映頻譜結(jié)構(gòu)性強弱的參數(shù)等。
例如,可以根據(jù)每個靜音幀的LSF系數(shù)確定每個靜音幀的第一參數(shù)。比如,可以按照等式(16)確定第z個靜音幀的第一參數(shù),其中z=1,2,…,T。
其中,K為濾波器階數(shù)。
此處,C是能夠反映頻譜結(jié)構(gòu)性強弱的參數(shù),并不嚴格遵循譜熵的定義,C越大,可以表示譜熵越小。
620,根據(jù)T個靜音幀中每個靜音幀的第一參數(shù),確定第一譜參數(shù),第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過根據(jù)T個靜音幀的用于表征譜熵的第一參數(shù)確定用于生成舒適噪聲的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,可以在確定能夠按照聚類準則將T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,可以根據(jù)第一組靜音幀的譜參數(shù),確定第一譜參數(shù),其中第一組靜音幀的第一參數(shù)所表征的譜熵均大于第二組靜音幀的第一參數(shù)所表征的譜熵。在確定不能夠按照聚類準則將T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,可以對T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定第一譜參數(shù),其中第一組靜音幀的第一參數(shù)所表征的譜熵均大于第二組靜音幀的第一參數(shù)所表征的譜熵。
一般而言,普通噪聲譜的結(jié)構(gòu)性相對較弱,而非噪聲信號譜或包含有瞬態(tài)成份的噪聲譜的結(jié)構(gòu)性相對較強。譜的結(jié)構(gòu)性強弱直接對應(yīng)譜熵的大小。相對而言,普通噪聲的譜熵會較大,而非噪聲信號或含有瞬態(tài)成份的噪聲的譜熵會較小。因此,在T個靜音幀能夠被分為第一組靜音幀和第二組靜音幀的情況下,編碼器可以根據(jù)靜音幀的譜熵,選擇不包含瞬態(tài)成份的第一組靜音幀的譜參數(shù)來確定第一譜參數(shù)。
例如,在一個實施例中可以將第一組靜音幀的譜參數(shù)的均值確定為第一譜參數(shù)。在另一個實施例中,可以將第一組靜音幀的譜參數(shù)的中值確定為第一譜參數(shù)。在另一個實施例中,也可以使用本發(fā)明中的其它方法根據(jù)上述第一組靜音幀的譜參數(shù)確定第一譜參數(shù)。
如果T個靜音幀不能被分為第一組靜音幀和第二組靜音幀,那么可以對T個靜音幀的譜參數(shù)進行加權(quán)平均處理來得到第一譜參數(shù)。可選地,作為另一實施例,上述聚類準則可以包括:第一組靜音幀中每個靜音幀的第一參數(shù)與第一均值之間的距離小于或等于第一組靜音幀中每個靜音幀的第一參數(shù)與第二均值之間的距離;第二組靜音幀中每個靜音幀的第一參數(shù)與第二均值之間的距離小于或等于第二組靜音幀中每個靜音幀的第一參數(shù)與第一均值之間的距離;第一均值與第二均值之間的距離大于第一組靜音幀的第一參數(shù)與第一均值之間的平均距離;第一均值與第二均值之間的距離大于第二組靜音幀的第一參數(shù)與第二均值之間的平均距離。
其中,第一均值為第一組靜音幀的第一參數(shù)的平均值,第二均值為第二組靜音幀的第一參數(shù)的平均值。
可選地,作為另一實施例,編碼器可以對T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定第一譜參數(shù);其中,對于T個靜音幀中任意不同的第i個靜音幀和第j個靜音幀,第i個靜音幀對應(yīng)的加權(quán)系數(shù)大于或等于j個靜音幀對應(yīng)的加權(quán)系數(shù);在第一參數(shù)與譜熵正相關(guān)時,第i個靜音幀的第一參數(shù)大于第j個靜音幀的第一參數(shù);在第一參數(shù)與譜熵負相關(guān)時,第i個靜音幀的第一參數(shù)小于第j個靜音幀的第一參數(shù),i和j均為正整數(shù),且1≤i≤T,1≤j≤T。
具體地,編碼器可以對T個靜音幀的譜參數(shù)進行加權(quán)平均,從而得到第一譜參數(shù)。如上所述,普通噪聲的譜熵會較大,而非噪聲信號或含有瞬態(tài)成份的噪聲的譜熵會較小。因此,在T個靜音幀中,譜熵較大的靜音幀對應(yīng)的加權(quán)系數(shù)可以大于或等于譜熵較小的靜音幀對應(yīng)的加權(quán)系數(shù)。
可選地,作為另一實施例,在圖6的方法由編碼器執(zhí)行時,上述T個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(T-1)個靜音幀。
在圖6的方法由解碼器執(zhí)行時,上述T個靜音幀可以為T個拖尾幀。
可選地,作為另一實施例,在圖6的方法由編碼器執(zhí)行時,編碼器可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括第一譜參數(shù)。
本發(fā)明實施例中,編碼器可以在編碼SID幀時,使SID幀包括各個子帶的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到SID幀中的譜參數(shù),從而能夠提升解碼器根據(jù)該SID幀生成的舒適噪聲的質(zhì)量。
圖7是根據(jù)本發(fā)明一個實施例的信號編碼設(shè)備的示意框圖。圖7的設(shè)備700的一個例子為編碼器,例如圖1所示的編碼器110。設(shè)備700包括第一確定單元710、第二確定單元720、第三確定單元730和編碼單元740。
第一確定單元710在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲,并確定實際靜音信號,其中當前輸入幀為靜音幀。第二確定單元720確定第一確定單元710確定的舒適噪聲與第一確定單元710確定的實際靜音信號的偏離程度。第三確定單元730根據(jù)第二確定單元確定的偏離程度,確定當前輸入幀的編碼方式,當前輸入幀的編碼方式包括拖尾幀編碼方式或SID幀編碼方式。編碼單元740根據(jù)第三確定單元730確定的當前輸入幀的編碼方式,對當前輸入幀進行編碼。
本發(fā)明實施例中,通過在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲,并確定舒適噪聲與實際靜音信號的偏離程度,根據(jù)該偏離程度確定當前輸入幀的編碼方式為拖尾幀編碼方式或SID幀編碼方式,而非簡單地根據(jù)統(tǒng)計得到的語音活動幀的數(shù)量將當前輸入幀編碼為拖尾幀,從而能夠節(jié)省通信帶寬。
可選地,作為一個實施例,第一確定單元710可以預(yù)測舒適噪聲的特征參數(shù),并確定實際靜音信號的特征參數(shù),其中舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)是一一對應(yīng)的。第二確定單元720可以確定舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離。
可選地,作為另一實施例,第三確定單元730可以在舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離小于閾值集合中對應(yīng)閾值的情況下,確定當前輸入幀的編碼方式為SID幀編碼方式,其中舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離與閾值集合中的閾值是一一對應(yīng)的。第三確定單元730可以在舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離大于或等于閾值集合中對應(yīng)閾值的情況下,確定當前輸入幀的編碼方式為拖尾幀編碼方式。
可選地,作為另一實施例,上述舒適噪聲的特征參數(shù)可以用于表征以下至少一種信息:能量信息,譜信息。
可選地,作為另一實施例,上述能量信息可以包括CELP激勵能量。上述譜信息可以包括以下至少一種:線性預(yù)測濾波器系數(shù),F(xiàn)FT系數(shù),MDCT系數(shù)。
線性預(yù)測濾波器系數(shù)可以包括以下至少一種:LSF系數(shù),LSP系數(shù),ISF系數(shù),ISP系數(shù),反射系數(shù),LPC系數(shù)。
可選地,作為另一實施例,第一確定單元710可以根據(jù)當前輸入幀的前一幀的舒適噪聲參數(shù)和當前輸入幀的特征參數(shù),預(yù)測舒適噪聲的特征參數(shù)?;蛘?,第一確定單元710可以根據(jù)當前輸入幀之前的L個拖尾幀的特征參數(shù)和當前輸入幀的特征參數(shù),預(yù)測舒適噪聲的特征參數(shù),其中L為正整數(shù)。
可選地,作為另一實施例,第一確定單元710可以確定當前輸入幀的特征參數(shù)作為實際靜音信號的特征參數(shù)?;蛘?,第一確定單元710可以對M個靜音幀的特征參數(shù)進行統(tǒng)計處理,以確定實際靜音信號的特征參數(shù)。
可選地,作為另一實施例,上述M個靜音幀可以包括當前輸入幀以及當前輸入幀之前的(M-1)個靜音幀,M為正整數(shù)。
可選地,作為另一實施例,舒適噪聲的特征參數(shù)可以包括舒適噪聲的碼激勵線性預(yù)測CELP激勵能量和舒適噪聲的線譜頻率LSF系數(shù),實際靜音信號的特征參數(shù)可以包括實際靜音信號的CELP激勵能量和實際靜音信號的LSF系數(shù)。第二確定單元720可以確定舒適噪聲的CELP激勵能量與實際靜音信號的CELP激勵能量之間的距離De,并確定舒適噪聲的LSF系數(shù)與實際靜音信號的LSF系數(shù)之間的距離Dlsf。
可選地,作為另一實施例,第三確定單元730可以在距離De小于第一閾值,且距離Dlsf小于第二閾值的情況下,確定當前輸入幀的編碼方式為SID幀編碼方式。第三確定單元730可以在距離De大于或等于第一閾值,或者距離Dlsf大于或等于第二閾值的情況下,確定當前輸入幀的編碼方式為拖尾幀編碼方式。
可選地,作為另一實施例,設(shè)備700還可以包括第四確定單元750。第四確定單元750可以獲取預(yù)設(shè)的第一閾值和預(yù)設(shè)的第二閾值。或者,第四確定單元750可以根據(jù)當前輸入幀之前的N個靜音幀的CELP激勵能量確定第一閾值,并根據(jù)N個靜音幀的LSF系數(shù)確定第二閾值,其中N為正整數(shù)。
可選地,作為另一實施例,第一確定單元710可以采用第一預(yù)測方式,預(yù)測舒適噪聲,其中第一預(yù)測方式與解碼器生成舒適噪聲的方式相同。
設(shè)備700的其它功能和操作可以參照上面圖1至圖3b的方法實施例的過程,為了避免重復(fù),此處不再贅述。
圖8是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。圖8的設(shè)備800的例子為編碼器或解碼器,如圖1所示的編碼器110或解碼器120。設(shè)備800包括第一確定單元810和第二確定單元820。
第一確定單元810確定P個靜音幀中每個靜音幀的組加權(quán)譜距離,其中P個靜音幀中每個靜音幀的組加權(quán)譜距離為P個靜音幀中每個靜音幀與其它(P-1)個靜音幀之間的加權(quán)譜距離之和,P為正整數(shù)。第二確定單元820根據(jù)第一確定單元810確定的P個靜音幀中每個靜音幀的組加權(quán)譜距離,確定第一譜參數(shù),其中第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過根據(jù)P個靜音幀中每個靜音幀的組加權(quán)譜距離確定用于生成舒適噪聲的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,每個靜音幀可以與一組加權(quán)系數(shù)相對應(yīng),其中在這一組加權(quán)系數(shù)中,對應(yīng)于第一組子帶的加權(quán)系數(shù)大于對應(yīng)于第二組子帶的加權(quán)系數(shù),其中第一組子帶的感知重要性大于第二組子帶的感知重要性。
可選地,作為另一實施例,第二確定單元820可以從P個靜音幀中選擇第一靜音幀,使得在P個靜音幀中第一靜音幀的組加權(quán)譜距離最小,并可以將第一靜音幀的譜參數(shù)確定為第一譜參數(shù)。
可選地,作為另一實施例,第二確定單元820可以從P個靜音幀中選擇至少一個靜音幀,使得在P個靜音幀中至少一個靜音幀的組加權(quán)譜距離均小于第三閾值,并根據(jù)至少一個靜音幀的譜參數(shù),確定第一譜參數(shù)。
可選地,作為另一實施例,在設(shè)備800為編碼器時,設(shè)備800還可以包括編碼單元830。
上述P個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(P-1)個靜音幀。編碼單元830可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括第二確定單元820確定的第一譜參數(shù)。
設(shè)備800的其它功能和操作可以參照上面圖4的方法實施例的過程,為了避免重復(fù),此處不再贅述。
圖9是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。圖9的設(shè)備900的例子為編碼器或解碼器,如圖1所示的編碼器110或解碼器120。設(shè)備900包括劃分單元910、第一確定單元920和第二確定單元930。
劃分單元910將輸入信號的頻帶劃分為R個子帶,其中R為正整數(shù)。第一確定單元920在劃分單元910劃分的R個子帶中每個子帶上,確定S個靜音幀中每個靜音幀的子帶組譜距離,S個靜音幀中每個靜音幀的子帶組譜距離為在每個子帶上S個靜音幀中每個靜音幀與其它(S-1)個靜音幀之間的譜距離之和,S為正整數(shù)。第二確定單元930在每個子帶上根據(jù)第一確定單元920確定的S個靜音幀中每個靜音幀的譜距離,確定每個子帶的第一譜參數(shù),其中每個子帶的第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過在R個子帶中每個子帶上根據(jù)S個靜音幀中每個靜音幀的譜距離確定用于生成舒適噪聲的每個子帶的譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,第二確定單元930可以在每個子帶上,從S個靜音幀中選擇第一靜音幀,使得在每個子帶上的S個靜音幀中第一靜音幀的子帶組譜距離最小,并在每個子帶上將第一靜音幀的譜參數(shù)確定為每個子帶的第一譜參數(shù)。
可選地,作為另一實施例,第二確定單元930可以在每個子帶上,從S個靜音幀中選擇至少一個靜音幀,使得至少一個靜音幀的子帶組譜距離均小于第四閾值,并在每個子帶上,根據(jù)至少一個靜音幀的譜參數(shù)確定每個子帶的第一譜參數(shù)。
可選地,作為另一實施例,在設(shè)備900為編碼器時,設(shè)備900還可以包括編碼單元940。
上述S個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(S-1)個靜音幀。編碼單元940可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括每個子帶的第一譜參數(shù)。
設(shè)備900的其它功能和操作可以參照上面圖5的方法實施例的過程,為了避免重復(fù),此處不再贅述。
圖10是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。圖10的設(shè)備1000的一個例子為編碼器或解碼器,如圖1所示的編碼器110或解碼器120。設(shè)備1000包括第一確定單元1010和第二確定單元1020。
第一確定單元1010確定T個靜音幀中每個靜音幀的第一參數(shù),第一參數(shù)用于表征譜熵,T為正整數(shù)。第二確定單元1020根據(jù)第一確定單元1010確定的T個靜音幀中每個靜音幀的第一參數(shù),確定第一譜參數(shù),其中第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過根據(jù)T個靜音幀的用于表征譜熵的第一參數(shù)確定用于生成舒適噪聲的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,第二確定單元1020可以在確定能夠按照聚類準則將T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,根據(jù)第一組靜音幀的譜參數(shù),確定第一譜參數(shù),其中第一組靜音幀的第一參數(shù)所表征的譜熵均大于第二組靜音幀的第一參數(shù)所表征的譜熵;在確定不能夠按照聚類準則將T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,對T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定第一譜參數(shù),其中第一組靜音幀的第一參數(shù)所表征的譜熵均大于第二組靜音幀的第一參數(shù)所表征的譜熵。
可選地,作為另一實施例,上述聚類準則可以包括:第一組靜音幀中每個靜音幀的第一參數(shù)與第一均值之間的距離小于或等于第一組靜音幀中每個靜音幀的第一參數(shù)與第二均值之間的距離;第二組靜音幀中每個靜音幀的第一參數(shù)與第二均值之間的距離小于或等于第二組靜音幀中每個靜音幀的第一參數(shù)與第一均值之間的距離;第一均值與第二均值之間的距離大于第一組靜音幀的第一參數(shù)與第一均值之間的平均距離;第一均值與第二均值之間的距離大于第二組靜音幀的第一參數(shù)與第二均值之間的平均距離。
其中,第一均值為第一組靜音幀的第一參數(shù)的平均值,第二均值為第二組靜音幀的第一參數(shù)的平均值。
可選地,作為另一實施例,第二確定單元1020可以對T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定第一譜參數(shù)。其中,對于T個靜音幀中任意不同的第i個靜音幀和第j個靜音幀,第i個靜音幀對應(yīng)的加權(quán)系數(shù)大于或等于j個靜音幀對應(yīng)的加權(quán)系數(shù);在第一參數(shù)與譜熵正相關(guān)時,第i個靜音幀的第一參數(shù)大于第j個靜音幀的第一參數(shù);在第一參數(shù)與譜熵負相關(guān)時,第i個靜音幀的第一參數(shù)小于第j個靜音幀的第一參數(shù),i和j均為正整數(shù),且1≤i≤T,1≤j≤T。
可選地,作為另一實施例,在設(shè)備1000為編碼器時,設(shè)備1000還可以包括編碼單元1030。
上述T個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(T-1)個靜音幀。編碼單元1030可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括第一譜參數(shù)。
設(shè)備1000的其它功能和操作可以參照上面圖6的方法實施例的過程,為了避免重復(fù),此處不再贅述。
圖11是根據(jù)本發(fā)明另一實施例的信號編碼設(shè)備的示意框圖。圖7的設(shè)備1100的一個例子為編碼器。設(shè)備1100包括存儲器1110和處理器1120。
存儲器1110可以包括隨機存儲器、閃存、只讀存儲器、可編程只讀存儲器、非易失性存儲器或寄存器等。處理器1120可以是中央處理器(Central Processing Unit,CPU)。
存儲器1110用于存儲可執(zhí)行指令。處理器1120可以執(zhí)行存儲器1110中存儲的可執(zhí)行指令,用于:在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲,并確定實際靜音信號,其中當前輸入幀為靜音幀;確定舒適噪聲與實際靜音信號的偏離程度;根據(jù)偏離程度,確定當前輸入幀的編碼方式,當前輸入幀的編碼方式包括拖尾幀編碼方式或SID幀編碼方式;根據(jù)當前輸入幀的編碼方式,對當前輸入幀進行編碼。
本發(fā)明實施例中,通過在當前輸入幀的前一幀的編碼方式為連續(xù)編碼方式的情況下,預(yù)測在當前輸入幀被編碼為SID幀的情況下解碼器根據(jù)當前輸入幀生成的舒適噪聲,并確定舒適噪聲與實際靜音信號的偏離程度,根據(jù)該偏離程度確定當前輸入幀的編碼方式為拖尾幀編碼方式或SID幀編碼方式,而非簡單地根據(jù)統(tǒng)計得到的語音活動幀的數(shù)量將當前輸入幀編碼為拖尾幀,從而能夠節(jié)省通信帶寬。
可選地,作為一個實施例,處理器1120可以預(yù)測舒適噪聲的特征參數(shù),并確定實際靜音信號的特征參數(shù),其中舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)是一一對應(yīng)的。處理器1120可以確定舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離。
可選地,作為另一實施例,處理器1120可以在舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離小于閾值集合中對應(yīng)閾值的情況下,確定當前輸入幀的編碼方式為SID幀編碼方式,其中舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離與閾值集合中的閾值是一一對應(yīng)的。處理器1120可以在舒適噪聲的特征參數(shù)與實際靜音信號的特征參數(shù)之間的距離大于或等于閾值集合中對應(yīng)閾值的情況下,確定當前輸入幀的編碼方式為拖尾幀編碼方式。
可選地,作為另一實施例,上述舒適噪聲的特征參數(shù)可以用于表征以下至少一種信息:能量信息,譜信息。
可選地,作為另一實施例,上述能量信息可以包括CELP激勵能量。上述譜信息可以包括以下至少一種:線性預(yù)測濾波器系數(shù),F(xiàn)FT系數(shù),MDCT系數(shù)。線性預(yù)測濾波器系數(shù)可以包括以下至少一種:LSF系數(shù),LSP系數(shù),ISF系數(shù),ISP系數(shù),反射系數(shù),LPC系數(shù)。
可選地,作為另一實施例,處理器1120可以根據(jù)當前輸入幀的前一幀的舒適噪聲參數(shù)和當前輸入幀的特征參數(shù),預(yù)測舒適噪聲的特征參數(shù)?;蛘?,處理器1120可以根據(jù)當前輸入幀之前的L個拖尾幀的特征參數(shù)和當前輸入幀的特征參數(shù),預(yù)測舒適噪聲的特征參數(shù),其中L為正整數(shù)。
可選地,作為另一實施例,處理器1120可以確定當前輸入幀的特征參數(shù)作為實際靜音信號的參數(shù)?;蛘撸幚砥?120可以對M個靜音幀的特征參數(shù)進行統(tǒng)計處理,以確定實際靜音信號的參數(shù)。
可選地,作為另一實施例,上述M個靜音幀可以包括當前輸入幀以及當前輸入幀之前的(M-1)個靜音幀,M為正整數(shù)。
可選地,作為另一實施例,舒適噪聲的特征參數(shù)可以包括舒適噪聲的碼激勵線性預(yù)測CELP激勵能量和舒適噪聲的線譜頻率LSF系數(shù),實際靜音信號的特征參數(shù)可以包括實際靜音信號的CELP激勵能量和實際靜音信號的LSF系數(shù)。處理器1120可以確定舒適噪聲的CELP激勵能量與實際靜音信號的CELP激勵能量之間的距離De,并確定舒適噪聲的LSF系數(shù)與實際靜音信號的LSF系數(shù)之間的距離Dlsf。
可選地,作為另一實施例,處理器1120可以在距離De小于第一閾值,且距離Dlsf小于第二閾值的情況下,確定當前輸入幀的編碼方式為SID幀編碼方式。處理器1120可以在距離De大于或等于第一閾值,或者距離Dlsf大于或等于第二閾值的情況下,確定當前輸入幀的編碼方式為拖尾幀編碼方式。
可選地,作為另一實施例,處理器1120還可以獲取預(yù)設(shè)的第一閾值和預(yù)設(shè)的第二閾值。或者,處理器1120還可以根據(jù)當前輸入幀之前的N個靜音幀的CELP激勵能量確定第一閾值,并根據(jù)N個靜音幀的LSF系數(shù)確定第二閾值,其中N為正整數(shù)。
可選地,作為另一實施例,處理器1120可以采用第一預(yù)測方式,預(yù)測舒適噪聲,其中第一預(yù)測方式與解碼器生成舒適噪聲的方式相同。
設(shè)備1100的其它功能和操作可以參照上面圖1至圖3b的方法實施例的過程,為了避免重復(fù),此處不再贅述。
圖12是根據(jù)本發(fā)明另一實施例的信號編碼設(shè)備的示意框圖。圖12的設(shè)備1200的例子為編碼器或解碼器,如圖1所示的編碼器110或解碼器120。設(shè)備1200包括存儲器1210和處理器1220。
存儲器1210可以包括隨機存儲器、閃存、只讀存儲器、可編程只讀存儲器、非易失性存儲器或寄存器等。處理器1220可以是CPU。
存儲器1210用于存儲可執(zhí)行指令。處理器1220可以執(zhí)行存儲器1210中存儲的可執(zhí)行指令,用于:確定P個靜音幀中每個靜音幀的組加權(quán)譜距離,其中P個靜音幀中每個靜音幀的組加權(quán)譜距離為P個靜音幀中每個靜音幀與其它(P-1)個靜音幀之間的加權(quán)譜距離之和,P為正整數(shù);根據(jù)P個靜音幀中每個靜音幀的組加權(quán)譜距離,確定第一譜參數(shù),其中第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過根據(jù)P個靜音幀中每個靜音幀的組加權(quán)譜距離確定用于生成舒適噪聲的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,每個靜音幀可以與一組加權(quán)系數(shù)相對應(yīng),其中在這一組加權(quán)系數(shù)中,對應(yīng)于第一組子帶的加權(quán)系數(shù)大于對應(yīng)于第二組子帶的加權(quán)系數(shù),其中第一組子帶的感知重要性大于第二組子帶的感知重要性。
可選地,作為另一實施例,處理器1220可以從P個靜音幀中選擇第一靜音幀,使得在P個靜音幀中第一靜音幀的組加權(quán)譜距離最小,并將第一靜音幀的譜參數(shù)確定為第一譜參數(shù)。
可選地,作為另一實施例,處理器1220可以從P個靜音幀中選擇至少一個靜音幀,使得在P個靜音幀中至少一個靜音幀的組加權(quán)譜距離均小于第三閾值,并根據(jù)至少一個靜音幀的譜參數(shù),確定第一譜參數(shù)。
可選地,作為另一實施例,在設(shè)備1200為編碼器時,上述P個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(P-1)個靜音幀。處理器1220可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括第一譜參數(shù)。
設(shè)備1200的其它功能和操作可以參照上面圖4的方法實施例的過程,為了避免重復(fù),此處不再贅述。
圖13是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。圖13的設(shè)備1300的例子為編碼器或解碼器,如圖1所示的編碼器110或解碼器120。設(shè)備1300包括存儲器1310和處理器1320。
存儲器1310可以包括隨機存儲器、閃存、只讀存儲器、可編程只讀存儲器、非易失性存儲器或寄存器等。處理器1320可以是CPU。
存儲器1310用于存儲可執(zhí)行指令。處理器1320可以執(zhí)行存儲器1310中存儲的可執(zhí)行指令,用于:將輸入信號的頻帶劃分為R個子帶,其中R為正整數(shù);在R個子帶中的每個子帶上,確定S個靜音幀中每個靜音幀的子帶組譜距離,S個靜音幀中每個靜音幀的子帶組譜距離為在每個子帶上S個靜音幀中每個靜音幀與其它(S-1)個靜音幀之間的譜距離之和,S為正整數(shù);在每個子帶上根據(jù)S個靜音幀中每個靜音幀的子帶組譜距離,確定每個子帶的第一譜參數(shù),其中每個子帶的第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過根據(jù)R個子帶中每個子帶上的S個靜音幀中每個靜音幀的譜距離確定用于生成舒適噪聲的每個子帶的譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,處理器1320可以在每個子帶上,從S個靜音幀中選擇第一靜音幀,使得在每個子帶上S個靜音幀中第一靜音幀的子帶組譜距離最小,并在每個子帶上將第一靜音幀的譜參數(shù)確定為每個子帶的第一譜參數(shù)。
可選地,作為另一實施例,處理器1320可以在每個子帶上,從S個靜音幀中選擇至少一個靜音幀,使得至少一個靜音幀的子帶組譜距離均小于第四閾值,并在每個子帶上,根據(jù)至少一個靜音幀的譜參數(shù)確定每個子帶的第一譜參數(shù)。
可選地,作為另一實施例,在設(shè)備1300為編碼器時,上述S個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(S-1)個靜音幀。處理器1320可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括每個子帶的第一譜參數(shù)。
設(shè)備1300的其它功能和操作可以參照上面圖5的方法實施例的過程,為了避免重復(fù),此處不再贅述。
圖14是根據(jù)本發(fā)明另一實施例的信號處理設(shè)備的示意框圖。圖14的設(shè)備1400的例子為編碼器或解碼器,如圖1所示的編碼器110或解碼器120。設(shè)備1400包括存儲器1410和處理器1420。
存儲器1410可以包括隨機存儲器、閃存、只讀存儲器、可編程只讀存儲器、非易失性存儲器或寄存器等。處理器1420可以是CPU。
存儲器1410用于存儲可執(zhí)行指令。處理器1420可以執(zhí)行存儲器1410中存儲的可執(zhí)行指令,用于:確定T個靜音幀中每個靜音幀的第一參數(shù),第一參數(shù)用于表征譜熵,T為正整數(shù);根據(jù)T個靜音幀中每個靜音幀的第一參數(shù),確定第一譜參數(shù),其中第一譜參數(shù)用于生成舒適噪聲。
本發(fā)明實施例中,通過根據(jù)T個靜音幀的用于表征譜熵的第一參數(shù)確定用于生成舒適噪聲的第一譜參數(shù),而非簡單地對多個靜音幀的譜參數(shù)取平均或取中值得到用于生成舒適噪聲的譜參數(shù),從而能夠提升舒適噪聲的質(zhì)量。
可選地,作為一個實施例,處理器1420可以在確定能夠按照聚類準則將T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,根據(jù)第一組靜音幀的譜參數(shù),確定第一譜參數(shù),其中第一組靜音幀的第一參數(shù)所表征的譜熵均大于第二組靜音幀的第一參數(shù)所表征的譜熵;在確定不能夠按照聚類準則將T個靜音幀分為第一組靜音幀和第二組靜音幀的情況下,對T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定第一譜參數(shù),其中第一組靜音幀的第一參數(shù)所表征的譜熵均大于第二組靜音幀的第一參數(shù)所表征的譜熵。
可選地,作為另一實施例,上述聚類準則可以包括:第一組靜音幀中每個靜音幀的第一參數(shù)與第一均值之間的距離小于或等于第一組靜音幀中每個靜音幀的第一參數(shù)與第二均值之間的距離;第二組靜音幀中每個靜音幀的第一參數(shù)與第二均值之間的距離小于或等于第二組靜音幀中每個靜音幀的第一參數(shù)與第一均值之間的距離;第一均值與第二均值之間的距離大于第一組靜音幀的第一參數(shù)與第一均值之間的平均距離;第一均值與第二均值之間的距離大于第二組靜音幀的第一參數(shù)與第二均值之間的平均距離。
其中,第一均值為第一組靜音幀的第一參數(shù)的平均值,第二均值為第二組靜音幀的第一參數(shù)的平均值。
可選地,作為另一實施例,處理器1420可以對T個靜音幀的譜參數(shù)進行加權(quán)平均處理,以確定第一譜參數(shù)。其中,對于T個靜音幀中任意不同的第i個靜音幀和第j個靜音幀,第i個靜音幀對應(yīng)的加權(quán)系數(shù)大于或等于j個靜音幀對應(yīng)的加權(quán)系數(shù);在第一參數(shù)與譜熵正相關(guān)時,第i個靜音幀的第一參數(shù)大于第j個靜音幀的第一參數(shù);在第一參數(shù)與譜熵負相關(guān)時,第i個靜音幀的第一參數(shù)小于第j個靜音幀的第一參數(shù),i和j均為正整數(shù),且1≤i≤T,1≤j≤T。
可選地,作為另一實施例,在設(shè)備1400為編碼器時,上述T個靜音幀可以包括當前輸入靜音幀以及當前輸入靜音幀之前的(T-1)個靜音幀。處理器1420可以將當前輸入靜音幀編碼為SID幀,其中SID幀包括第一譜參數(shù)。
設(shè)備1400的其它功能和操作可以參照上面圖6的方法實施例的過程,為了避免重復(fù),此處不再贅述。
本領(lǐng)域普通技術(shù)人員可以意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結(jié)合來實現(xiàn)。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認為超出本發(fā)明的范圍。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
所述功能如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)以所述權(quán)利要求的保護范圍為準。