一種變換域的丟幀補(bǔ)償方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種變換域的丟幀補(bǔ)償方法及裝置,包括:使用當(dāng)前丟失幀的前一幀或前若干幀的頻域系數(shù),計(jì)算當(dāng)前丟失幀的頻域系數(shù),進(jìn)行頻域-時(shí)域變換得到初始補(bǔ)償信號(hào);進(jìn)行波形調(diào)整,得到補(bǔ)償信號(hào),以較低運(yùn)算復(fù)雜度,達(dá)到了更好的補(bǔ)償效果?;?qū)Ξ?dāng)前丟失幀的全部或部分頻點(diǎn),利用前若干幀的相應(yīng)頻點(diǎn)的相位和幅值,外推得到當(dāng)前丟失幀相應(yīng)頻點(diǎn)的相位和幅值,進(jìn)而得到相應(yīng)頻點(diǎn)的頻域系數(shù),通過頻域-時(shí)域變換得到補(bǔ)償信號(hào),大大提高了音調(diào)幀的補(bǔ)償效果??赏ㄟ^判斷算法選擇上述方法補(bǔ)償當(dāng)前丟失幀,達(dá)到更好的補(bǔ)償效果。對(duì)語音信號(hào)幀和音樂信號(hào)幀差異化處理,在各種場(chǎng)景下都能獲得良好的補(bǔ)償效果。通過增益調(diào)整,平穩(wěn)補(bǔ)償能量,減小補(bǔ)償噪聲。
【專利說明】一種變換域的丟幀補(bǔ)償方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及語音頻編解碼領(lǐng)域,尤其涉及一種變換域的丟幀補(bǔ)償方法及裝置。
【背景技術(shù)】
[0002]在網(wǎng)絡(luò)通信中,分組技術(shù)應(yīng)用十分廣泛,各種形式的信息如語音或者音頻等數(shù)據(jù)通過編碼后采用分組技術(shù)在網(wǎng)絡(luò)上傳輸,如VoIP(網(wǎng)絡(luò)電話)等。由于信息發(fā)送端發(fā)送容量的限制,或在指定延遲時(shí)間內(nèi)分組信息幀沒有到達(dá)接收端緩沖區(qū),或是網(wǎng)絡(luò)擁擠堵塞等造成幀信息的丟失,引起解碼端合成音質(zhì)的急劇下降,因此需要采用補(bǔ)償技術(shù)對(duì)丟失幀的數(shù)據(jù)進(jìn)行補(bǔ)償。丟幀補(bǔ)償技術(shù)就是一種減輕這種由于丟幀導(dǎo)致的音質(zhì)下降的技術(shù)。
[0003]相關(guān)的變換域語音頻丟幀補(bǔ)償方法最為簡(jiǎn)單的是采用重復(fù)前一幀的變換域信號(hào)或者使用靜音替代的方法。該方法雖然實(shí)現(xiàn)簡(jiǎn)單且沒有延遲,但是補(bǔ)償效果一般;其他的補(bǔ)償方式如GAPES(缺口數(shù)據(jù)幅值相位估計(jì)技術(shù))需要先將MDCT系數(shù)轉(zhuǎn)化成DSTFT(離散短時(shí)傅里葉變換)系數(shù)再進(jìn)行補(bǔ)償,該方法運(yùn)算復(fù)雜度高,消耗內(nèi)存多;另一種方法采用整形噪聲插入技術(shù)進(jìn)行語音頻丟幀補(bǔ)償,該方法對(duì)類噪聲信號(hào)的補(bǔ)償效果較好,對(duì)諧波音頻信號(hào)的補(bǔ)償效果甚差。
[0004]綜上所述,相關(guān)的變換域丟幀補(bǔ)償技術(shù)多數(shù)效果不明顯,運(yùn)算復(fù)雜度高和延遲時(shí)間過長(zhǎng),或是對(duì)某些信號(hào)補(bǔ)償效果較差。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問題是提供一種變換域的丟幀補(bǔ)償方法及裝置,能夠以較低的運(yùn)算復(fù)雜度,實(shí)現(xiàn)無延時(shí)的,更好的補(bǔ)償效果。
[0006]為解決上述技術(shù)問題,本發(fā)明的一種變換域的丟幀補(bǔ)償方法,所述方法包括:
[0007]使用當(dāng)前丟失幀的前一幀或前若干幀的頻域系數(shù),計(jì)算當(dāng)前丟失幀的頻域系數(shù),對(duì)計(jì)算得到的當(dāng)前丟失幀的頻域系數(shù)進(jìn)行頻域-時(shí)域變換,得到當(dāng)前丟失幀的初始補(bǔ)償信號(hào);
[0008]對(duì)所述初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào)。
[0009]進(jìn)一步地,對(duì)所述初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào),包括:
[0010]對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),判斷基音周期估計(jì)得到的基音周期值是否可用,如果基音周期值不可用,則將當(dāng)前丟失幀的初始補(bǔ)償信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào);如果基音周期值可用,則使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)
難
iF.ο
[0011]進(jìn)一步地,對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),包括:
[0012]對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索,得到當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值和最大歸一化自相關(guān)值,將得到的基音周期值作為當(dāng)前丟失幀的基音周期值。[0013]進(jìn)一步地,還包括:
[0014]在對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索之前,對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行低通濾波或降采樣處理,對(duì)低通濾波或降采樣處理后的當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索。
[0015]進(jìn)一步地,對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),包括:
[0016]計(jì)算出當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值,將計(jì)算得到的基音周期值作為當(dāng)前丟失幀的基音周期值,利用計(jì)算得到的基音周期值計(jì)算出當(dāng)前丟失幀的最大歸一化自相關(guān)值。
[0017]進(jìn)一步地,判斷基音周期估計(jì)得到的基音周期值是否可用,包括:
[0018]判斷是否滿足下面條件中的任意一個(gè),如果滿足任意一個(gè),則認(rèn)為基音周期值不可用,包括:
[0019](I)第一丟失幀的初始補(bǔ)償信號(hào)的過零率大于第一閾值Z1,其中,Z1 > O ;
[0020](2)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的低頻能量與整幀能量的比值小于第二閾值ER1,其中,ER1 > O ;
[0021](3)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的譜傾斜小于第三閾值TILT,其中,O
<TILT < I ;
[0022](4)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的后半幀的過零率超過前半幀的過零
率若干倍。
[0023]進(jìn)一步地,還包括:
[0024]在判斷不滿足所述條件(I)?條件(4)中的任意一個(gè)時(shí),按照以下原則進(jìn)行基音周期值是否可用的判斷:
[0025](a)在當(dāng)前丟失幀位于靜音段時(shí),認(rèn)為基音周期值不可用;
[0026](b)在當(dāng)前丟失幀不位于靜音段,且所述最大歸一化自相關(guān)值大于第四閾值民時(shí),認(rèn)為基音周期值可用,其中,O < R2 < I ;
[0027](c)在不符合原則(a)和原則(b),且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的過零率大于第五閾值Z3,認(rèn)為基音周期值不可用,其中,Z3 > O ;
[0028](d)在不符合原則(a)、(b)和(C),且此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量與當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量的差大于第六閾值E4時(shí),認(rèn)為基音周期值不可用,其中,E4 >O ;
[0029](e)在不符合原則(a)、(b)、(c)和(d)且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量與此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量的差超過第七閾值E5,并且所述最大歸一化自相關(guān)值大于第八閾值R3時(shí),認(rèn)為基音周期值可用,其中,E5 >0,O < R3 < I ;
[0030](f)在不符合原則(a)、(b)、(c)、(d)和(e)時(shí),檢查當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的諧波特性,當(dāng)表示諧波特性的值小于第九閾值H時(shí),認(rèn)為基音周期值不可用;當(dāng)表示諧波特性的值大于等于第九閾值H時(shí),認(rèn)為基音周期值可用,其中,H < I。
[0031]進(jìn)一步地,使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,包括:
[0032]⑴建立長(zhǎng)度為L(zhǎng)+Q的緩存區(qū),L為幀長(zhǎng),L1 > O ;
[0033](ii)對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào);
[0034](iii)將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的L1長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中I > 0,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到;
[0035](iv)將緩存區(qū)中的前L長(zhǎng)度的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。
[0036]進(jìn)一步地,還包括:
[0037]為當(dāng)前丟失幀之后的第一個(gè)正確接收幀,構(gòu)建長(zhǎng)度為L(zhǎng)的緩存區(qū),按照步驟(ii)和步驟(iii)相應(yīng)的方法填滿緩存區(qū),將緩存區(qū)中的信號(hào)與對(duì)所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做加窗交疊相加,將得到的信號(hào)作為所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào)。
[0038]進(jìn)一步地,使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,包括:
[0039]構(gòu)建長(zhǎng)度為kL的緩存區(qū),L為幀長(zhǎng),k>0 ;
[0040]對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,其中,L1 > 0,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào);
[0041]將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的L1長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū)得到長(zhǎng)度為kL的時(shí)域信號(hào),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中I > 0,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到;
[0042]按照時(shí)序順序?qū)⒕彺鎱^(qū)中的信號(hào)依次作為當(dāng)前丟失幀到第q丟失幀的補(bǔ)償信號(hào),在q小于k時(shí),將緩存區(qū)中的第q+Ι幀信號(hào)與對(duì)當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做交疊相加,將得到的信號(hào)作為當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào);或者,
[0043]按照時(shí)序順序?qū)⒕彺鎱^(qū)中的前k-Ι幀信號(hào)依次作為當(dāng)前丟失幀到第k-Ι丟失幀的補(bǔ)償信號(hào),緩存區(qū)中的第k幀信號(hào)用于與第k丟失幀的初始補(bǔ)償信號(hào)做交疊相加,將得到的信號(hào)作為第k丟失幀的補(bǔ)償信號(hào)。
[0044]進(jìn)一步地,還包括:
[0045]在對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整后,還將波形調(diào)整后的信號(hào)乘以一個(gè)增益,將乘以增益后的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。
[0046]進(jìn)一步地,在進(jìn)行基音搜索時(shí),對(duì)于語音信號(hào)巾貞和音樂信號(hào)巾貞使用不同的基音搜索上下限。
[0047]進(jìn)一步地,在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為語音信號(hào)幀時(shí),使用上述方法判斷當(dāng)前丟失幀的基音周期值是否可用。
[0048]進(jìn)一步地,在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為音樂信號(hào)幀時(shí),使用以下方法判斷當(dāng)前丟失幀的基音周期值是否可用,包括:
[0049]如果當(dāng)前丟失幀位于靜音段,認(rèn)為基音周期值不可用;或者,
[0050]如果當(dāng)前丟失巾貞不位于靜音段,最大歸一化自相關(guān)值大于第十九閾值R4, O < R4
<I,認(rèn)為基音周期值可用;最大歸一化自相關(guān)值不大于R4,認(rèn)為基音周期值不可用。
[0051]進(jìn)一步地,還包括:在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)后,在補(bǔ)償信號(hào)中添加噪聲。
[0052]進(jìn)一步地,在補(bǔ)償信號(hào)中添加噪聲,包括:
[0053]將歷史信號(hào)或初始補(bǔ)償信號(hào)本身,通過一個(gè)高通濾波器或者頻譜傾斜濾波器得到
噪聲信號(hào);
[0054]估計(jì)當(dāng)前丟失幀的噪聲增益值;
[0055]將得到的噪聲信號(hào)乘以估計(jì)得到的當(dāng)前丟失幀的噪聲增益值,將乘噪聲增益值后的噪聲信號(hào)加入所述補(bǔ)償信號(hào)中。
[0056]進(jìn)一步地,還包括:
[0057]在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,還將補(bǔ)償信號(hào)乘以尺度因子。
[0058]進(jìn)一步地,還包括:
[0059]在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
[0060]進(jìn)一步地,一種變換域的丟幀補(bǔ)償方法,所述方法包括:
[0061]獲得當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值;
[0062]對(duì)獲得的當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值進(jìn)行線性或非線性外推,得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值;
[0063]通過當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值得到當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù),通過頻域-時(shí)域變換得到當(dāng)前丟幀的補(bǔ)償信號(hào)。
[0064]進(jìn)一步地,獲得當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值;對(duì)獲得的當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值進(jìn)行線性或非線性外推,得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值;通過當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值得到當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù),包括:
[0065]在當(dāng)前丟失幀為第P幀時(shí),對(duì)當(dāng)前丟失幀之前的若干幀時(shí)域信號(hào),采用改進(jìn)的離散正弦變換MDST算法得到第p-2幀和第p-3幀的MDST系數(shù),將得到的第p-2幀和第p-3幀的MDST系數(shù)與第p-2幀和第p-3幀的MDCT系數(shù)組成MDCT-MDST域的復(fù)數(shù)信號(hào);
[0066]將第p-2幀和第p-3幀的相位線性外推得到第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位;
[0067]使用第p-2幀相應(yīng)頻點(diǎn)的幅值代替第P幀各頻點(diǎn)的幅值;
[0068]根據(jù)第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位和第P幀各頻點(diǎn)的幅值推斷第P幀在各頻點(diǎn)的MDCT系數(shù)。
[0069]進(jìn)一步地,還包括:
[0070]根據(jù)當(dāng)前丟失幀之前的最近c(diǎn)個(gè)正確接收幀的幀類型,選擇是否對(duì)當(dāng)前丟失幀的各頻點(diǎn)均利用當(dāng)前丟失幀之前若干幀的各頻點(diǎn)處的相位和幅值,進(jìn)行線性或非線性外推得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值。
[0071]進(jìn)一步地,還包括:
[0072]在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,還將補(bǔ)償信號(hào)乘以尺度因子。
[0073]進(jìn)一步地,還包括:
[0074]在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
[0075]進(jìn)一步地,一種變換域的丟幀補(bǔ)償方法,所述方法包括:
[0076]通過判斷算法,選擇使用上述的第一種方法或者上述的第二種方法補(bǔ)償當(dāng)前丟失幀。
[0077]進(jìn)一步地,通過判斷算法,選擇使用上述的第一種方法或者上述的第二種方法補(bǔ)償當(dāng)前丟失幀,包括:
[0078]判斷幀類型,如果當(dāng)前丟失幀為音調(diào)幀,則使用上述的第二種方法補(bǔ)償當(dāng)前丟失幀;如果當(dāng)前丟失幀為非音調(diào)幀,則使用上述的第一種方法補(bǔ)償當(dāng)前丟失幀。
[0079]進(jìn)一步地, 判斷幀類型,包括:
[0080]獲取當(dāng)前丟失幀的前η個(gè)正確接收幀的幀類型標(biāo)識(shí),如果前η個(gè)正確接收幀中音調(diào)幀的數(shù)目大于第十一閾值IV則認(rèn)為當(dāng)前丟失幀為音調(diào)幀;否則認(rèn)為當(dāng)前丟失幀為非音調(diào)中貞,其中,O ^ n0 ^ η, n ^ I。
[0081]進(jìn)一步地,包括:
[0082]計(jì)算幀的譜平坦度,判斷譜平坦度的值是否小于第十閾值K,如果小于K則認(rèn)為該幀為音調(diào)幀;否則,認(rèn)為該幀為非音調(diào)幀,其中,O < K < I。
[0083]進(jìn)一步地,在計(jì)算譜平坦度時(shí),用于計(jì)算的頻域系數(shù)是時(shí)域-頻域變化后原始的頻域系數(shù),或是將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)。
[0084]進(jìn)一步地,判斷幀類型,包括:
[0085]使用時(shí)域-頻域變化后原始的頻域系數(shù)以及將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)分別計(jì)算幀的譜平坦度,得到幀對(duì)應(yīng)的兩個(gè)譜平坦度;
[0086]根據(jù)得到的其中一個(gè)譜平坦度的值是否小于第十閾值K,設(shè)定該幀是否為音調(diào)幀;根據(jù)得到的其中另一個(gè)譜平坦度的值是否小于另一閾值K’,重新設(shè)定該幀是否為音調(diào)幀;
[0087]其中,在譜平坦度的值小于K時(shí),則設(shè)定幀為音調(diào)幀;否則,設(shè)定幀為非音調(diào)幀,在另一個(gè)譜平坦度的值小于K’時(shí),重新設(shè)定該幀為音調(diào)幀;其中,O < KS 1,0 < K’ < I。
[0088]進(jìn)一步地,一種變換域的丟幀補(bǔ)償裝置,所述裝置包括:頻域系數(shù)計(jì)算單元、變換單元和波形調(diào)整單元,其中:
[0089]所述頻域系數(shù)計(jì)算單元,用于使用當(dāng)前丟失幀的前一幀或前若干幀的頻域系數(shù),計(jì)算當(dāng)前丟失幀的頻域系數(shù);
[0090]所述變換單元,用于對(duì)所述頻域系數(shù)計(jì)算單元計(jì)算得到的當(dāng)前丟失幀的頻域系數(shù)進(jìn)行頻域-時(shí)域變換,得到當(dāng)前丟失幀的初始補(bǔ)償信號(hào);
[0091]所述波形調(diào)整單元,用于對(duì)所述初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào)。[0092]進(jìn)一步地,所述波形調(diào)整單元,具體用于對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),判斷基音周期估計(jì)得到的基音周期值是否可用,如果基音周期值不可用,則將當(dāng)前丟失幀的初始補(bǔ)償信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào);如果基音周期值可用,則使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整。
[0093]進(jìn)一步地,所述波形調(diào)整單元包括基音周期子單元,其中:
[0094]所述基音周期子單元,用于對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索,得到當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值和最大歸一化自相關(guān)值,將得到的基音周期值作為當(dāng)前丟失幀的基音周期值;或者,
[0095]計(jì)算出當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值,將計(jì)算得到的基音周期值作為當(dāng)前丟失幀的基音周期值,利用計(jì)算得到的基音周期值計(jì)算出當(dāng)前丟失幀的最大歸一化自相關(guān)值。
[0096]進(jìn)一步地,所述基音周期子單元,還用于在對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索之前,對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行低通濾波或降采樣處理,對(duì)低通濾波或降采樣處理后的當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索。
[0097]進(jìn)一步地,所述波形調(diào)整單元包括基音周期值判斷子單元,其中:
[0098]所述基音周期值判斷子單元,用于判斷是否滿足下面條件中的任意一個(gè),如果滿足任意一個(gè),則認(rèn)為基音周期值不可用,包括:
[0099](I)第一丟失幀的初始補(bǔ)償信號(hào)的過零率大于第一閾值Z1,其中,Z1 > O ;
[0100](2)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的低頻能量與整幀能量的比值小于第二閾值ER1,其中,ER1 > O ;
[0101](3)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的譜傾斜小于第三閾值TILT,其中,O
<TILT < I ;
[0102](4)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的后半幀的過零率超過前半幀的過零
率若干倍。
[0103]進(jìn)一步地,所述基音周期值判斷子單元,還用于在判斷不滿足所述條件(I)?條件(4)中的任意一個(gè)時(shí),按照以下原則進(jìn)行基音周期值是否可用的判斷:
[0104](a)在當(dāng)前丟失幀位于靜音段時(shí),認(rèn)為基音周期值不可用;
[0105](b)在當(dāng)前丟失幀不位于靜音段,且所述最大歸一化自相關(guān)值大于第四閾值民時(shí),認(rèn)為基音周期值可用,其中,O < R2 < I ;
[0106](c)在不符合原則(a)和原則(b),且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的過零率大于第五閾值Z3,認(rèn)為基音周期值不可用,其中,Z3 > O ;
[0107](d)在不符合原則(a)、(b)和(C),且此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量與當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量的差大于第六閾值E4時(shí),認(rèn)為基音周期值不可用,其中,E4 >O ;
[0108](e)在不符合原則(a)、(b)、(c)和⑷且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量與此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量的差超過第七閾值E5,并且所述最大歸一化自相關(guān)值大于第八閾值R3時(shí),認(rèn)為基音周期值可用,其中,E5 >0,O < R3 < I ;
[0109](f)在不符合原則(a)、(b)、(c)、(d)和(e)時(shí),檢查當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的諧波特性,當(dāng)表示諧波特性的值小于第九閾值H時(shí),認(rèn)為基音周期值不可用;當(dāng)表示諧波特性的值大于等于第九閾值H時(shí),認(rèn)為基音周期值可用,其中,H < I。
[0110]進(jìn)一步地,所述波形調(diào)整單元包括調(diào)整子單元,其中:
[0111]所述調(diào)整子單元,用于(i)建立長(zhǎng)度為L(zhǎng)+U的緩存區(qū),L為幀長(zhǎng),L1X);
[0112](ii)對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào);
[0113](iii)將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的L1長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中I > 0,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到;
[0114](iv)將緩存區(qū)中的前L長(zhǎng)度的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。
[0115]進(jìn)一步地,所述調(diào)整子單元,還用于為當(dāng)前丟失幀之后的第一個(gè)正確接收幀,構(gòu)建長(zhǎng)度為L(zhǎng)的緩存區(qū),按照步驟(ii)和步驟(iii)相應(yīng)的方法填滿緩存區(qū),將緩存區(qū)中的信號(hào)與對(duì)所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做加窗交疊相加,將得到的信號(hào)作為所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào)。
[0116]進(jìn)一步地,所述波形調(diào)整單元包括調(diào)整子單元,其中:
[0117]所述調(diào)整子單元,用于構(gòu)建長(zhǎng)度為kL的緩存區(qū),L為幀長(zhǎng),k > O ;
[0118]對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,其中,L1 > 0,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào);
[0119]將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的L1長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū)得到長(zhǎng)度為kL的時(shí)域信號(hào),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中I > 0,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到;
[0120]按照時(shí)序順序?qū)⒕彺鎱^(qū)中的信號(hào)依次作為當(dāng)前丟失幀到第q丟失幀的補(bǔ)償信號(hào),在q小于k時(shí),將緩存區(qū)中的第q+Ι幀信號(hào)與對(duì)當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做交疊相加,將得到的信號(hào)作為當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào);或者,
[0121]按照時(shí)序順序?qū)⒕彺鎱^(qū)中的前k-Ι幀信號(hào)依次作為當(dāng)前丟失幀到第k-Ι丟失幀的補(bǔ)償信號(hào),緩存區(qū)中的第k幀信號(hào)用于與第k丟失幀的初始補(bǔ)償信號(hào)做交疊相加,將得到的信號(hào)作為第k丟失幀的補(bǔ)償信號(hào)。
[0122]進(jìn)一步地,所述波形調(diào)整單元還包括增益子單元,其中:
[0123]所述增益子單元,用于在對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整后,還將波形調(diào)整后的信號(hào)乘以一個(gè)增益,將乘以增益后的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。[0124]進(jìn)一步地,所述基音周期子單元在進(jìn)行基音搜索時(shí),對(duì)于語音信號(hào)幀和音樂信號(hào)幀使用不同的基音搜索上下限。
[0125]進(jìn)一步地,所述基音周期值判斷子單元在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為語音信號(hào)幀時(shí),使用上述方法判斷當(dāng)前丟失幀的基音周期值是否可用。
[0126]進(jìn)一步地,所述基音周期值判斷子單元,還用于在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為音樂信號(hào)幀時(shí),使用以下方法判斷當(dāng)前丟失幀的基音周期值是否可用,包括:
[0127]如果當(dāng)前丟失幀位于靜音段,認(rèn)為基音周期值不可用;或者,
[0128]如果當(dāng)前丟失幀不位于靜音段,最大歸一化自相關(guān)值大于第十九閾值R4, O < R4
<I,認(rèn)為基音周期值可用;最大歸一化自相關(guān)值不大于R4,認(rèn)為基音周期值不可用。
[0129]進(jìn)一步地,所述波形調(diào)整單元還包括噪聲添加子單元,其中:
[0130]所述噪聲添加子單元,用于在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)后,在補(bǔ)償信號(hào)中添加噪聲。
[0131]進(jìn)一步地,所述噪聲添加子單元,具體用于將歷史信號(hào)或初始補(bǔ)償信號(hào)本身,通過一個(gè)高通濾波器或者頻譜傾斜濾波器得到噪聲信號(hào);
[0132]估計(jì)當(dāng)前丟失幀的噪聲增益值;
[0133]將得到的噪聲信號(hào)乘以估計(jì)得到的當(dāng)前丟失幀的噪聲增益值,將乘噪聲增益值后的噪聲信號(hào)加入所述補(bǔ)償信號(hào)中。
[0134]進(jìn)一步地,所述裝置還包括尺度因子單元,其中:
[0135]所述尺度因子單元,用于在所述波形調(diào)整單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,將補(bǔ)償信號(hào)乘以尺度因子。
[0136]進(jìn)一步地,所述尺度因子單元,具體用于在所述波形調(diào)整單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
[0137]進(jìn)一步地,一種變換域的丟幀補(bǔ)償裝置,所述裝置包括:第一相位幅值獲取單元、第二相位幅值獲取單元和補(bǔ)償信號(hào)獲取單元,其中:
[0138]所述第一相位幅值獲取單元,用于獲得當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值;
[0139]所述第二相位幅值獲取單元,用于對(duì)獲得的當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值進(jìn)行線性或非線性外推,得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值;
[0140]所述補(bǔ)償信號(hào)獲取單元,用于通過當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值得到當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù),通過頻域-時(shí)域變換得到當(dāng)前丟幀的補(bǔ)償信號(hào)。
[0141]進(jìn)一步地,所述第一相位幅值獲取單元,具體用于在當(dāng)前丟失幀為第P幀時(shí),對(duì)當(dāng)前丟失幀之前的若干幀時(shí)域信號(hào),采用改進(jìn)的離散正弦變換MDST算法得到第p-2幀和第P-3幀的MDST系數(shù),將得到的第p-2幀和第p-3幀的MDST系數(shù)與第p_2幀和第p-3幀的MDCT系數(shù)組成MDCT-MDST域的復(fù)數(shù)信號(hào);
[0142]所述第二相位幅值獲取單元,具體用于將第p-2幀和第p-3幀的相位線性外推得到第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位;使用第P-2幀相應(yīng)頻點(diǎn)的幅值代替第P幀各頻點(diǎn)的幅值;
[0143]所述補(bǔ)償信號(hào)獲取單元,具體用于根據(jù)第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位和第P幀各頻點(diǎn)的幅值推斷第P幀在各頻點(diǎn)的MDCT系數(shù)
[0144]進(jìn)一步地,所述裝置還包括頻點(diǎn)選擇單元,其中:
[0145]所述頻點(diǎn)選擇單元,用于根據(jù)當(dāng)前丟失幀之前的最近c(diǎn)個(gè)正確接收幀的幀類型,選擇是否對(duì)當(dāng)前丟失幀的各頻點(diǎn)均利用當(dāng)前丟失幀之前若干幀的各頻點(diǎn)處的相位和幅值,進(jìn)行線性或非線性外推得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值。
[0146]進(jìn)一步地,所述裝置還包括尺度因子單元,其中:
[0147]所述尺度因子單元,用于在所述補(bǔ)償信號(hào)獲取單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,將補(bǔ)償信號(hào)乘以尺度因子。
[0148]進(jìn)一步地,所述尺度因子單元,具體用于在所述補(bǔ)償信號(hào)獲取單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
[0149]進(jìn)一步地,一種變換域的丟幀補(bǔ)償裝置,所述裝置包括:判斷單元,其中:
[0150]所述判斷單元,用于通過判斷算法,選擇使用上述的第一種裝置或者上述的第二種裝置補(bǔ)償當(dāng)前丟失幀。
[0151]進(jìn)一步地,所述判斷單元,具體用于判斷幀類型,如果當(dāng)前丟失幀為音調(diào)幀,則使用上述的第二種裝置補(bǔ)償當(dāng)前丟失幀;如果當(dāng)前丟失幀為非音調(diào)幀,則使用上述的第一種裝置補(bǔ)償當(dāng)前丟失幀。
[0152]進(jìn)一步地,所述判斷單元,具體用于獲取當(dāng)前丟失幀的前η個(gè)正確接收幀的幀類型標(biāo)識(shí),如果前η個(gè)正確接收幀中音調(diào)幀的數(shù)目大于第十一閾值iv則認(rèn)為當(dāng)前丟失幀為音調(diào)幀;否則認(rèn)為當(dāng)前丟失幀為非音調(diào)幀,其中,O ≤η0≤η, n≤ 10
[0153]進(jìn)一步地,所述判斷單元,具體用于計(jì)算幀的譜平坦度,判斷譜平坦度的值是否小于第十閾值K,如果小于K則認(rèn)為該幀為音調(diào)幀;否則,認(rèn)為該幀為非音調(diào)幀,其中,O ≤ K ≤ 1
[0154]進(jìn)一步地,所述判斷單元在計(jì)算譜平坦度時(shí),用于計(jì)算的頻域系數(shù)是時(shí)域-頻域變化后原始的頻域系數(shù),或是將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)。
[0155]進(jìn)一步地,所述判斷單元,具體用于使用時(shí)域-頻域變化后原始的頻域系數(shù)以及將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)分別計(jì)算幀的譜平坦度,得到幀對(duì)應(yīng)的兩個(gè)譜平坦度;
[0156]根據(jù)得到的其中一個(gè)譜平坦度的值是否小于第十閾值K,設(shè)定該幀是否為音調(diào)幀;根據(jù)得到的其中另一個(gè)譜平坦度的值是否小于另一閾值K’,重新設(shè)定該幀是否為音調(diào)幀;
[0157]其中,在譜平坦度的值小于K時(shí),則設(shè)定幀為音調(diào)幀;否則,設(shè)定幀為非音調(diào)幀,在另一個(gè)譜平坦度的值小于K’時(shí),重新設(shè)定該幀為音調(diào)幀;其中,O ≤ K≤ 1,0 ≤ K’ ≤1。
[0158]綜上所述,本發(fā)明使用當(dāng)前丟失幀的前一幀或前若干幀的頻域系數(shù)計(jì)算當(dāng)前丟失幀的頻域系數(shù),對(duì)計(jì)算得到的當(dāng)前丟失幀的頻域系數(shù)進(jìn)行頻域-時(shí)域變換,得到當(dāng)前丟失幀的初始補(bǔ)償信號(hào);對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào),能夠以較低運(yùn)算復(fù)雜度,達(dá)到更好的語音頻信號(hào)的丟幀補(bǔ)償效果,并且大大縮短了延遲時(shí)間。
【專利附圖】
【附圖說明】
[0159]圖1是本發(fā)明中對(duì)丟失幀名稱定義的示意圖;[0160]圖2 (A)是本發(fā)明實(shí)施例1的變換域的丟幀補(bǔ)償方法的流程圖;
[0161]圖2(B)是本發(fā)明實(shí)施例1中計(jì)算當(dāng)前丟失幀的頻域系數(shù)的方法的示意圖;
[0162]圖3是本發(fā)明實(shí)施例1中對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整方法的流程圖;
[0163]圖4是本發(fā)明實(shí)施例1中波形調(diào)整方法的示意圖;
[0164]圖5本發(fā)明實(shí)施例2中得到當(dāng)前丟失幀各頻點(diǎn)的頻域系數(shù)方法的流程圖;
[0165]圖6是本發(fā)明實(shí)施例3中的判斷算法的流程圖;
[0166]圖7是本發(fā)明實(shí)施例4中基音搜索的示意圖;
[0167]圖8是本發(fā)明實(shí)施例4中判斷搜索得到的當(dāng)前丟幀的基音周期是否可用的示意圖;
[0168]圖9是本發(fā)明實(shí)施例5的流程圖;
[0169]圖10是本發(fā)明實(shí)施方式的一種變換域的丟幀補(bǔ)償裝置的架構(gòu)圖;
[0170]圖11是本發(fā)明實(shí)施方式的裝置中的波形調(diào)整單元的架構(gòu)圖;
[0171]圖12是本發(fā)明實(shí)施方式的另一種變換域的丟幀補(bǔ)償裝置的架構(gòu)圖。
【具體實(shí)施方式】
[0172]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明。需要說明的是,在不`沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
[0173]如圖1所示,緊隨正確接收幀的第一個(gè)丟失幀被稱為第一丟失幀,緊隨第一丟失幀的連續(xù)的第二個(gè)丟失幀被稱為第二丟失幀,以此類推。
[0174]實(shí)施例1:
[0175]如圖2(A)所示,本實(shí)施方式的變換域的丟幀補(bǔ)償方法,包括:
[0176]步驟101:使用當(dāng)前丟失幀的前一幀或若干幀的頻域系數(shù),計(jì)算得到當(dāng)前丟失幀的頻域系數(shù),對(duì)計(jì)算得到的頻域系數(shù)進(jìn)行頻域-時(shí)域變換得到當(dāng)前丟失幀的初始補(bǔ)償信號(hào);
[0177]若干幀為兩幀或兩個(gè)以上幀。
[0178]步驟102:對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào);
[0179]下面結(jié)合附圖分別對(duì)步驟101和步驟102進(jìn)行具體說明。
[0180]如圖2(B)所示,計(jì)算得到當(dāng)前丟失幀的頻域系數(shù)的具體方法包括:
[0181]步驟一:將當(dāng)前丟失幀的前一幀的頻域系數(shù)作適當(dāng)衰減,然后作為當(dāng)前丟失幀的頻域系數(shù),即:
[0182]當(dāng)前丟失幀為第P幀時(shí),
[0183]cp (m) = a *cp_1 (m), m = O,..., M-1 ;
[0184]其中cp(m)表示第p幀在頻點(diǎn)m處的頻域系數(shù),M為頻點(diǎn)總數(shù),α為衰減系數(shù), a ^ I, α可以對(duì)于每個(gè)丟失幀采用固定值,也可以對(duì)第一丟失幀,第二丟失幀,,
第k丟失幀等采用不同的值。
[0185]也可以將當(dāng)前丟失幀前若干幀的頻域系數(shù)的加權(quán)平均作適當(dāng)衰減,然后作為當(dāng)前丟失幀的頻域系數(shù)。
[0186]步驟二:優(yōu)選地,也可以將上述得到的當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù)分別乘以一個(gè)隨機(jī)符號(hào),得到新的當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù),即:
[0187]cp(m) = sgn (m) *cp (m), m = O,..., M-1,
[0188]其中,sgn (m)為頻點(diǎn)m處的隨機(jī)符號(hào)。
[0189]如圖3所示,步驟102中對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整的方法包括:
[0190]102a:對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),具體基音周期估計(jì)的方法如下:
[0191]首先,使用自相關(guān)方法對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索,得到當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值和最大歸一化自相關(guān)值,將得到的基音周期值作為當(dāng)前丟失幀的基音周期值;
[0192]即尋找t e [Tfflin, TfflaJ,O < Tfflin < Tfflax < L 使得
【權(quán)利要求】
1.一種變換域的丟幀補(bǔ)償方法,其特征在于,所述方法包括: 使用當(dāng)前丟失幀的前一幀或前若干幀的頻域系數(shù),計(jì)算當(dāng)前丟失幀的頻域系數(shù),對(duì)計(jì)算得到的當(dāng)前丟失幀的頻域系數(shù)進(jìn)行頻域-時(shí)域變換,得到當(dāng)前丟失幀的初始補(bǔ)償信號(hào);對(duì)所述初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào)。
2.如權(quán)利要求1所述的方法,其特征在于,對(duì)所述初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào),包括: 對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),判斷基音周期估計(jì)得到的基音周期值是否可用,如果基音周期值不可用,則將當(dāng)前丟失幀的初始補(bǔ)償信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào);如果基音周期值可用,則使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整。
3.如權(quán)利要求2所述的方法,其特征在于,對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),包括: 對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索,得到當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值和最大歸一化自相關(guān)值,將得到的基音周期值作為當(dāng)前丟失幀的基音周期值。
4.如權(quán)利要求3所述的方法,其特征在于,還包括: 在對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索之前,對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行低通濾波或降采樣處理,對(duì)低通濾波或降采樣處理后的當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索。
5.如權(quán)利要求2所述的方法,其特征在于,對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),包括: 計(jì)算出當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值,將計(jì)算得到的基音周期值作為當(dāng)前丟失幀的基音周期值,利用計(jì)算得到的基音周期值計(jì)算出當(dāng)前丟失幀的最大歸一化自相關(guān)值。
6.如權(quán)利要求2、3、4或5所述的方法,其特征在于,判斷基音周期估計(jì)得到的基音周期值是否可用,包括: 判斷是否滿足下面條件中的任意一個(gè),如果滿足任意一個(gè),則認(rèn)為基音周期值不可用,包括: (1)第一丟失幀的初始補(bǔ)償信號(hào)的過零率大于第一閾值Z1,其中,Z1> O ; (2)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的低頻能量與整幀能量的比值小于第二閾值 ER1,其中,ER1 > O ; (3)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的譜傾斜小于第三閾值TILT,其中,O<TILT < I ; (4)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的后半幀的過零率超過前半幀的過零率若干倍。
7.如權(quán)利要求6所述的方法,其特征在于,還包括: 在判斷不滿足所述條件(I)~條件(4)中的任意一個(gè)時(shí),按照以下原則進(jìn)行基音周期值是否可用的判斷: (a)在當(dāng)前丟失幀位于靜音段時(shí),認(rèn)為基音周期值不可用; (b)在當(dāng)前丟失幀不位于靜音段,且所述最大歸一化自相關(guān)值大于第四閾值R2時(shí),認(rèn)為基音周期值可用,其中,O < R2 < I ; (C)在不符合原則(a)和原則(b),且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的過零率大于第五閾值Z3,認(rèn)為基音周期值不可用,其中,Z3 > O ; (d)在不符合原則(a)、(b)和(C),且此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量與當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量的差大于第六閾值E4時(shí),認(rèn)為基音周期值不可用,其中,E4 > O ; (e)在不符合原則(a)、(b)、(c)和(d)且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量與此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量的差超過第七閾值E5,并且所述最大歸一化自相關(guān)值大于第八閾值R3時(shí),認(rèn)為基音周期值可用,其中,E5 > O,O < R3 < 1 ; (f)在不符合原則(a)、(b)、(C)、(d)和(e)時(shí),檢查當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的諧波特性,當(dāng)表示諧波特性的值小于第九閾值H時(shí),認(rèn)為基音周期值不可用;當(dāng)表示諧波特性的值大于等于第九閾值H時(shí),認(rèn)為基音周期值可用,其中,H < 1。
8.如權(quán)利要求2所述的方法,其特征在于,使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,包括: (1)建立長(zhǎng)度為L(zhǎng)+Q的緩存區(qū),L為幀長(zhǎng),L1 > O ; (?)對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào); (111)將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的1^長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中1 > O,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到; (1v)將緩存區(qū)中的前L長(zhǎng)度的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。
9.如權(quán)利要求8所述的方法,其特征在于,還包括: 為當(dāng)前丟失幀之后的第一個(gè)正確接收幀,構(gòu)建長(zhǎng)度為L(zhǎng)的緩存區(qū),按照步驟(11)和步驟(111)相應(yīng)的方法填滿緩存區(qū),將緩存區(qū)中的信號(hào)與對(duì)所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做加窗交疊相加,將得到的信號(hào)作為所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào)。
10.如權(quán)利要求2所述的方法,其特征在于,使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,包括: 構(gòu)建長(zhǎng)度為kL的緩存區(qū),L為幀長(zhǎng),k> O ; 對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,其中,L1 > 0,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào); 將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的L1長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū)得到長(zhǎng)度為kL的時(shí)域信號(hào),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中1 > 0,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到;按照時(shí)序順序?qū)⒕彺鎱^(qū)中的信號(hào)依次作為當(dāng)前丟失幀到第q丟失幀的補(bǔ)償信號(hào),在q小于k時(shí),將緩存區(qū)中的第q+Ι幀信號(hào)與對(duì)當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做交疊相加,將得到的信號(hào)作為當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào);或者, 按照時(shí)序順序?qū)⒕彺鎱^(qū)中的前k-Ι幀信號(hào)依次作為當(dāng)前丟失幀到第k-Ι丟失幀的補(bǔ)償信號(hào),緩存區(qū)中的第k幀信號(hào)用于與第k丟失幀的初始補(bǔ)償信號(hào)做交疊相加,將得到的信號(hào)作為第k丟失幀的補(bǔ)償信號(hào)。
11.如權(quán)利要求8~10任意之一所述的方法,其特征在于,還包括: 在對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整后,還將波形調(diào)整后的信號(hào)乘以一個(gè)增益,將乘以增益后的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。
12.如權(quán)利要求3所述的方法,其特征在于,在進(jìn)行基音搜索時(shí),對(duì)于語音信號(hào)幀和音樂信號(hào)幀使用不同的基音搜索上下限。
13.如權(quán)利要求7所述的方法,其特征在于,在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為語音信號(hào)幀時(shí),使用權(quán)利要求6或7的方法判斷當(dāng)前丟失幀的基音周期值是否可用。
14.如權(quán)利要求13所述的方法,其特征在于,在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為音樂信號(hào)幀時(shí),使用以下方法判斷當(dāng)前丟失幀的基音周期值是否可用,包括: 如果當(dāng)前丟失幀位于靜音段,認(rèn)為基音周期值不可用;或者, 如果當(dāng)前丟失幀不位于靜音段,最大歸一化自相關(guān)值大于第十九閾值r4,o < R4 < I,認(rèn)為基音周期值可用;最大歸一化自相關(guān)值不大于R4,認(rèn)為基音周期值不可用。
15.如權(quán)利要求8~10任意之一所述的方法,其特征在于,還包括:在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)后,在補(bǔ)償信號(hào)中添加噪聲 。
16.如權(quán)利要求15所述的方法,其特征在于,在補(bǔ)償信號(hào)中添加噪聲,包括: 將歷史信號(hào)或初始補(bǔ)償信號(hào)本身,通過一個(gè)高通濾波器或者頻譜傾斜濾波器得到噪聲信號(hào); 估計(jì)當(dāng)前丟失幀的噪聲增益值; 將得到的噪聲信號(hào)乘以估計(jì)得到的當(dāng)前丟失幀的噪聲增益值,將乘噪聲增益值后的噪聲信號(hào)加入所述補(bǔ)償信號(hào)中。
17.如權(quán)利I所述的方法,其特征在于,還包括: 在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,還將補(bǔ)償信號(hào)乘以尺度因子。
18.如權(quán)利17所述的方法,其特征在于,還包括: 在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
19.一種變換域的丟幀補(bǔ)償方法,其特征在于,所述方法包括: 獲得當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值; 對(duì)獲得的當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值進(jìn)行線性或非線性外推,得到當(dāng)iu丟失幀的各頻點(diǎn)的相位和幅值; 通過當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值得到當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù),通過頻域-時(shí)域變換得到當(dāng)前丟幀的補(bǔ)償信號(hào)。
20.如權(quán)利要求19所述的方法,其特征在于,獲得當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值;對(duì)獲得的當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值進(jìn)行線性或非線性外推,得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值;通過當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值得到當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù),包括: 在當(dāng)前丟失幀為第P幀時(shí),對(duì)當(dāng)前丟失幀之前的若干幀時(shí)域信號(hào),采用改進(jìn)的離散正弦變換MDST算法得到第P-2幀和第P-3幀的MDST系數(shù),將得到的第p_2幀和第p_3幀的MDST系數(shù)與第p-2幀和第p-3幀的MDCT系數(shù)組成MDCT-MDST域的復(fù)數(shù)信號(hào); 將第p-2幀和第p-3幀的相位線性外推得到第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位; 使用第P-2幀相應(yīng)頻點(diǎn)的幅值代替第P幀各頻點(diǎn)的幅值; 根據(jù)第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位和第P幀各頻點(diǎn)的幅值推斷第P幀在各頻點(diǎn)的MDCT系數(shù)。
21.如權(quán)利要求20所述的方法,其特征在于,還包括: 根據(jù)當(dāng)前丟失幀之前的最近c(diǎn)個(gè)正確接收幀的幀類型,選擇是否對(duì)當(dāng)前丟失幀的各頻點(diǎn)均利用當(dāng)前丟失幀之前若干幀的各頻點(diǎn)處的相位和幅值,進(jìn)行線性或非線性外推得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值。
22.如權(quán)利要求19所述的方法,其特征在于,還包括: 在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,還將補(bǔ)償信號(hào)乘以尺度因子。
23.如權(quán)利要求22所述·的方法,其特征在于,還包括: 在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
24.一種變換域的丟幀補(bǔ)償方法,其特征在于: 通過判斷算法,選擇使用權(quán)利要求1~18或者權(quán)利要求19~23的方法補(bǔ)償當(dāng)前丟失幀。
25.如權(quán)利要求24所述的方法,其特征在于,通過判斷算法,選擇使用權(quán)利要求1~18或者權(quán)利要求19~23的方法補(bǔ)償當(dāng)前丟失幀,包括: 判斷幀類型,如果當(dāng)前丟失幀為音調(diào)幀,則使用權(quán)利要求19~23的方法補(bǔ)償當(dāng)前丟失幀;如果當(dāng)前丟失幀為非音調(diào)幀,則使用權(quán)利要求1~18的方法補(bǔ)償當(dāng)前丟失幀。
26.如權(quán)利要求25所述的方法,其特征在于,判斷幀類型,包括: 獲取當(dāng)前丟失幀的前η個(gè)正確接收幀的幀類型標(biāo)識(shí),如果前η個(gè)正確接收幀中音調(diào)幀的數(shù)目大于第十一閾值IV則認(rèn)為當(dāng)前丟失幀為音調(diào)幀;否則認(rèn)為當(dāng)前丟失幀為非音調(diào)幀,其中,0 ^ n0 ^ η, n ^ 10
27.如權(quán)利要求25所述的方法,其特征在于,判斷幀類型,包括: 計(jì)算幀的譜平坦度,判斷譜平坦度的值是否小于第十閾值K,如果小于K則認(rèn)為該幀為音調(diào)幀;否則,認(rèn)為該幀為非音調(diào)幀,其中,O < K < I。
28.如權(quán)利要求27所述的方法,其特征在于,在計(jì)算譜平坦度時(shí),用于計(jì)算的頻域系數(shù)是時(shí)域-頻域變化后原始的頻域系數(shù),或是將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)。
29.如權(quán)利要求25所述的方法,其特征在于,判斷幀類型,包括:使用時(shí)域-頻域變化后原始的頻域系數(shù)以及將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)分別計(jì)算幀的譜平坦度,得到幀對(duì)應(yīng)的兩個(gè)譜平坦度; 根據(jù)得到的其中一個(gè)譜平坦度的值是否小于第十閾值K,設(shè)定該幀是否為音調(diào)幀;根據(jù)得到的其中另一個(gè)譜平坦度的值是否小于另一閾值K’,重新設(shè)定該幀是否為音調(diào)幀; 其中,在譜平坦度的值小于K時(shí),則設(shè)定幀為音調(diào)幀;否則,設(shè)定幀為非音調(diào)幀,在另一個(gè)譜平坦度的值小于K’時(shí),重新設(shè)定該幀為音調(diào)幀;其中,OSKSl,OS K’ <1。
30.一種變換域的丟幀補(bǔ)償裝置,其特征在于,所述裝置包括:頻域系數(shù)計(jì)算單元、變換單元和波形調(diào)整單元,其中: 所述頻域系數(shù)計(jì)算單元,用于使用當(dāng)前丟失幀的前一幀或前若干幀的頻域系數(shù),計(jì)算當(dāng)前丟失幀的頻域系數(shù); 所述變換單元,用于對(duì)所述頻域系數(shù)計(jì)算單元計(jì)算得到的當(dāng)前丟失幀的頻域系數(shù)進(jìn)行頻域-時(shí)域變換,得到當(dāng)前丟失幀的初始補(bǔ)償信號(hào); 所述波形調(diào)整單元,用于對(duì)所述初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整,得到當(dāng)前丟失幀的補(bǔ)償信號(hào)。
31.如權(quán)利要求30所述的裝置,其特征在于: 所述波形調(diào)整單元,具體用于對(duì)當(dāng)前丟失幀進(jìn)行基音周期估計(jì),判斷基音周期估計(jì)得到的基音周期值是否可用,如果基音周期值不可用,則將當(dāng)前丟失幀的初始補(bǔ)償信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào);如果基音周期值可用,則使用當(dāng)前丟失幀的前一幀的時(shí)域信號(hào)對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整。
32.如權(quán)利要求31所述的裝置,其特征在于,所述波形調(diào)整單元包括基音周期子單元,其中: 所述基音周期子單元,用于對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索,得到當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值和最大歸一化自相關(guān)值,將得到的基音周期值作為當(dāng)前丟失幀的基音周期值;或者, 計(jì)算出當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的基音周期值,將計(jì)算得到的基音周期值作為當(dāng)前丟失幀的基音周期值,利用計(jì)算得到的基音周期值計(jì)算出當(dāng)前丟失幀的最大歸一化自相關(guān)值。
33.如權(quán)利要求32所述的裝置,其特征在于: 所述基音周期子單元,還用于在對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索之前,對(duì)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行低通濾波或降采樣處理,對(duì)低通濾波或降采樣處理后的當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的時(shí)域信號(hào)進(jìn)行基音搜索。
34.如權(quán)利要求31、32或33所述的裝置,其特征在于,所述波形調(diào)整單元包括基音周期值判斷子單元,其中: 所述基音周期值判斷子單元,用于判斷是否滿足下面條件中的任意一個(gè),如果滿足任意一個(gè),則認(rèn)為基音周期值不可用,包括: (1)第一丟失幀的初始補(bǔ)償信號(hào)的過零率大于第一閾值Z1,其中,Z1> O ; (2)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的低頻能量與整幀能量的比值小于第二閾值 ER1,其中,ER1 > O ;(3)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的譜傾斜小于第三閾值TILT,其中,O<TILT < I ; (4)當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的后半幀的過零率超過前半幀的過零率若干倍。
35.如權(quán)利要求34所述的裝置,其特征在于: 所述基音周期值判斷子單元,還用于在判斷不滿足所述條件(I)~條件(4)中的任意一個(gè)時(shí),按照以下原則進(jìn)行基音周期值是否可用的判斷: (a)在當(dāng)前丟失幀位于靜音段時(shí),認(rèn)為基音周期值不可用; (b)在當(dāng)前丟失幀不位于靜音段,且所述最大歸一化自相關(guān)值大于第四閾值R2時(shí),認(rèn)為基音周期值可用,其中,O < R2 < I ; (C)在不符合原則(a)和原則(b),且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的過零率大于第五閾值Z3,認(rèn)為基音周期值不可用,其中,Z3 > O ; (d)在不符合原則(a)、(b)和(C),且此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量與當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量的差大于第六閾值E4時(shí),認(rèn)為基音周期值不可用,其中,E4 > O ; (e)在不符合原則(a)、(b)、(c)和(d)且當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的對(duì)數(shù)能量與此時(shí)的長(zhǎng)時(shí)對(duì)數(shù)能量的差超過第七閾值E5,并且所述最大歸一化自相關(guān)值大于第八閾值R3時(shí),認(rèn)為基音周期值可用,其中,E5 > O,O < R3 < I ; (f)在不符合原則(a)、(b)、(C)、(d)和(e)時(shí),檢查當(dāng)前丟失幀之前的最后一個(gè)正確接收幀的諧波特性,當(dāng)表示諧波特性的值小于第九閾值H時(shí),認(rèn)為基音周期值不可用;當(dāng)表示諧波特性的值大于等于第九閾值 H時(shí),認(rèn)為基音周期值可用,其中,H < I。
36.如權(quán)利要求31所述的裝置,其特征在于,所述波形調(diào)整單元包括調(diào)整子單元,其中: 所述調(diào)整子單元,用于(i)建立長(zhǎng)度為L(zhǎng)+Q的緩存區(qū),L為幀長(zhǎng),L1 > O ; (?)對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào); (iii)將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的1^長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中I > O,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到; (iv)將緩存區(qū)中的前L長(zhǎng)度的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。
37.如權(quán)利要求36所述的裝置,其特征在于: 所述調(diào)整子單元,還用于為當(dāng)前丟失幀之后的第一個(gè)正確接收幀,構(gòu)建長(zhǎng)度為L(zhǎng)的緩存區(qū),按照步驟(ii)和步驟(iii)相應(yīng)的方法填滿緩存區(qū),將緩存區(qū)中的信號(hào)與對(duì)所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做加窗交疊相加,將得到的信號(hào)作為所述當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào)。
38.如權(quán)利要求31所述的裝置,其特征在于,所述波形調(diào)整單元包括調(diào)整子單元,其中: 所述調(diào)整子單元,用于構(gòu)建長(zhǎng)度為kL的緩存區(qū),L為幀長(zhǎng),k > O ; 對(duì)緩存區(qū)的前L1個(gè)單元進(jìn)行初始化,其中,L1 > O,所述初始化包括:在當(dāng)前丟失幀為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為當(dāng)前丟失幀的初始補(bǔ)償信號(hào)的前L1長(zhǎng)度的信號(hào);在當(dāng)前丟失幀不為第一丟失幀時(shí),配置緩存區(qū)的前L1個(gè)單元為對(duì)當(dāng)前丟失幀的前一個(gè)丟失幀的初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整時(shí)所用緩存區(qū)中的最后L1長(zhǎng)度的信號(hào); 將當(dāng)前丟失幀的前一幀的最后一個(gè)基音周期的時(shí)域信號(hào)連同緩存區(qū)中的L1長(zhǎng)度的信號(hào)一起,不斷重復(fù)復(fù)制到緩存區(qū)中,直至填滿緩存區(qū)得到長(zhǎng)度為kL的時(shí)域信號(hào),在進(jìn)行每次復(fù)制時(shí),如果緩存區(qū)中已有的信號(hào)的長(zhǎng)度為1,那么此次復(fù)制將信號(hào)復(fù)制到緩存區(qū)的1-L1到1+T-1的位置上,其中I > O,T為基音周期,對(duì)于形成的長(zhǎng)度為L(zhǎng)1的交疊區(qū),交疊區(qū)中的信號(hào)由兩部分信號(hào)加窗后對(duì)應(yīng)點(diǎn)相加而得到; 按照時(shí)序順序?qū)⒕彺鎱^(qū)中的信號(hào)依次作為當(dāng)前丟失幀到第q丟失幀的補(bǔ)償信號(hào),在q小于k時(shí),將緩存區(qū)中的第q+Ι幀信號(hào)與對(duì)當(dāng)前丟失幀之后的第一個(gè)正確接收幀解碼得到的時(shí)域信號(hào)做交疊相加,將得到的信號(hào)作為當(dāng)前丟失幀之后的第一個(gè)正確接收幀的時(shí)域信號(hào);或者, 按照時(shí)序順序?qū)⒕彺鎱^(qū)中的前k-Ι幀信號(hào)依次作為當(dāng)前丟失幀到第k-Ι丟失幀的補(bǔ)償信號(hào),緩存區(qū)中的第k幀信號(hào)用于與第k丟失幀的初始補(bǔ)償信號(hào)做交疊相加,將得到的信號(hào)作為第k丟失幀的補(bǔ)償信號(hào)。
39.如權(quán)利要求36、37或38所述的裝置,其特征在于,所述波形調(diào)整單元還包括增益子單元,其中: 所述增益子單元,用于在對(duì)初始補(bǔ)償信號(hào)進(jìn)行波形調(diào)整后,還將波形調(diào)整后的信號(hào)乘以一個(gè)增益,將乘以增益后的信號(hào)作為當(dāng)前丟失幀的補(bǔ)償信號(hào)。
40.如權(quán)利要求32所述的裝置,其特征在于: 所述基音周期子單元在進(jìn)行基音搜索時(shí),對(duì)于語音信號(hào)幀和音樂信號(hào)幀使用不同的基音搜索上下限。
41.如權(quán)利要求35所述的裝置,其特征在于: 所述基音周期值判斷子單元在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為語音信號(hào)幀時(shí),使用權(quán)利要求34或35判斷當(dāng)前丟失幀的基音周期值是否可用。
42.如權(quán)利要求41所述的裝置,其特征在于: 所述基音周期值判斷子單元,還用于在當(dāng)前丟失幀之前的最后一個(gè)正確接收幀為音樂信號(hào)幀時(shí),使用以下方法判斷當(dāng)前丟失幀的基音周期值是否可用,包括: 如果當(dāng)前丟失幀位于靜音段,認(rèn)為基音周期值不可用;或者, 如果當(dāng)前丟失幀不位于靜音段,最大歸一化自相關(guān)值大于第十九閾值氏,0 < R4 < I,認(rèn)為基音周期值可用;最大歸一化自相關(guān)值不大于R4,認(rèn)為基音周期值不可用。
43.如權(quán)利要求36、37或38所述的裝置,其特征在于,所述波形調(diào)整單元還包括噪聲添加子單元,其中: 所述噪聲添加子單元,用于在得到當(dāng)前丟失幀的補(bǔ)償信號(hào)后,在補(bǔ)償信號(hào)中添加噪聲。
44.如權(quán)利要求43所述的裝置,其特征在于: 所述噪聲添加子單元,具體用于將歷史信號(hào)或初始補(bǔ)償信號(hào)本身,通過一個(gè)高通濾波器或者頻譜傾斜濾波器得到噪聲信號(hào); 估計(jì)當(dāng)前丟失幀的噪聲增益值; 將得到的噪聲信號(hào)乘以估計(jì)得到的當(dāng)前丟失幀的噪聲增益值,將乘噪聲增益值后的噪聲信號(hào)加入所述補(bǔ)償信號(hào)中。
45.如權(quán)利要求31所述的裝置,其特征在于,所述裝置還包括尺度因子單元,其中: 所述尺度因子單元,用于在所述波形調(diào)整單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,將補(bǔ)償信號(hào)乘以尺度因子。
46.如權(quán)利要求45所述的裝置,其特征在于: 所述尺度因子單元,具體用于在所述波形調(diào)整單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
47.一種變換域的丟幀補(bǔ)償裝置,其特征在于,所述裝置包括:第一相位幅值獲取單元、第二相位幅值獲取單元和補(bǔ)償信號(hào)獲取單元,其中: 所述第一相位幅值獲取單元,用于獲得當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值; 所述第二相位幅值獲取單元,用于對(duì)獲得的當(dāng)前丟失幀之前若干幀的各頻點(diǎn)的相位和幅值進(jìn)行線性或非線性外推,得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值; 所述補(bǔ)償信號(hào)獲取單元,用于·通過當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值得到當(dāng)前丟失幀的各頻點(diǎn)的頻域系數(shù),通過頻域-時(shí)域變換得到當(dāng)前丟幀的補(bǔ)償信號(hào)。
48.如權(quán)利要求47所述的裝置,其特征在于: 所述第一相位幅值獲取單元,具體用于在當(dāng)前丟失幀為第P幀時(shí),對(duì)當(dāng)前丟失幀之前的若干幀時(shí)域信號(hào),采用改進(jìn)的離散正弦變換MDST算法得到第p-2幀和第p-3幀的MDST系數(shù),將得到的第P-2幀和第p-3幀的MDST系數(shù)與第p-2幀和第p-3幀的MDCT系數(shù)組成MDCT-MDST域的復(fù)數(shù)信號(hào); 所述第二相位幅值獲取單元,具體用于將第P-2幀和第p-3幀的相位線性外推得到第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位;使用第p-2幀相應(yīng)頻點(diǎn)的幅值代替第P幀各頻點(diǎn)的幅值; 所述補(bǔ)償信號(hào)獲取單元,具體用于根據(jù)第P幀各頻點(diǎn)的MDCT-MDST域的復(fù)數(shù)信號(hào)的相位和第P幀各頻點(diǎn)的幅值推斷第P幀在各頻點(diǎn)的MDCT系數(shù)。
49.如權(quán)利要求48所述的裝置,其特征在于,所述裝置還包括頻點(diǎn)選擇單元,其中: 所述頻點(diǎn)選擇單元,用于根據(jù)當(dāng)前丟失幀之前的最近c(diǎn)個(gè)正確接收幀的幀類型,選擇是否對(duì)當(dāng)前丟失幀的各頻點(diǎn)均利用當(dāng)前丟失幀之前若干幀的各頻點(diǎn)處的相位和幅值,進(jìn)行線性或非線性外推得到當(dāng)前丟失幀的各頻點(diǎn)的相位和幅值。
50.如權(quán)利要求37所述的裝置,其特征在于,所述裝置還包括尺度因子單元,其中: 所述尺度因子單元,用于在所述補(bǔ)償信號(hào)獲取單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,將補(bǔ)償信號(hào)乘以尺度因子。
51.如權(quán)利要求50所述的裝置,其特征在于:所述尺度因子單元,具體用于在所述補(bǔ)償信號(hào)獲取單元得到當(dāng)前丟失幀的補(bǔ)償信號(hào)之后,根據(jù)當(dāng)前丟失幀的幀類型,確定是否將當(dāng)前丟失幀的補(bǔ)償信號(hào)乘以尺度因子,如果確定乘以尺度因子,則進(jìn)行所述將補(bǔ)償信號(hào)乘以尺度因子的操作。
52.一種變換域的丟幀補(bǔ)償裝置,其特征在于,所述裝置包括:判斷單元,其中: 所述判斷單元,用于通過判斷算法,選擇使用權(quán)利要求30~46或者權(quán)利要求47~51的裝置補(bǔ)償當(dāng)前丟失幀。
53.如權(quán)利要求52所述的裝置,其特征在于: 所述判斷單元,具體用于判斷幀類型,如果當(dāng)前丟失幀為音調(diào)幀,則使用權(quán)利要求47~51的裝置補(bǔ)償當(dāng)前丟失幀;如果當(dāng)前丟失幀為非音調(diào)幀,則使用權(quán)利要求30~46的裝置補(bǔ)償當(dāng)前丟失幀。
54.如權(quán)利要求53所述的裝置,其特征在于: 所述判斷單元,具體用于獲取當(dāng)前丟失幀的前η個(gè)正確接收幀的幀類型標(biāo)識(shí),如果前η個(gè)正確接收幀中音調(diào)幀的數(shù)目大于第十一閾值η0,則認(rèn)為當(dāng)前丟失幀為音調(diào)幀;否則認(rèn)為當(dāng)前丟失幀為非音調(diào)幀,其中,O ^nO ^ η, n ^ 10
55.如權(quán)利要求53所述的裝置,其特征在于: 所述判斷單元,具體用于計(jì)算幀的譜平坦度,判斷譜平坦度的值是否小于第十閾值K,如果小于K則認(rèn)為該幀為音調(diào)幀;否則,認(rèn)為該幀為非音調(diào)幀,其中,O < K < I。
56.如權(quán)利要求55所述的裝置,其特征在于: 所述判斷單元在計(jì)算譜平坦度時(shí),用于計(jì)算的頻域系數(shù)是時(shí)域-頻域變化后原始的頻域系數(shù),或是將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)。
57.如權(quán)利要求53所述的裝置,其特征在于: 所述判斷單元,具體用于使用時(shí)域-頻域變化后原始的頻域系數(shù)以及將原始頻域系數(shù)經(jīng)過頻譜整形后的頻域系數(shù)分別計(jì)算幀的譜平坦度,得到幀對(duì)應(yīng)的兩個(gè)譜平坦度; 根據(jù)得到的其中一個(gè)譜平坦度的值是否小于第十閾值K,設(shè)定該幀是否為音調(diào)幀;根據(jù)得到的其中另一個(gè)譜平坦度的值是否小于另一閾值K’,重新設(shè)定該幀是否為音調(diào)幀;其中,在譜平坦度的值小于K時(shí),則設(shè)定幀為音調(diào)幀;否則,設(shè)定幀為非音調(diào)幀,在另一個(gè)譜平坦度的值小于K’時(shí),重新設(shè)定該幀為音調(diào)幀;其中,O < K < 1,0 < K’ < I。
【文檔編號(hào)】G10L19/005GK103854649SQ201210498677
【公開日】2014年6月11日 申請(qǐng)日期:2012年11月29日 優(yōu)先權(quán)日:2012年11月29日
【發(fā)明者】關(guān)旭, 袁浩, 劉末飛 申請(qǐng)人:中興通訊股份有限公司