欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種丟幀補(bǔ)償?shù)姆椒敖K端與流程

文檔序號:12473173閱讀:272來源:國知局
一種丟幀補(bǔ)償?shù)姆椒敖K端與流程

本發(fā)明涉及終端領(lǐng)域,具體涉及了一種丟幀補(bǔ)償?shù)姆椒敖K端。



背景技術(shù):

近年來,隨著互聯(lián)網(wǎng)的高速發(fā)展和長途通訊需求的不斷增長,基于語音包交換的VOIP(Voice over Internet Protocol,網(wǎng)際語音呼叫)技術(shù)以其良好的通話質(zhì)量越來越受到用戶的青睞,由于語音包在網(wǎng)絡(luò)傳輸過程中被破壞或者網(wǎng)絡(luò)擁塞等各種原因而丟失(稱為丟幀),此時通話過程中就容易產(chǎn)生語音卡頓、不清晰等現(xiàn)象。

進(jìn)一步,目前的語音編碼器多數(shù)采用幀間相關(guān)的編解碼端同步的方法,這類編碼器可以在相同碼率下提供更高質(zhì)量的語音,但在丟幀情況下,由于幀間相關(guān)性,其語音質(zhì)量下降也比較明顯。



技術(shù)實現(xiàn)要素:

本發(fā)明實施例提供了一種丟幀補(bǔ)償?shù)姆椒敖K端,能夠在丟幀的情況下,有效地進(jìn)行丟幀重建,從而提升語音質(zhì)量。

本發(fā)明實施例第一方面公開了一種丟幀補(bǔ)償?shù)姆椒?,所述方法包括?/p>

接收語音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);

獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;

若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;

若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);

對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

結(jié)合第一方面,在第一方面的第一種可能的實現(xiàn)方式中,所述根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù),包括:

判斷所述前一有效幀是否為濁音;

若所述前一有效幀為濁音,則判斷所述后續(xù)有效幀是否為濁音;

若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則判斷基音周期是否突變;

若所述基音周期突變,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

結(jié)合第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,所述方法還包括:

若所述基音周期沒有突變,則根據(jù)插值法對所述前一有效幀的基音周期和后續(xù)有效幀的基音周期進(jìn)行計算以確定所述當(dāng)前幀的基音周期。

結(jié)合第一方面的第二種可能的實現(xiàn)方式,在第一方面的第三種可能的實現(xiàn)方式中,所述方法還包括:

若所述前一有效幀不是濁音,則將所述當(dāng)前幀的基音周期設(shè)置為零。

結(jié)合第一方面的第三種可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式中,所述方法還包括:

若所述前一有效幀時濁音且所述后續(xù)有效幀不是濁音,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

結(jié)合第一方面的第四種可能的實現(xiàn)方式,在第一方面的第五種可能的實現(xiàn)方式中,所述方法還包括:

若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則利用插值法對所述前一有效幀的增益和后續(xù)有效幀的增益進(jìn)行計算以確定所述當(dāng)前幀的增益參數(shù)。

結(jié)合第一方面的第五種可能的實現(xiàn)方式,在第一方面的第六種可能的實現(xiàn)方式中,所述方法還包括:

若所述前一有效幀不是濁音且所述后續(xù)有效幀不是濁音,則使用預(yù)設(shè)衰減系數(shù)對所述前一有效幀的增益進(jìn)行衰減以確定所述當(dāng)前幀的增益參數(shù)。

結(jié)合第一方面的第六種可能的實現(xiàn)方式,在第一方面的第七種可能的實現(xiàn)方式中,所述方法還包括;

利用插值法對所述前一有效幀的線譜對子和后續(xù)有效幀的線譜對子進(jìn)行計算以確定所述當(dāng)前幀的線譜對子參數(shù)。

結(jié)合第一方面的第七種可能的實現(xiàn)方式,在第一方面的第八種可能的實現(xiàn)方式中,所述方法還包括:

若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型相同,則保持所述當(dāng)前幀的固定碼本激勵參數(shù)與所述前一有效幀的固定碼本激勵參數(shù)一致。

結(jié)合第一方面的第八種可能的實現(xiàn)方式,在第一方面的第九種可能的實現(xiàn)方式中,所述方法還包括:

若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型不相同,則根據(jù)所述當(dāng)前幀的序列號和預(yù)設(shè)閾值確定所述當(dāng)前幀的固定碼本激勵參數(shù)。

結(jié)合第一方面或第一方面的第一種至第九種任意一種可能的實現(xiàn)方式,在第一方面的第十種可能的實現(xiàn)方式中,所述方法還包括:

若不存在后續(xù)有效幀,則根據(jù)所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù)。

本發(fā)明第二方面公開了一種終端,所述終端包括:

接收單元,用于接收語音數(shù)據(jù)流;

存儲單元,用于將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);

獲取單元,用于獲取所述抖動緩沖區(qū)的狀態(tài);

確定單元,用于根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;

判斷單元,用于若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;

估計單元,用于若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);

解碼單元,用于對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

結(jié)合第二方面,在第二方面的第一種可能的實現(xiàn)方式中,所述估計單元包括判斷子單元和確定子單元;

所述判斷子單元,用于判斷所述前一有效幀是否為濁音;

所述判斷子單元,用于若所述前一有效幀為濁音,則判斷所述后續(xù)有效幀是否為濁音;

所述判斷子單元,用于若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則判斷基音周期是否突變;

所述確定子單元,用于若所述基音周期突變,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

結(jié)合第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,所述估計單元還包括計算子單元;

所述計算子單元,用于若所述基音周期沒有突變,則根據(jù)插值法對所述前一有效幀的基音周期和后續(xù)有效幀的基音周期進(jìn)行計算以確定所述當(dāng)前幀的基音周期。

結(jié)合第二方面的第二種可能的實現(xiàn)方式,在第二方面的第三種可能的實現(xiàn)方式中,所述估計單元還包括設(shè)置子單元;

所述設(shè)置子單元,用于若所述前一有效幀不是濁音,則將所述當(dāng)前幀的基音周期設(shè)置為零。

結(jié)合第二方面的第三種可能的實現(xiàn)方式,在第二方面的第四種可能的實現(xiàn)方式中,所述估計單元還包括確定子單元;

所述確定子單元,用于若所述前一有效幀時濁音且所述后續(xù)有效幀不是濁音,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

結(jié)合第二方面的第四種可能的實現(xiàn)方式,在第二方面的第五種可能的實現(xiàn)方式中,

所述計算子單元,用于若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則利用插值法對所述前一有效幀的增益和后續(xù)有效幀的增益進(jìn)行計算以確定所述當(dāng)前幀的增益參數(shù)。

結(jié)合第二方面的第五種可能的實現(xiàn)方式,在第二方面的第六種可能的實現(xiàn)方式中,所述計算子單元,用于若所述前一有效幀不是濁音且所述后續(xù)有效幀不是濁音,則使用預(yù)設(shè)衰減系數(shù)對所述前一有效幀的增益進(jìn)行衰減以確定所述當(dāng)前幀的增益參數(shù)。

結(jié)合第二方面的第六種可能的實現(xiàn)方式,在第二方面的第七種可能的實現(xiàn)方式中,所述計算單元,用于利用插值法對所述前一有效幀的線譜對子和后續(xù)有效幀的線譜對子進(jìn)行計算以確定所述當(dāng)前幀的線譜對子參數(shù)。

結(jié)合第二方面的第七種可能的實現(xiàn)方式,在第二方面的第八種可能的實現(xiàn)方式中,所述設(shè)置子單元,用于若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型相同,則保持所述當(dāng)前幀的固定碼本激勵參數(shù)與所述前一有效幀的固定碼本激勵參數(shù)一致。

結(jié)合第二方面的第八種可能的實現(xiàn)方式,在第二方面的第九種可能的實現(xiàn)方式中,所述確定子單元,用于若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型不相同,則根據(jù)所述當(dāng)前幀的序列號和預(yù)設(shè)閾值確定所述當(dāng)前幀的固定碼本激勵參數(shù)。

結(jié)合第二方面或第二方面的第一種至第九種任意一種可能的實現(xiàn)方式,在第二方面的第十種可能的實現(xiàn)方式中,所述估計單元,還用于若不存在后續(xù)有效幀,則根據(jù)所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù)。

本發(fā)明第三方面公開了一種終端,所述終端包括:

存儲有可執(zhí)行程序代碼的存儲器;

與所述存儲器耦合的處理器;

所述處理器調(diào)用所述存儲器中存儲的所述可執(zhí)行程序代碼,執(zhí)行如第一方面或第一方面的第一種至第四種中任意一種可能的實現(xiàn)方式所述的方法。

可以看出,本發(fā)明實施例的方案中,接收語音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。從而可知,通過實施本發(fā)明提供的技術(shù)方案,能夠在丟幀的情況下,有效地進(jìn)行丟幀重建,從而提升語音質(zhì)量。

附圖說明

為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本發(fā)明實施例提供的一種丟幀補(bǔ)償?shù)姆椒ǖ牧鞒淌疽鈭D;

圖2為本發(fā)明實施例提供的另一種丟幀補(bǔ)償?shù)姆椒ǖ牧鞒淌疽鈭D;

圖3為本發(fā)明實施例提供的一種終端的結(jié)構(gòu)示意圖;

圖4為本發(fā)明實施例提供的另一種終端的結(jié)構(gòu)示意圖;

圖5為本發(fā)明實施例提供的一種終端的實體裝置結(jié)構(gòu)示意圖。

具體實施方式

本發(fā)明實施例提供了一種丟幀補(bǔ)償?shù)姆椒敖K端,能夠在丟幀的情況下,有效地進(jìn)行丟幀重建,從而提升語音質(zhì)量。

為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚地描述,顯然,所描述的實施例是本發(fā)明一部分的實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。

本發(fā)明說明書、權(quán)利要求書和附圖中出現(xiàn)的術(shù)語“第一”、“第二”和“第三”等是用于區(qū)別不同的對象,而并非用于描述特定的順序。此外,術(shù)語“包括”和“具有”以及它們?nèi)魏巫冃?,意圖在于覆蓋不排他的包含。例如包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備沒有限定于已列出的步驟或單元,而是可選地還包括沒有列出的步驟或單元,或可選地還包括對于這些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。

在本發(fā)明的一個實施例中公開了一種丟幀補(bǔ)償?shù)姆椒ǎ龇椒òǎ航邮照Z音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

請參閱圖1,圖1是本發(fā)明一個實施例提供的一種丟幀補(bǔ)償?shù)姆椒ǖ牧鞒淌疽鈭D。其中,如圖1所示,本發(fā)明的一個實施例提供的一種丟幀補(bǔ)償?shù)姆椒òㄒ韵聝?nèi)容:

S101、接收語音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);

需要指出的是,該方法的執(zhí)行主體是終端,例如可以為智能手機(jī)、平板電腦、智能穿戴式設(shè)備、計算機(jī)等電子設(shè)備。

具體的,終端中可以安裝具備網(wǎng)絡(luò)通信功能的客戶端。其中,語音數(shù)據(jù)流通過網(wǎng)絡(luò)到達(dá)客戶端,然后將接收到語音數(shù)據(jù)流輸入緩存進(jìn)抖動緩沖區(qū)。

S102、獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;

其中,抖動緩沖區(qū)可以給出的當(dāng)前丟幀的序號和連續(xù)丟幀數(shù)等信息。

其中,需要指出的是,如果沒有丟幀,那么就可以提取正常的參數(shù),然后對參數(shù)進(jìn)行解碼。

S103、若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;

S104、若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);

其中,當(dāng)前幀的參數(shù)包括但不限于基音周期、碼本激勵、增益等參數(shù)。

其中,可選的,若不存在后續(xù)有效幀,則根據(jù)所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù)。

由于語音具有清濁音之分,所以在語音模型中對濁音(周期性信號)和清音(非周期性信號)的編碼方式具有明顯區(qū)別。因此,在丟幀的環(huán)境下,會對丟失的幀進(jìn)行信號分類,以根據(jù)信號類型進(jìn)行不同的參數(shù)估計方式。

可選的,根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù)包括:判斷所述前一有效幀是否為濁音;若所述前一有效幀為濁音,則判斷所述后續(xù)有效幀是否為濁音;若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則判斷基音周期是否突變;若所述基音周期突變,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期;若所述基音周期沒有突變,則根據(jù)插值法對所述前一有效幀的基音周期和后續(xù)有效幀的基音周期進(jìn)行計算以確定所述當(dāng)前幀的基音周期。

可選的,若所述前一有效幀不是濁音,則將所述當(dāng)前幀的基音周期設(shè)置為零。

可選的,若所述前一有效幀時濁音且所述后續(xù)有效幀不是濁音,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

舉例來說,當(dāng)前丟失幀狀態(tài)由抖動緩沖區(qū)給出,包括當(dāng)前丟幀的連續(xù)丟幀數(shù)目NumOfLostFrames和當(dāng)前丟幀序號CurLostSeqNum(從序號0開始,最大為NumOfLostFrames-1),及丟幀數(shù)閾值Threshold.而一般地,設(shè)定Threshold=NumOfLostFrames/2;假設(shè)前一有效濁音幀的基音周期為prevPitch,當(dāng)前丟失幀基音周期為CurPitch,子幀長度為SUBFR。

情況1、當(dāng)CurLostSeqNum<Threshold,CurPitch=prevPitch;

情況2、當(dāng)CurLostSeqNum>=Threshold,CurPitch=prevPitch+CurLostSeqNum*SUBFR;

若是濁音幀,判斷基音周期是否存在突變,因為人在說話中可能突然提高或者降低聲調(diào),或者即使在穩(wěn)定濁音話語中,因為言語的不同,同樣可能存在基音周期的突變。假設(shè)NextPitch為后一有效幀基音周期,然后用前后有效幀基音周期的差值的絕對值與預(yù)設(shè)的偏移閾值θ(一般取值為10-20之間)進(jìn)行比較,來判斷是否存在突變。

|prevPitch–NextPitch|>θ

若滿足上式,則判定基音周期存在突變,基音周期為:

情況1、當(dāng)CurLostSeqNum<Threshold,CurPitch=prevPitch

情況2、當(dāng)CurLostSeqNum>=Threshold,CurPitch=NextPitch

否則,則判定基音周期進(jìn)行平滑演進(jìn),設(shè)演進(jìn)增量incIndex0,其中,

incIndex0=(NextPitch-prevPitch)/(NumOfLostFrames+1);

當(dāng)前丟失幀的基音周期計算方法為:

CurPitch=prevPitch+incIndex0*(CurLostSeqNum+1);

可選的,若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則利用插值法對所述前一有效幀的增益和后續(xù)有效幀的增益進(jìn)行計算以確定所述當(dāng)前幀的增益參數(shù)。若所述前一有效幀不是濁音且所述后續(xù)有效幀不是濁音,則使用預(yù)設(shè)衰減系數(shù)對所述前一有效幀的增益進(jìn)行衰減以確定所述當(dāng)前幀的增益參數(shù)。

舉例來說,當(dāng)前后有效幀的信號類型都為濁音時,使用線性的插值方法,假設(shè)前一有效幀的增益為prevGain,后一有效幀的增益為nextGain,則增益的演進(jìn)增量為incIndex1=(nextGain-prevGain)/(NumOfLostFrames+1);

則當(dāng)前丟失幀的增益curGain為

curGain=prevGain*incIndex1*(CurLostSeqNum+1);

舉例來說,當(dāng)前后有效幀的信號類型都不為濁音時,則使用衰減系數(shù)對前一有效幀的增益進(jìn)行衰減,一般來說連續(xù)丟幀數(shù)少時,衰減較慢,后續(xù)衰減較快,衰減系數(shù)通??蔀閧0.99,0.9,0.5,0.2},超過4幀時,則系數(shù)都為0.2。

可選的,利用插值法對所述前一有效幀的線譜對子和后續(xù)有效幀的線譜對子進(jìn)行計算以確定所述當(dāng)前幀的線譜對子參數(shù)。

舉例來說,根據(jù)后一有效幀的LSP(Line Spectral Pairs,線譜對子)參數(shù),結(jié)合前一有效幀參數(shù)進(jìn)行插值。插值的系數(shù)α計算如下:

α=(CurLostSeqNum+1)/(NumOfLostFrames+1);

當(dāng)前丟失幀的M階LSP系數(shù)通過下式實現(xiàn)線性插值,假設(shè)前一有效幀的LSP系數(shù)為prevLsp[M],后一有效幀的LSP系數(shù)為nextLsp[M]:

curLsp[i]=(1-α)*prevLsp[i]+α*nestLsp[i],i={0,1,...,M-1}。

可選的,若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型相同,則保持所述當(dāng)前幀的固定碼本激勵參數(shù)與所述前一有效幀的固定碼本激勵參數(shù)一致。若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型不相同,則根據(jù)所述當(dāng)前幀的序列號和預(yù)設(shè)閾值確定所述當(dāng)前幀的固定碼本激勵參數(shù)。

舉例來說,如果前后有效幀的信號類型一樣,則當(dāng)前幀的固定碼本激勵參數(shù)直接使用前一有效幀的固定碼本激勵參數(shù);如果前后有效幀的信號類型不一樣,則當(dāng)CurLostSeqNum<Threshold,使用前一有效幀的固定碼本激勵參數(shù),CurLostSeqNum>=Threshold,使用后一有效幀的固定碼本激勵參數(shù)。

S105、對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

可以看出,本發(fā)明實施例的方案中,接收語音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。從而可知,通過實施本發(fā)明提供的技術(shù)方案,能夠在丟幀的情況下,有效地進(jìn)行丟幀重建,從而提升語音質(zhì)量。

請參閱圖2,圖2是本發(fā)明的另一個實施例提供的一種丟幀補(bǔ)償?shù)姆椒ǖ牧鞒淌疽鈭D。其中,如圖2所示,本發(fā)明的另一個實施例提供的另一種丟幀補(bǔ)償?shù)姆椒梢园ㄒ韵聝?nèi)容:

S201、接收語音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū)。

需要指出的是,該方法的執(zhí)行主體是終端,例如可以為智能手機(jī)、平板電腦、智能穿戴式設(shè)備、計算機(jī)等電子設(shè)備。

S202、獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀。

S203、若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀。

S204、若不存在后續(xù)有效幀,則根據(jù)所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù)。

S205、若存在后續(xù)有效幀,判斷所述前一有效幀是否為濁音。

S206、若所述前一有效幀不是濁音,則將所述當(dāng)前幀的基音周期設(shè)置為零。

S207、若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則判斷基音周期是否突變。

S208、若所述基音周期突變,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期。

其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

S209、若所述基音周期沒有突變,則根據(jù)插值法對所述前一有效幀的基音周期和后續(xù)有效幀的基音周期進(jìn)行計算以確定所述當(dāng)前幀的基音周期。

S210、若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則利用插值法對所述前一有效幀的增益和后續(xù)有效幀的增益進(jìn)行計算以確定所述當(dāng)前幀的增益參數(shù);若所述前一有效幀不是濁音且所述后續(xù)有效幀不是濁音,則使用預(yù)設(shè)衰減系數(shù)對所述前一有效幀的增益進(jìn)行衰減以確定所述當(dāng)前幀的增益參數(shù)。

S211、利用插值法對所述前一有效幀的線譜對子和后續(xù)有效幀的線譜對子進(jìn)行計算以確定所述當(dāng)前幀的線譜對子參數(shù)。

S212、若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型相同,則保持所述當(dāng)前幀的固定碼本激勵參數(shù)與所述前一有效幀的固定碼本激勵參數(shù)一致;若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型不相同,則根據(jù)所述當(dāng)前幀的序列號和預(yù)設(shè)閾值確定所述當(dāng)前幀的固定碼本激勵參數(shù)。

S213、對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

其中,所述當(dāng)前幀的參數(shù)包括但不限于基音周期、增益固定碼本激勵以及線譜對子等。

可以看出,本發(fā)明實施例的方案中擴(kuò)充了估計丟失幀參數(shù)的過程。從而可知,通過實施本發(fā)明提供的技術(shù)方案,有效地進(jìn)行丟幀重建,從而提升語音質(zhì)量。

請參閱圖3,圖3是本發(fā)明的一個實施例提供的一種終端的結(jié)構(gòu)示意圖。其中,如圖3所示,本發(fā)明的一個實施例提供的一種終端300,其中,該終端可以是智能手機(jī)、平板電腦、智能穿戴設(shè)備等設(shè)備。該終端300包括接收單元301、存儲單元302,獲取單元303、確定單元304、判斷單元305、估計單元306以及解碼單元307;

接收單元301,用于接收語音數(shù)據(jù)流;

存儲單元302,用于將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);

獲取單元303,用于獲取所述抖動緩沖區(qū)的狀態(tài);

確定單元304,用于根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;

判斷單元305,用于若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;

估計單元306,用于若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);

解碼單元307,用于對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

其中,接收單元301、存儲單元302,獲取單元303、確定單元304、判斷單元305、估計單元306以及解碼單元307可以用于執(zhí)行實施例1中步驟S101至S105所述的方法,具體描述詳見實施例1對所述方法的描述,在此不再贅述。

請參閱圖4,圖4是本發(fā)明的一個實施例提供的一種終端的結(jié)構(gòu)示意圖。其中,如圖4所示,本發(fā)明的一個實施例提供的一種終端400,其中,該終端可以是智能手機(jī)、平板電腦、智能穿戴設(shè)備等設(shè)備。該終端400包括接收單元401、存儲單元402,獲取單元403、確定單元404、判斷單元405、估計單元406以及解碼單元407;其中,估計單元406包括判斷子單元4061、確定子單元4062、計算子單元4063以及設(shè)置子單元4064;

接收單元401,用于接收語音數(shù)據(jù)流;

存儲單元402,用于將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);

獲取單元403,用于獲取所述抖動緩沖區(qū)的狀態(tài);

確定單元404,用于根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;

判斷單元405,用于若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;

估計單元406,用于若不存在后續(xù)有效幀,則根據(jù)所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù)

估計單元406,還用于若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);

其中,估計當(dāng)前幀的參數(shù)的過程具體包括:

判斷子單元4061,用于判斷所述前一有效幀是否為濁音;

判斷子單元4061,還用于若所述前一有效幀為濁音,則判斷所述后續(xù)有效幀是否為濁音;

判斷子單元4061,還用于若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則判斷基音周期是否突變;

確定子單元4062,用于若所述基音周期突變,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

計算子單元4063用于若所述基音周期沒有突變,則根據(jù)插值法對所述前一有效幀的基音周期和后續(xù)有效幀的基音周期進(jìn)行計算以確定所述當(dāng)前幀的基音周期。

設(shè)置子單元4064,用于若所述前一有效幀不是濁音,則將所述當(dāng)前幀的基音周期設(shè)置為零。

確定子單元4062,還用于若所述前一有效幀時濁音且所述后續(xù)有效幀不是濁音,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

計算子單元4063,用于若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則利用插值法對所述前一有效幀的增益和后續(xù)有效幀的增益進(jìn)行計算以確定所述當(dāng)前幀的增益參數(shù)。

計算子單元4063,還用于若所述前一有效幀不是濁音且所述后續(xù)有效幀不是濁音,則使用預(yù)設(shè)衰減系數(shù)對所述前一有效幀的增益進(jìn)行衰減以確定所述當(dāng)前幀的增益參數(shù)。

計算子單元4063,還用于利用插值法對所述前一有效幀的線譜對子和后續(xù)有效幀的線譜對子進(jìn)行計算以確定所述當(dāng)前幀的線譜對子參數(shù)。

設(shè)置子單元4064,用于若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型相同,則保持所述當(dāng)前幀的固定碼本激勵參數(shù)與所述前一有效幀的固定碼本激勵參數(shù)一致。

確定子單元4062,還用于若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型不相同,則根據(jù)所述當(dāng)前幀的序列號和預(yù)設(shè)閾值確定所述當(dāng)前幀的固定碼本激勵參數(shù)。

解碼單元407,用于對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

其中,接收單元401、存儲單元402,獲取單元403、確定單元404、判斷單元405、估計單元406以及解碼單元407可以用于執(zhí)行實施例2中步驟S201至S213所述的方法,具體描述詳見實施例2對所述方法的描述,在此不再贅述。

請參閱圖5,在本發(fā)明的另一個實施例中,提供一種終端。所述終端500包括CPU501、存儲器502、總線503,顯示屏504等硬件。其中,該終端500可以是智能手機(jī)、平板電腦、智能穿戴設(shè)備等設(shè)備。

其中,CPU501執(zhí)行預(yù)先存儲在存儲器502中的程序,該執(zhí)行過程具體包括:

接收語音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。

可選的,所述根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù),包括:

判斷所述前一有效幀是否為濁音;

若所述前一有效幀為濁音,則判斷所述后續(xù)有效幀是否為濁音;

若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則判斷基音周期是否突變;

若所述基音周期突變,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

可選的,執(zhí)行過程還包括:

若所述基音周期沒有突變,則根據(jù)插值法對所述前一有效幀的基音周期和后續(xù)有效幀的基音周期進(jìn)行計算以確定所述當(dāng)前幀的基音周期。

可選的,執(zhí)行過程還包括:

若所述前一有效幀不是濁音,則將所述當(dāng)前幀的基音周期設(shè)置為零。

可選的,執(zhí)行過程還包括:

若所述前一有效幀時濁音且所述后續(xù)有效幀不是濁音,則根據(jù)所述當(dāng)前幀狀態(tài)確定所述當(dāng)前幀的基音周期,其中,所述當(dāng)前幀的基音周期為所述當(dāng)前幀的參數(shù)。

可選的,執(zhí)行過程還包括:

若所述前一有效幀為濁音且所述后續(xù)有效幀為濁音,則利用插值法對所述前一有效幀的增益和后續(xù)有效幀的增益進(jìn)行計算以確定所述當(dāng)前幀的增益參數(shù)。

可選的,執(zhí)行過程還包括:

若所述前一有效幀不是濁音且所述后續(xù)有效幀不是濁音,則使用預(yù)設(shè)衰減系數(shù)對所述前一有效幀的增益進(jìn)行衰減以確定所述當(dāng)前幀的增益參數(shù)。

可選的,執(zhí)行過程還包括:

利用插值法對所述前一有效幀的線譜對子和后續(xù)有效幀的線譜對子進(jìn)行計算以確定所述當(dāng)前幀的線譜對子參數(shù)。

可選的,執(zhí)行過程還包括:

若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型相同,則保持所述當(dāng)前幀的固定碼本激勵參數(shù)與所述前一有效幀的固定碼本激勵參數(shù)一致。

可選的,執(zhí)行過程還包括:

若所述前一有效幀的信號類型與所述后續(xù)有效幀的信號類型不相同,則根據(jù)所述當(dāng)前幀的序列號和預(yù)設(shè)閾值確定所述當(dāng)前幀的固定碼本激勵參數(shù)。

可選的,執(zhí)行過程還包括:

若不存在后續(xù)有效幀,則根據(jù)所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù)。

可以看出,本發(fā)明實施例的方案中,接收語音數(shù)據(jù)流,并將所述語音數(shù)據(jù)流存儲至抖動緩沖區(qū);獲取所述抖動緩沖區(qū)的狀態(tài),并根據(jù)所述抖動緩沖區(qū)的狀態(tài)確定所述語音數(shù)據(jù)流對應(yīng)的當(dāng)前幀是否為丟失幀;若所述當(dāng)前幀為丟失幀,則判斷所述當(dāng)前幀的后續(xù)幀中是否存在有效幀;若存在后續(xù)有效幀,則根據(jù)所述后續(xù)有效幀以及所述當(dāng)前幀的前一有效幀估計當(dāng)前幀的參數(shù);對所述當(dāng)前幀的參數(shù)解碼以重建語音信號。從而可知,通過實施本發(fā)明提供的技術(shù)方案,能夠在丟幀的情況下,有效地進(jìn)行丟幀重建,從而提升語音質(zhì)量。

在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒

有詳述的部分,可以參見其他實施例的相關(guān)描述。

在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的裝置,可通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨(dú)物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。

所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時,可以存儲在一個計算機(jī)可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機(jī)設(shè)備(可為個人計算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機(jī)存取存儲器(RAM,RandomAccess Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。

以上所述,以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
临江市| 台山市| 西昌市| 洛宁县| 綦江县| 赣州市| 伊宁市| 宜州市| 肃南| 绥芬河市| 伊宁县| 斗六市| 佛坪县| 陇西县| 杂多县| 塘沽区| 澄江县| 安陆市| 罗平县| 木兰县| 墨玉县| 鹤山市| 前郭尔| 屯昌县| 罗江县| 大同市| 临沭县| 普兰县| 仙居县| 镇康县| 黔西| 双桥区| 青海省| 广宗县| 奉贤区| 辽源市| 涟源市| 习水县| 常山县| 沙坪坝区| 桐柏县|