專利名稱:一種音頻編碼方法及裝置的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及音頻處理技術(shù)領(lǐng)域,特別是涉及一種音頻編碼方法及裝置。
背景技術(shù):
音頻編碼是對(duì)涉及窄帶、寬帶、超寬帶甚至全帶的音頻信號(hào)進(jìn)行編碼的技術(shù),編碼帶寬越寬能夠獲得越高的用戶體驗(yàn)。在現(xiàn)有的語(yǔ)音編碼技術(shù)中,可以采用變換編碼對(duì)整個(gè)音頻信號(hào)的頻帶進(jìn)行編碼,例如,采用MDCT (Modified Discrete Cosine Transform,改進(jìn)型離散余弦變換)編碼方式,根據(jù)可得到的輸入總速率對(duì)整個(gè)頻帶進(jìn)行統(tǒng)一的速率分配。由于音頻信號(hào)根據(jù)其特性可以進(jìn)一步分為低帶信號(hào)和高帶信號(hào),因此現(xiàn)有的編 解碼技術(shù)中,也可以對(duì)低帶信號(hào)和高帶信號(hào)分別進(jìn)行編碼,編碼時(shí)采用低帶編碼器和高帶編碼器按照其各自編碼器支持的給定速率對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行相應(yīng)的編碼操作。例如,在由ITU(InternationalTelecommunication Union國(guó)際電信聯(lián)盟)制定的標(biāo)準(zhǔn)G. 722B(G. 722-SWB, G. 722 super wideband extension)中的一種情況下,輸入總速率為80kbit/s,則固定為低帶信號(hào)分配的低帶速率為64kbit/s,為高帶信號(hào)分配的高帶速率為16kbit/s。由此可見(jiàn),現(xiàn)有技術(shù)中的語(yǔ)音編碼方式,在對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行編碼時(shí),只能按照標(biāo)準(zhǔn)中給定的速率或編碼前設(shè)定的速率進(jìn)行編碼,由于編碼性能受到編碼速率的限制,因此對(duì)于不同類型的音頻信號(hào),例如,語(yǔ)音信號(hào)和音樂(lè)信號(hào),如果采用固定的編碼速率進(jìn)行編碼,則可能降低音頻編碼的總體性能。
發(fā)明內(nèi)容
本申請(qǐng)實(shí)施例提供了一種音頻編碼方法及裝置,以解決現(xiàn)有技術(shù)僅能采用預(yù)置給定速率對(duì)高帶信號(hào)和低帶信號(hào)進(jìn)行編碼,導(dǎo)致音頻編碼總體性能不高的問(wèn)題。本申請(qǐng)實(shí)施例公開(kāi)了如下技術(shù)方案一種音頻編碼方法,包括將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào);分別識(shí)別所述低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式;按照所述低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào),其中,分配給所述低帶信號(hào)的為低帶速率,分配給所述高帶信號(hào)的為高帶速率;通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,以及通過(guò)所述高帶信號(hào)對(duì)應(yīng)的編碼模式按照所述高帶速率對(duì)所述高帶信號(hào)進(jìn)行編碼。一種音頻編碼裝置,包括分帶單元,用于將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào);識(shí)別單元,用于分別識(shí)別所述低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式;自適應(yīng)調(diào)整單元,用于按照所述低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào),其中,分配給所述低帶信號(hào)的為低帶速率,分配給所述高帶信號(hào)的為高帶速率;編碼單元,用于通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,以及通過(guò)所述高帶信號(hào)對(duì)應(yīng)的編碼模式按照所述高帶速率對(duì)所述高帶信號(hào)進(jìn)行編碼。由上述實(shí)施例可以看出,本申請(qǐng)實(shí)施例中將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào),按照低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將音頻信號(hào)的輸入總速率自適應(yīng)分配給低帶信號(hào)和高帶信號(hào),通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,并通過(guò)高帶信號(hào)對(duì)應(yīng)的編碼模式按照高帶速率對(duì)高帶信號(hào)進(jìn)行編碼。由于本申請(qǐng)實(shí)施例中在對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行編碼時(shí),并非按照標(biāo)準(zhǔn)中給定或編碼前設(shè)定的速率進(jìn)行編碼,而是根據(jù)信號(hào)類型的不同自適應(yīng)調(diào)整編碼速率,因此提高了音頻編碼的總體性能。
為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,對(duì)于本領(lǐng)域普通技術(shù)人員而言,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I為本申請(qǐng)語(yǔ)音編碼方法的第一實(shí)施例流程圖;圖2為應(yīng)用本申請(qǐng)方法實(shí)施例進(jìn)行編碼的一種編碼器結(jié)構(gòu)示意圖;圖3為本申請(qǐng)語(yǔ)音編碼方法的第二實(shí)施例流程圖;圖4為本申請(qǐng)語(yǔ)音編碼方法的第三實(shí)施例流程圖;圖5為本申請(qǐng)語(yǔ)音編碼方法的第四實(shí)施例流程圖;圖6為本申請(qǐng)語(yǔ)音編碼方法的第五實(shí)施例流程圖;圖7為本申請(qǐng)語(yǔ)音編碼裝置的實(shí)施例框圖。
具體實(shí)施例方式本發(fā)明如下實(shí)施例提供了一種語(yǔ)音編碼方法及裝置。本申請(qǐng)實(shí)施例根據(jù)輸入語(yǔ)音信號(hào)的輸入總速率,以及輸入語(yǔ)音信號(hào)中低帶信號(hào)和高帶信號(hào)的類型,自動(dòng)調(diào)整為低帶信號(hào)和高帶信號(hào)分配的低帶速率和高帶速率,并根據(jù)分配的速率分別對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行自適應(yīng)編碼,從而提升語(yǔ)音編碼的整體性能。為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實(shí)施例中的技術(shù)方案,并使本發(fā)明實(shí)施例的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例中技術(shù)方案作進(jìn)一步詳細(xì)的說(shuō)明。數(shù)字信號(hào)處理領(lǐng)域,音頻編解碼器、視頻編解碼器廣泛應(yīng)用于各種電子設(shè)備中,例如移動(dòng)電話,無(wú)線裝置,個(gè)人數(shù)據(jù)助理(PDA),手持式或便攜式計(jì)算機(jī),GPS接收機(jī)/導(dǎo)航器,照相機(jī),音頻/視頻播放器,攝像機(jī),錄像機(jī),監(jiān)控設(shè)備等。通常,這類電子設(shè)備中包括音頻編碼器或音頻解碼器,音頻編碼器或者解碼器可以直接由數(shù)字電路或芯片例如DSP (digital signalprocessor)實(shí)現(xiàn),或者由軟件代碼驅(qū)動(dòng)處理器執(zhí)行軟件代碼中的流程、而實(shí)現(xiàn)。參見(jiàn)圖I,為本申請(qǐng)語(yǔ)首編碼方法的第一實(shí)施例流程圖步驟101 :將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào)。不住102 :分別識(shí)別低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式。其中,低帶信號(hào)和高帶信號(hào)根據(jù)其信號(hào)特點(diǎn)的不同進(jìn)行類型劃分,例如,低帶信號(hào)可以包括語(yǔ)音信號(hào)和音樂(lè)audio信號(hào),語(yǔ)音信號(hào)可以進(jìn)一步分為清音段信號(hào)、穩(wěn)定濁音段信號(hào)、一般語(yǔ)音幀和音頻幀信號(hào)和過(guò)渡幀信號(hào)等;高帶信號(hào)可以包括噪聲類信號(hào)、時(shí)域陡變信號(hào)、諧波性較強(qiáng)的信號(hào)、具有一定諧波性的一般信號(hào)等。
所劃分的不同類型的信號(hào)對(duì)應(yīng)不同的編碼模式,例如語(yǔ)音信號(hào)和音樂(lè)audio信號(hào)分別對(duì)應(yīng)的編碼模式為語(yǔ)音編碼模式和音樂(lè)audio編碼模式,其中語(yǔ)音編碼模式包括但不限于如下模式對(duì)清音段信號(hào)進(jìn)行編碼的UC (UnvoicedCoding mode,清音編碼)模式、對(duì)穩(wěn)定池音段進(jìn)行編碼的VC (Voiced Coding mode,池音編碼)模式、對(duì)一般語(yǔ)音巾貞和音頻巾貞進(jìn)行編碼的GC(Generic Coding mode,普通編碼)模式、以及對(duì)過(guò)渡巾貞進(jìn)行編碼的TC (transition Coding mode過(guò)渡編碼)模式。高帶信號(hào)對(duì)應(yīng)的不同編碼模式包括但不限于如下模式對(duì)類噪聲信號(hào)進(jìn)行編碼的Noise (噪聲編碼)模式,對(duì)時(shí)域陡變信號(hào)進(jìn)行編碼的Transient (瞬態(tài)編碼)模式,對(duì)諧波性較強(qiáng)的信號(hào)進(jìn)行編碼的Harmonic (諧波編碼)模式,對(duì)具有一定諧波性的其余信號(hào)進(jìn)行編碼的Normal (普通編碼)模式。Normal模式也可根據(jù)需要和特定的編解碼方法進(jìn)一步分類處理。需要說(shuō)明的是,上述高帶信號(hào)和低帶信號(hào)的編碼模式都是按照音頻信號(hào)類型的不同進(jìn)行分類的,實(shí)際應(yīng)用過(guò)程中,可以不局限于上述的分類模式,即可以根據(jù)信號(hào)類型進(jìn)一步細(xì)分更多的編碼模式。步驟103 :按照低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將音頻信號(hào)的輸入總速率自適應(yīng)分配給低帶信號(hào)和高帶信號(hào),其中,分配給低帶信號(hào)的為低帶速率,分配給高帶信號(hào)的為高帶速率。具體的,可以將音頻信號(hào)的輸入總速率分別按照預(yù)設(shè)的低帶速率或高帶速率進(jìn)行逐級(jí)調(diào)整后,分配給所述低帶信號(hào)和所述高帶信號(hào)。在輸入速率一定的情況下,優(yōu)先保證低帶信號(hào)的編碼速率;當(dāng)?shù)蛶盘?hào)的類型對(duì)應(yīng)的編碼模式為UC模式時(shí),則將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給所述低帶信號(hào);當(dāng)輸入總速率大于等于預(yù)設(shè)的第一速率時(shí),首先將高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào);當(dāng)高帶信號(hào)對(duì)應(yīng)的編碼模式符合速率調(diào)整的類型時(shí),對(duì)高帶速率逐級(jí)調(diào)整,將高帶信號(hào)編碼模式對(duì)應(yīng)的比初始高帶速率高的調(diào)整速率作為高帶速率分配給所述高帶信號(hào)。在其他實(shí)施方式中,可以根據(jù)高帶信號(hào)和低帶信號(hào)對(duì)應(yīng)的不同編碼模式做其他的調(diào)整,滿足優(yōu)先保證低帶信號(hào)的編碼速率;在輸入總速率較大時(shí),以高帶速率集合中的最低速率為起點(diǎn)對(duì)高帶速率進(jìn)行調(diào)整;在低帶信號(hào)對(duì)應(yīng)的編碼模式為占用速率最低的編碼模式時(shí),為低帶信號(hào)分配低帶速率集合中的最低速率。本申請(qǐng)實(shí)施例與現(xiàn)有技術(shù)的不同在于,不是按照預(yù)設(shè)的給定速率分別對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行編碼,而是根據(jù)低帶信號(hào)和高帶信號(hào)的類型,對(duì)其速率進(jìn)行自適應(yīng)調(diào)整,具體的調(diào)整過(guò)程在后續(xù)實(shí)施例中進(jìn)行詳細(xì)描述。步驟104 :通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,以及通過(guò)高帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的高帶速率對(duì)高帶信號(hào)進(jìn)行編碼。由上述實(shí)施例可見(jiàn),由于在對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行編碼時(shí),并非按照標(biāo)準(zhǔn)中給定或編碼前設(shè)定的速率進(jìn)行編碼,而是根據(jù)信號(hào)類型的不同自適應(yīng)調(diào)整編碼速率,因此提高了音頻編碼的總體性能。參見(jiàn)圖2,為應(yīng)用本申請(qǐng)語(yǔ)音編碼方法實(shí)施例進(jìn)行編碼的一種編碼器結(jié)構(gòu)示意圖該編碼器包括分帶濾波模塊、自適應(yīng)比特分配模塊、高帶編碼模塊、低帶核心編碼模塊、以及復(fù)用模塊。其中,高帶編碼模塊中進(jìn)一步包括高帶編碼分類模塊和Nh個(gè)高帶 信號(hào)編碼模塊,低帶核心編碼模塊中進(jìn)一步包括低帶核心編碼分類模塊和隊(duì)個(gè)低帶信號(hào)編碼模塊。其中,Nh個(gè)高帶信號(hào)編碼模塊對(duì)應(yīng)Nh個(gè)高帶信號(hào)類型,Nl個(gè)低帶信號(hào)編碼模塊對(duì)應(yīng)隊(duì)個(gè)低帶信號(hào)類型。其中,輸入的音頻信號(hào)通過(guò)分帶濾波模塊處理后,分為高帶信號(hào)和低帶信號(hào),其中,高帶信號(hào)輸入高帶編碼模塊,由高帶編碼模塊中的高帶編碼器分類模塊識(shí)別高帶信號(hào)的類型,以便根據(jù)高帶信號(hào)的類型為其分配高帶信號(hào)編碼模塊;低帶信號(hào)輸入低帶核心編碼模塊,由低帶核心編碼模塊中的低帶編碼器分類模塊識(shí)別低帶信號(hào)的類型,以便根據(jù)低帶信號(hào)的類型為其分配低帶信號(hào)編碼模塊;同時(shí)自適應(yīng)比特分配模塊根據(jù)識(shí)別出的低帶信號(hào)和高帶信號(hào)的類型,將輸入總速率自適應(yīng)分配給低帶信號(hào)和高帶信號(hào)。 下面結(jié)合具體應(yīng)用實(shí)施例,對(duì)自適應(yīng)分配低帶速率和高帶速率的過(guò)程進(jìn)行詳細(xì)描述。為了方便應(yīng)用實(shí)施例的描述,首先假設(shè)預(yù)先設(shè)置的音頻編碼輸入總速率集合中的輸入總速率包括J1, B2, . . .,BM,共有M種輸入總速率;預(yù)先設(shè)置低帶速率集合中的低帶速率包括. . Buj,共有P種低帶速率,其中Bli < Bl2. .. < Blp ;預(yù)先設(shè)置高帶速率集合中的高帶速率包括BH1,BH2. . . Bhq,共有Q種高帶速率,其中Bm < BH2... <Bhq, Bm可以是0,即為了保證總體質(zhì)量,可以只編碼低帶信號(hào)而不編碼高帶信號(hào)。上述任意低帶速率和高帶速率的組合后的總速率對(duì)應(yīng)于總速率集合B1,B2, , Bm 中的一個(gè)速率,即 Bk = Bu+BHj,其中 i = 1,2,…,P ;j = 1,2,…,Q ;k = 1,
2,. . . , Mo 另外也有,Bm = Blp+Bhq, B1 = Bli+Bmo參見(jiàn)圖3,為本申請(qǐng)語(yǔ)音編碼方法的第二實(shí)施例流程圖,該實(shí)施例示出了低帶信號(hào)中僅包含語(yǔ)音信號(hào)的編碼過(guò)程步驟301 :將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào)。步驟302 :分別識(shí)別低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式。本申請(qǐng)實(shí)施例中,低帶信號(hào)中僅使用語(yǔ)音(speech)編碼模式,例如,CELP(CodeExcited Linear Prediction,碼激勵(lì)線性預(yù)測(cè))編碼。其中,語(yǔ)音編碼模式包括對(duì)清音段信號(hào)進(jìn)行編碼的UC模式、對(duì)穩(wěn)定濁音段進(jìn)行編碼的VC模式、對(duì)一般語(yǔ)音幀和音頻幀進(jìn)行編碼的GC模式、以及對(duì)過(guò)渡幀進(jìn)行編碼的TC模式。不同類型的高帶信號(hào)對(duì)應(yīng)的編碼模式包括對(duì)類噪聲信號(hào)進(jìn)行編碼的Noise模式,對(duì)時(shí)域陡變信號(hào)進(jìn)行編碼的Transient編碼模式,對(duì)諧波性較強(qiáng)的信號(hào)進(jìn)行編碼的Harmonic模式,對(duì)具有一定諧波性的其余信號(hào)進(jìn)行編碼的Normal模式。Normal模式也可根據(jù)需要和特定的編解碼方法進(jìn)一步分類處理。步驟303 :判斷低帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為UC,若是,則執(zhí)行步驟304 ;否則,執(zhí)行步驟305。步驟304 :將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給低帶信號(hào),將輸入總速率減去低帶速率后得到的剩余速率作為高帶速率分配給高帶信號(hào),執(zhí)行步驟311。當(dāng)?shù)蛶盘?hào)的編碼模式為UC時(shí),假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則設(shè)置低帶信號(hào)的低帶速率為Bu,相應(yīng)的高帶信號(hào)的高帶速率為Bi-But5
步驟305 :判斷輸入總速率是否小于預(yù)設(shè)的第一速率,若是,則執(zhí)行步驟306 ;否貝U,執(zhí)行步驟307。假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則判斷Bi是否小于預(yù)設(shè)的第一速率,該預(yù)設(shè)的第一速率可以是輸入總速率集合中所有總速率從低到高排列后,位于前三分之一位置處的輸入總速率,例如,輸入總速率集合中按照從低到高順序排列的輸入總速率為
B2> B3、B4, B5, B6,則該預(yù)設(shè)的第一速率可以設(shè)置為B2。步驟306 :將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給高帶信號(hào),將輸入總速率減去高帶速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟311。當(dāng)輸入總速率Bi小于預(yù)設(shè)的第一速率時(shí),則設(shè)置高帶信號(hào)的高帶速率為Bm,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bmt5步驟307 :將高帶速率集合中的最低速率作為初始高帶速率分配給高帶信號(hào)。當(dāng)?shù)蛶盘?hào)的編碼模式不為UC,且輸入總速率Bi不小于預(yù)設(shè)的第一速率時(shí),可以設(shè)置高帶信號(hào)的高帶速率為BH1,BH1是高帶速率集合中的最低速率,由此可以保證低帶分配較多的速率,從而更好地保證低帶質(zhì)量。除了上述示出的設(shè)置高帶信號(hào)的高帶速率為Bhi外,也可以設(shè)置初始高帶速率為高帶速率集合中與Bjalphal的結(jié)果臨近的速率,其中alphal可以是一預(yù)設(shè)值,例如可以為1/3 ;或者,也可以先設(shè)置低帶速率為低帶速率集合中與Bi*alpha2的結(jié)果臨近的速率,其中alpha2可以是以預(yù)設(shè)值,例如可以為2/3,相應(yīng)初始高帶速率為Bi-Bi^alphaZt5上述對(duì)于初始高帶速率的設(shè)置方式可以有多種,對(duì)此本申請(qǐng)實(shí)施例不進(jìn)行限制。步驟308 :判斷高帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為Harmonic模式,若是,則執(zhí)行步驟309 ;否則,執(zhí)行步驟310。步驟309 :將高帶速率調(diào)整為高帶速率集合中按照從低到高順序排列時(shí),初始高帶速率的高一級(jí)速率,將輸入總速率減去該高一級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟311。當(dāng)高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式時(shí),將高帶信號(hào)的高帶速率從當(dāng)前設(shè)置的Bhi順序向上調(diào)整到Bh2,相應(yīng)的低帶信號(hào)的低帶速率為需要說(shuō)明的是,當(dāng)輸入總速率Bi不小于預(yù)設(shè)的第一速率時(shí),則在進(jìn)行速率調(diào)整時(shí),可以將高帶速率從當(dāng)前設(shè)置速率調(diào)整為高帶速率集合中該當(dāng)前設(shè)置速率的高一級(jí)速率。由此可知,本申請(qǐng)實(shí)施例的目的在于示出速率按級(jí)調(diào)整的方式,并不用于限制速率初始設(shè)置的具體值。步驟310 :將初始高帶速率作為高帶速率,并將輸入總速率減去初始高帶速率后得到的剩余速率作為低帶速率分配給低帶信號(hào)。當(dāng)高帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為Harmonic模式時(shí),則高帶信號(hào)的高帶速率不進(jìn)行調(diào)整,仍然為Bhi,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bmt5步驟311 :通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,以及通過(guò)高帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的高帶速率對(duì)高帶信號(hào)進(jìn)行編碼。本申請(qǐng)對(duì)高帶信號(hào)和低帶信號(hào)進(jìn)行編碼的過(guò)程與現(xiàn)有技術(shù)一致,在此不再贅述。后續(xù),將對(duì)高帶信號(hào)進(jìn)行編碼和對(duì)低帶信號(hào)進(jìn)行編碼后的碼流進(jìn)行復(fù)用,然后輸出合成的比特流,從而完成編碼過(guò)程。 參見(jiàn)圖4,為本申請(qǐng)語(yǔ)音編碼方法的第三實(shí)施例流程圖,該實(shí)施例示出了低帶信號(hào)中包含語(yǔ)音信號(hào)和音樂(lè)信號(hào)的編碼過(guò)程步驟401 :將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào)。步驟402:分別識(shí)別低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式。本申請(qǐng)實(shí)施例中,低帶信號(hào)可以使用語(yǔ)音(speech)編碼模式,例如,CELP編碼。其中,語(yǔ)音編碼模式包括對(duì)清音段信號(hào)進(jìn)行編碼的UC模式、對(duì)穩(wěn)定濁音段進(jìn)行編碼的VC模式、對(duì)一般語(yǔ)音幀和音頻幀進(jìn)行編碼的GC模式、以及對(duì)過(guò)渡幀進(jìn)行編碼的TC模式。低帶信號(hào)也可以使用音樂(lè)(audio)編碼模式。不同類型的高帶信號(hào)對(duì)應(yīng)的編碼模式包括對(duì)類噪聲信號(hào)進(jìn)行編碼的Noise模式,對(duì)時(shí)域陡變信號(hào)進(jìn)行編碼的Transient編碼模式,對(duì)諧波性較強(qiáng)的信號(hào)進(jìn)行編碼的Harmonic模式,對(duì)具有一定諧波性的信號(hào)進(jìn)行編碼的Normal模式。Normal模式也可根據(jù)需要和特定的編解碼方法進(jìn)一步分類處理。步驟403 :判斷低帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為UC,若是,則執(zhí)行步驟404 ;否則,執(zhí)行步驟405。步驟404 :將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給低帶信號(hào),將輸入總速率減去低帶速率后得到的剩余速率作為高帶速率分配給高帶信號(hào),執(zhí)行步驟413。當(dāng)?shù)蛶盘?hào)的編碼模式為UC時(shí),假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則設(shè)置低帶信號(hào)的低帶速率為Bu,相應(yīng)的高帶信號(hào)的高帶速率為Bi-But5步驟405 :判斷輸入總速率是否小于預(yù)設(shè)的第一速率,若是,則執(zhí)行步驟406 ;否貝丨J,執(zhí)行步驟407。假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則判斷Bi是否小于預(yù)設(shè)的第一速率,該預(yù)設(shè)的第一速率可以是輸入總速率集合中所有總速率從低到高排列后,位于前三分之一位置處的輸入總速率,例如,輸入總速率集合中按照從低到高順序排列的輸入總速率為I、B2> B3、B4, B5, B6,則該預(yù)設(shè)的第一速率可以設(shè)置為B2。步驟406:將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給高帶信號(hào),將輸入總速率減去高帶速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟413。當(dāng)輸入總速率Bi小于預(yù)設(shè)的第一速率時(shí),則設(shè)置高帶信號(hào)的高帶速率為Bm,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bmt5步驟407 :將高帶速率集合中的最低速率作為初始高帶速率分配給高帶信號(hào)。當(dāng)?shù)蛶盘?hào)的編碼模式不為UC,且輸入總速率Bi不小于預(yù)設(shè)的第一速率時(shí),可以設(shè)置高帶信號(hào)的高帶速率為BH1,BH1是高帶速率集合中的最低速率,由此可以保證低帶分配較多的速率,從而更好地保證低帶質(zhì)量。除了上述示出的設(shè)置高帶信號(hào)的高帶速率為Bhi外,也可以設(shè)置初始高帶速率為高帶速率集合中與Bjalphal的結(jié)果臨近的速率,其中alphal可以是一預(yù)設(shè)值,例如可以為1/3 ;或者,也可以先設(shè)置低帶速率為低帶速率集合中與Bi*alpha2的結(jié)果臨近的速率, 其中alpha2可以是以預(yù)設(shè)值,例如可以為2/3,相應(yīng)初始高帶速率為Bi-Bi^alphaZt5上述對(duì)于初始高帶速率的設(shè)置方式可以有多種,對(duì)此本申請(qǐng)實(shí)施例不進(jìn)行限制。步驟408 :判斷是否高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式,且低帶信號(hào)的諧波性小于閾值及低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式,若是,則執(zhí)行步驟409 ;否則,執(zhí)行步驟410。本實(shí)施例中判斷低帶信號(hào)的諧波性小于閾值是為了判斷該低帶信號(hào)的諧波性是否不強(qiáng)。低帶信號(hào)的諧波性可以通過(guò)對(duì)其進(jìn)行頻譜分析得到,具體的可以通過(guò)峰均比參數(shù)得到,峰均比參數(shù)可以是當(dāng)前子帶頻譜的最大值和平均值的比值,越大表示諧波性越強(qiáng),上述諧波性強(qiáng)度的判斷過(guò)程與現(xiàn)有技術(shù)一致,在此不再贅述。步驟409 :將高帶速率調(diào)整為高帶速率集合中按照從低到高順序排列時(shí),初始高帶速率的高二級(jí)速率,將輸入總速率減去高二級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟413。當(dāng)高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式,且低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio模式及該低帶信號(hào)的諧波性小于閾值,則將高帶信號(hào)的高帶速率從當(dāng)前設(shè)置的Bhi順序向上調(diào)整到Bh3,相應(yīng)的低帶信號(hào)的低帶速率為Bi-B11315需要說(shuō)明的是,當(dāng)輸入總速率Bi不小于預(yù)設(shè)的第一速率時(shí),則在進(jìn)行速率調(diào)整時(shí),可以將高帶速率從當(dāng)前設(shè)置速率調(diào)整為高帶速率集合中該當(dāng)前設(shè)置速率的高一級(jí)速率。由此可知,本申請(qǐng)實(shí)施例的目的在于示出速率按級(jí)調(diào)整的方式,并不用于限制速率初始設(shè)置的具體值。步驟410 :判斷是否高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Normal模式,且低帶信號(hào)的諧波性小于閾值及低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式,若是,則執(zhí)行步驟411 ;否則,執(zhí)行步驟412。步驟411 :將高帶速率調(diào)整為高帶速率集合中按照從低到高順序排列時(shí),初始高帶速率的高一級(jí)速率,將輸入總速率減去高一級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟413。當(dāng)高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Normal模式,且低帶信號(hào)的諧波性小于閾值及低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式時(shí),則將高帶信號(hào)的高帶速率從當(dāng)前設(shè)置的Bhi順序向上調(diào)整到Bh2,相應(yīng)的低帶信號(hào)的低帶速率為步驟412 :將初始高帶速率作為高帶速率,并將輸入總速率減去初始高帶速率后得到的剩余速率作為低帶速率分配給低帶信號(hào)。步驟413 :通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,以及通過(guò)高帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的高帶速率對(duì)高帶信號(hào)進(jìn)行編碼。本申請(qǐng)對(duì)高帶信號(hào)和低帶信號(hào)進(jìn)行編碼的過(guò)程與現(xiàn)有技術(shù)一致,在此不再贅述。后續(xù),將對(duì)高帶信號(hào)進(jìn)行編碼和對(duì)低帶信號(hào)進(jìn)行編碼后的碼流進(jìn)行復(fù)用,然后輸出合成的比特流,從而完成編碼過(guò)程。參見(jiàn)圖5,為本申請(qǐng)語(yǔ)音編碼方法的第四實(shí)施例流程圖,該實(shí)施例示出了低帶信號(hào)中僅包含語(yǔ)音信號(hào)的另一種編碼過(guò)程步驟501 :將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào)。步驟502 :分別識(shí)別低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式。 本申請(qǐng)實(shí)施例中,低帶信號(hào)中僅使用語(yǔ)音(speech)編碼模式,例如,CELP編碼。其中,語(yǔ)音編碼模式包括對(duì)清音段信號(hào)進(jìn)行編碼的UC模式、對(duì)穩(wěn)定濁音段進(jìn)行編碼的VC模式、對(duì)一般語(yǔ)音幀和音頻幀進(jìn)行編碼的GC模式、以及對(duì)過(guò)渡幀進(jìn)行編碼的TC模式。不同類型的高帶信號(hào)對(duì)應(yīng)的編碼模式包括對(duì)類噪聲信號(hào)進(jìn)行編碼的Noise模式,對(duì)時(shí)域陡變信號(hào)進(jìn)行編碼的Transient編碼模式,對(duì)諧波性較強(qiáng)的信號(hào)進(jìn)行編碼的Harmonic模式,對(duì)具有一定諧波性的其余信號(hào)進(jìn)行編碼的Normal模式。Normal模式也可根據(jù)需要和特定的編解碼方法進(jìn)一步分類處理。步驟503 :判斷低帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為UC,若是,則執(zhí)行步驟504 ;否則,執(zhí)行步驟505。步驟504 :將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給低帶信號(hào),將輸入總速率減去低帶速率后得到的剩余速率作為高帶速率分配給高帶信號(hào),執(zhí)行步驟513。當(dāng)?shù)蛶盘?hào)的編碼模式為UC時(shí),假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則設(shè)置低帶信號(hào)的低帶速率為Bu,相應(yīng)的高帶信號(hào)的高帶速率為Bi-But5步驟505 :判斷輸入總速率是否小于預(yù)設(shè)的第一速率,若是,則執(zhí)行步驟506 ;否貝U,執(zhí)行步驟507。假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則判斷Bi是否小于預(yù)設(shè)的第一速率,該預(yù)設(shè)的第一速率可以是輸入總速率集合中所有總速率從低到高排列后,位于前三分之一位置處的輸入總速率,例如,輸入總速率集合中按照從低到高順序排列的輸入總速率為
B2> B3、B4, B5, B6,則該預(yù)設(shè)的第一速率可以設(shè)置為B2。步驟506:將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給高帶信號(hào),將輸入總速率減去高帶速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟513。當(dāng)輸入總速率Bi小于預(yù)設(shè)的第一速率時(shí),則設(shè)置高帶信號(hào)的高帶速率為Bm,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bmt5步驟507 :將高帶速率集合中的最低速率作為初始高帶速率分配給高帶信號(hào)。當(dāng)?shù)蛶盘?hào)的編碼模式不為UC,且輸入總速率Bi不小于預(yù)設(shè)的第一速率時(shí),可以設(shè)置高帶信號(hào)的高帶速率為BH1,BH1是高帶速率集合中的最低速率,由此可以保證低帶分配較多的速率,從而更好地保證低帶質(zhì)量。除了上述示出的設(shè)置高帶信號(hào)的高帶速率為Bhi外,也可以設(shè)置初始高帶速率為高帶速率集合中與Bjalphal的結(jié)果臨近的速率,其中alphal可以是一預(yù)設(shè)值,例如可以為1/3 ;或者,也可以先設(shè)置低帶速率為低帶速率集合中與Bi*alpha2的結(jié)果臨近的速率,其中alpha2可以是以預(yù)設(shè)值,例如可以為2/3,相應(yīng)初始高帶速率為Bi-Bi^alphaZt5上述對(duì)于初始高帶速率的設(shè)置方式可以有多種,對(duì)此本申請(qǐng)實(shí)施例不進(jìn)行限制。步驟508 :判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式,若是,則執(zhí)行步驟509 ;否則,執(zhí)行步驟510。步驟509 :將高帶速率調(diào)整為高帶速率集合中按照從低到高順序排列時(shí),初始高帶速率的高一級(jí)速率,將輸入總速率減去高一級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟513。
當(dāng)?shù)蛶盘?hào)的類型對(duì)應(yīng)的編碼模式不為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式時(shí),將高帶信號(hào)的高帶速率從當(dāng)前設(shè)置的Bm順序向上調(diào)整到Bh2,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bm需要說(shuō)明的是,當(dāng)輸入總速率Bi不小于預(yù)設(shè)的第一速率時(shí),則在進(jìn)行速率調(diào)整時(shí),可以將高帶速率從當(dāng)前設(shè)置速率調(diào)整為高帶速率集合中該當(dāng)前設(shè)置速率的高一級(jí)速率。由此可知,本申請(qǐng)實(shí)施例的目的在于示出速率按級(jí)調(diào)整的方式,并不用于限制速率初始設(shè)置的具體值。步驟510:判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Noise模式,若是,則返回步驟511 ;否則,執(zhí)行步驟512。步驟511 :將高帶速率調(diào)整為高帶速率集合中按照從低到高順序排列時(shí),初始高帶速率的高一級(jí)速率,將輸入總速率減去高一級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟513。當(dāng)?shù)蛶盘?hào)的類型對(duì)應(yīng)的編碼模式為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Noise模式時(shí),將高帶信號(hào)的高帶速率從當(dāng)前設(shè)置的Bhi順序向上調(diào)整到Bh2,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bm需要說(shuō)明的是,當(dāng)初始設(shè)置的高帶速率不是高帶速率集合中的最低速率,則在進(jìn)行速率調(diào)整時(shí),可以將最高速率從當(dāng)前設(shè)置速率調(diào)整為高帶速率集合中該當(dāng)前設(shè)置速率的高一級(jí)速率。由此可知,本申請(qǐng)實(shí)施例的目的在于示出速率按級(jí)調(diào)整的方式,并不用于限制速率初始設(shè)置的具體值。步驟512 :將輸入總速率減去初始高帶速率后得到的剩余速率作為低帶速率分配給低帶信號(hào)。當(dāng)?shù)蛶盘?hào)的類型對(duì)應(yīng)的編碼模式為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為Harmonic模式也不為Noise模式時(shí),則高帶信號(hào)的高帶速率不進(jìn)行調(diào)整,仍然為BH1,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bmt5步驟513 :通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,以及通過(guò)高帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的高帶速率對(duì)高帶信號(hào)進(jìn)行編碼。本申請(qǐng)對(duì)高帶信號(hào)和低帶信號(hào)進(jìn)行編碼的過(guò)程與現(xiàn)有技術(shù)一致,在此不再贅述。后續(xù),將對(duì)高帶信號(hào)進(jìn)行編碼和對(duì)低帶信號(hào)進(jìn)行編碼后的碼流進(jìn)行復(fù)用,然后輸出合成的比特流,從而完成編碼過(guò)程。參見(jiàn)圖6,為本申請(qǐng)語(yǔ)音編碼方法的第五實(shí)施例流程圖,該實(shí)施例示出了低帶信號(hào)中僅包含語(yǔ)音信號(hào)的另一種編碼過(guò)程步驟601 :將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào)。步驟602:分別識(shí)別低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式。本申請(qǐng)實(shí)施例中,低帶信號(hào)中僅使用語(yǔ)音(speech)編碼模式,例如,CELP編碼。其中,語(yǔ)音編碼模式包括對(duì)清音段信號(hào)進(jìn)行編碼的UC模式、對(duì)穩(wěn)定濁音段進(jìn)行編碼的VC模式、對(duì)一般語(yǔ)音幀和音頻幀進(jìn)行編碼的GC模式、以及對(duì)過(guò)渡幀進(jìn)行編碼的TC模式。不同類型的高帶信號(hào)對(duì)應(yīng)的編碼模式包括對(duì)類噪聲信號(hào)進(jìn)行編碼的Noise模式,對(duì)時(shí)域陡變信號(hào)進(jìn)行編碼的Transient編碼模式,對(duì)諧波性較強(qiáng)的信號(hào)進(jìn)行編碼的Harmonic模式,對(duì)具有一定諧波性的其余信號(hào)進(jìn)行編碼的Normal模式。Normal模式也可根據(jù)需要和特定的編解碼方法進(jìn)一步分類處理。步驟603 :判斷低帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為UC,若是,則執(zhí)行步驟604 ;否則,執(zhí)行步驟605。步驟604:將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給低帶信號(hào),將輸入總速率減去低帶速率后得到的剩余速率作為高帶速率分配給高帶信號(hào),執(zhí)行步驟614。當(dāng)?shù)蛶盘?hào)的編碼模式為UC時(shí),假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則設(shè)置低帶信號(hào)的低帶速率為Bu,相應(yīng)的高帶信號(hào)的高帶速率為Bi-But5步驟605 :判斷輸入總速率是否小于預(yù)設(shè)的第一速率,若是,則執(zhí)行步驟606 ;否貝U,執(zhí)行步驟607。假設(shè)輸入總速率為Bi (其中i = 1,. . .,M),則判斷Bi是否小于預(yù)設(shè)的第一速率,該預(yù)設(shè)的第一速率可以是輸入總速率集合中所有總速率從低到高排列后,位于前三分之一位置處的輸入總速率,例如,輸入總速率集合中按照從低到高順序排列的輸入總速率為
B2> B3、B4, B5, B6,則該預(yù)設(shè)的第一速率可以設(shè)置為B2。步驟606:將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給高帶信號(hào),將輸入總速率減去高帶速率后得到的剩余速率作為低帶速率分配給低帶信號(hào),執(zhí)行步驟614。當(dāng)輸入總速率Bi小于預(yù)設(shè)的第一速率時(shí),則設(shè)置高帶信號(hào)的高帶速率為Bm,相應(yīng)的低帶信號(hào)的低帶速率為Bi-Bmt5步驟607:將高帶速率集合中的最低速率作為當(dāng)前高帶速率分配給高帶信號(hào),相應(yīng)當(dāng)前低帶速率為輸入總速率減去當(dāng)前高帶速率。當(dāng)?shù)蛶盘?hào)的編碼模式不為UC,且輸入總速率Bi不小于預(yù)設(shè)的第一速率時(shí),可以設(shè)置高帶信號(hào)的當(dāng)前高帶速率為BH1,BH1是高帶速率集合中最低的速率,相應(yīng)的低帶信號(hào)的當(dāng)前低帶速率為Bi-Bmt5除了上述示出的設(shè)置高帶信號(hào)的當(dāng)前高帶速率為Bhi外,也可以設(shè)置當(dāng)前高帶速率為高帶速率集合中與Bjalphal的結(jié)果臨近的速率,其中alphal可以是一預(yù)設(shè)值,例如可以為1/3 ;或者,也可以先設(shè)置當(dāng)前低帶速率為低帶速率集合中與Bi*alpha2的結(jié)果臨近、的速率,其中alpha2可以是以預(yù)設(shè)值,例如可以為2/3,相應(yīng)當(dāng)前高帶速率為Bi-BjalphaZt5上述對(duì)于當(dāng)前高帶速率的設(shè)置方式可以有多種,對(duì)此本申請(qǐng)實(shí)施例不進(jìn)行限制。步驟608 :通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照初始低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并計(jì)算本地低帶合成信號(hào)的信噪比SNR值。步驟609 :判斷SNR值是否在預(yù)設(shè)范圍內(nèi),若否,則執(zhí)行步驟610 ;若是,執(zhí)行步驟614。步驟610 :當(dāng)SNR值小于預(yù)設(shè)范圍的最小值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到高順序排列時(shí),當(dāng)前低帶速率的高一級(jí)速率,當(dāng)SNR值大于預(yù)設(shè)范圍的最大值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到高順序排列時(shí),當(dāng)前低帶速率的低一級(jí)速率。
步驟611 :通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照調(diào)整后的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并重新計(jì)算該本地低帶合成信號(hào)的SNR值。步驟612 :判斷重新計(jì)算的SNR值是否在預(yù)設(shè)范圍內(nèi),若否,返回步驟610 ;若是,則執(zhí)行步驟613。步驟613 :將調(diào)整后的低帶速率作為低帶信號(hào)的低帶速率,相應(yīng)的輸入總速率減去調(diào)整后的低帶速率作為高帶信號(hào)的高帶速率。步驟614 :通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,以及通過(guò)高帶信號(hào)對(duì)應(yīng)的編碼模式按照所分配的高帶速率對(duì)高帶信號(hào)進(jìn)行編碼。本申請(qǐng)對(duì)高帶信號(hào)和低帶信號(hào)進(jìn)行編碼的過(guò)程與現(xiàn)有技術(shù)一致,在此不再贅述。后續(xù),將對(duì)高帶信號(hào)進(jìn)行編碼和對(duì)低帶信號(hào)進(jìn)行編碼后的碼流進(jìn)行復(fù)用,然后輸出合成的比特流,從而完成編碼過(guò)程。上述音頻編碼方法第二實(shí)施例至第五實(shí)施例中,在判斷輸入總速率不小于預(yù)設(shè)的第一速率后,還可以進(jìn)一步判斷輸入總速率是否大于預(yù)設(shè)的第二速率,當(dāng)大于該第二速率時(shí),可以設(shè)置高帶信號(hào)的高帶速率為預(yù)設(shè)高帶速率集合中最高的速率,將輸入總速率減去設(shè)置的高帶速率,得到的剩余速率作為低帶速率分配給低帶信號(hào),對(duì)于輸入總速率在由上述兩個(gè)預(yù)設(shè)速率限定的范圍內(nèi)時(shí),再進(jìn)行原輸入總速率小于預(yù)設(shè)的第一速率后的自適應(yīng)調(diào)整過(guò)程。與本申請(qǐng)音頻編碼方法的實(shí)施例相對(duì)應(yīng),本申請(qǐng)還提供了音頻編碼裝置的實(shí)施例。參見(jiàn)圖7,為本申請(qǐng)音頻編碼裝置的實(shí)施例框圖。該音頻編碼裝置包括分帶單元710、識(shí)別單元720、自適應(yīng)調(diào)整單元730和編碼單元 740。其中,分帶單元710,用于將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào);識(shí)別單元720,用于分別識(shí)別所述低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式;自適應(yīng)調(diào)整單元730,用于按照所述低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào),其中,分配給所述低帶信號(hào)的為低帶速率,分配給所述高帶信號(hào)的為高帶速率;編碼單元740,用于通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,以及通過(guò)所述高帶信號(hào)對(duì)應(yīng)的編碼模式按照所述高帶速率對(duì)所述高帶信號(hào)進(jìn)行編碼。其中,所述不同類型的低帶信號(hào)對(duì)應(yīng)的編碼模式包括語(yǔ)音編碼模式和音樂(lè)audio編碼模式,其中語(yǔ)音編碼模式包括過(guò)渡編碼TC模式、普通編碼GC模式、濁音編碼VC模式、清音編碼UC模式;不同類型的高 帶信號(hào)對(duì)應(yīng)的編碼模式包括噪聲編碼Noise模式、瞬態(tài)編碼Transient模式,諧波編碼Harmonic模式,普通編碼Normal模式。另外,Normal模式也可根據(jù)需要和特定的編解碼方法進(jìn)一步分類處理。需要說(shuō)明的是,上述高帶信號(hào)和低帶信號(hào)的編碼模式都是按照音頻信號(hào)類型的不同進(jìn)行分類的,實(shí)際應(yīng)用過(guò)程中,可以不局限于上述的分類模式,即可以根據(jù)信號(hào)類型進(jìn)一步細(xì)分更多的編碼模式。進(jìn)一步,自適應(yīng)調(diào)整單元可以包括(圖7中未示出):第一速率分配單元,用于將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào);所述第一速率分配單元,具體用于當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為UC模式時(shí),將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào),當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為UC模式時(shí),將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給所述低帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。所述第一速率分配單元可以進(jìn)一步包括初始高帶速率分配單元,用于當(dāng)所述輸入總速率大于等于預(yù)設(shè)的第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào);速率分配調(diào)整單元,用于當(dāng)高帶信號(hào)對(duì)應(yīng)的編碼模式符合速率調(diào)整的類型時(shí),將高帶信號(hào)編碼模式對(duì)應(yīng)的比所述初始高帶速率高的調(diào)整速率作為高帶速率分配給所述高帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。進(jìn)一步,自適應(yīng)調(diào)整單元可以包括(圖7中未示出)判斷單元和速率分配單元,其中,所述速率分配單元,用于當(dāng)所述判斷單元判斷所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為UC模式時(shí),將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給所述低帶信號(hào),以及將所述輸入總速率減去所述低帶速率后得到的剩余速率作為高帶速率分配給所述高帶信號(hào)。進(jìn)一步,所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為UC模式,且所述輸入總速率小于預(yù)設(shè)的第一速率時(shí),將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào),以及將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。進(jìn)一步,自適應(yīng)調(diào)整單元還可以包括(圖7中未示出)第一速率調(diào)整單元,其中,所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào);所述判斷單元,還用于判斷所述高帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為Harmonic模式;所述第一速率調(diào)整單元,用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào);所述速率分配單元,還用于當(dāng)所述判斷單元判斷為否時(shí),將所述初始高帶速率作為高帶速率,并將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。進(jìn)一步,自適應(yīng)調(diào)整單元還可以包括(圖7中未示出)第二速率調(diào)整單元,其中,所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào);所述判斷單元,還用于判斷是否所述高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式,且所述低帶信號(hào)的諧波性小于閾值及所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式;所述第二速率調(diào)整單元,用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高二級(jí)速率,將所述輸入總速率減去所述高二級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào);所述判斷單元,還用于當(dāng)所述判斷單元判斷為否時(shí),判斷是否高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Normal模式,且所述低帶信號(hào)的諧波性小于閾值及所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式;所述第二速率調(diào)整單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào);所述速率 分配單元,還用于當(dāng)所述判斷單元判斷為否時(shí),將所述初始高帶速率作為高帶速率,并將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。進(jìn)一步,自適應(yīng)調(diào)整單元還可以包括(圖7中未示出)第三速率調(diào)整單元,其中,所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào);所述判斷單元,還用于判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式;所述第三速率調(diào)整單元,用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào);所述判斷單元,還用于當(dāng)所述判斷單元判斷為否時(shí),判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Noise模式;所述第三速率調(diào)整單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào);所述速率分配單元,還用于當(dāng)所述判斷單元判斷為否時(shí),則將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。進(jìn)一步,自適應(yīng)調(diào)整單元還可以包括(圖7中未示出)第四速率調(diào)整單元和SNR計(jì)算單元,其中,所述速率分配單元,還用于當(dāng)判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將高帶速率集合中的最低速率作為當(dāng)前高帶速率分配給所述高帶信號(hào),相應(yīng)當(dāng)前低帶速率為輸入總速率減去所述當(dāng)前高帶速率;所述SNR計(jì)算單元,用于通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述初始低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并計(jì)算所述本地低帶合成信號(hào)的SNR值;所述判斷單元,還用于判斷所述SNR值是否在預(yù)設(shè)范圍內(nèi);所述速率分配單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將所述初始高帶速率作為所述高帶信號(hào)的高帶速率,將所述初始低帶速率作為所述低帶信號(hào)的低帶速率;所述第四速率調(diào)整單元,用于當(dāng)所述SNR值小于所述預(yù)設(shè)范圍的最小值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到高順序排列時(shí),當(dāng)前低帶速率的高一級(jí)速率,當(dāng)所述SNR值大于所述預(yù)設(shè)范圍的最大值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到高順序排列時(shí),當(dāng)前低帶速率的低一級(jí)速率;所述SNR計(jì)算單元,還用于通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照調(diào)整后的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并重新計(jì)算該本地低帶合成信號(hào)的SNR值;所述判斷單元,還用于判斷重新計(jì)算的SNR值是否在所述預(yù)設(shè)范圍內(nèi);所述速率分配單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將調(diào)整后的低帶速率作為低帶信號(hào)的低帶速率,相應(yīng)的輸入總速率減去調(diào)整后的低帶速率作為高帶信號(hào)的高帶速率;所述第四速率調(diào)整單元,還用于當(dāng)所述判斷單元判斷為否時(shí),重復(fù)執(zhí)行所述第四速率調(diào)整單元的功能。進(jìn)一步,所述判斷單元,還用于在判斷所述輸入總速率不小于所述第一速率后,判斷所述輸入總速率是否大于預(yù)設(shè)的第二速率;以及,所述速率分配單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率集合中的最高速率作為高帶速率分配給高帶信號(hào),將所述輸入總速率減去所述最高速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。 通過(guò)對(duì)以上實(shí)施方式的描述可知,本申請(qǐng)實(shí)施例中將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào),按照低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將音頻信號(hào)的輸入總速率自適應(yīng)分配給低帶信號(hào)和高帶信號(hào),通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,并通過(guò)高帶信號(hào)對(duì)應(yīng)的編碼模式按照高帶速率對(duì)高帶信號(hào)進(jìn)行編碼。由于本申請(qǐng)實(shí)施例中在對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行編碼時(shí),并非按照標(biāo)準(zhǔn)中給定的速率進(jìn)行編碼,而是根據(jù)信號(hào)類型的不同自適應(yīng)調(diào)整編碼速率,因此提高了音頻編碼的總體性能。
本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明實(shí)施例中的技術(shù)可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)。基于這樣的理解,本發(fā)明實(shí)施例中的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如R0M/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所述的本發(fā)明實(shí)施方式,并不構(gòu)成對(duì)本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種音頻編碼方法,其特征在于,包括 將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào); 分別識(shí)別所述低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式; 按照所述低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào),其中,分配給所述低帶信號(hào)的為低帶速率,分配給所述高帶信號(hào)的為高帶速率; 通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,以及通過(guò)所述高帶信號(hào)對(duì)應(yīng)的編碼模式按照所述高帶速率對(duì)所述高帶信號(hào)進(jìn)行編碼。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào)包括 將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào)包括 當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為UC模式時(shí),將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括 當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為UC模式時(shí),將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給所述低帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,還包括 當(dāng)所述輸入總速率大于等于預(yù)設(shè)的第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào); 當(dāng)高帶信號(hào)對(duì)應(yīng)的編碼模式符合速率調(diào)整的類型時(shí),將高帶信號(hào)編碼模式對(duì)應(yīng)的比所述初始高帶速率高的調(diào)整速率作為高帶速率分配給所述高帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
6.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述按照所述低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào)包括 當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為UC模式時(shí),將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給所述低帶信號(hào); 將所述輸入總速率減去所述低帶速率后得到的剩余速率作為高帶速率分配給所述高帶信號(hào)。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,還包括 當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為UC模式,且所述輸入總速率小于預(yù)設(shè)的第一速率時(shí),將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào); 將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,還包括 當(dāng)判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào); 判斷所述高帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為Harmonic模式; 當(dāng)判斷為是,則將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 當(dāng)判斷為否,則將所述初始高帶速率作為高帶速率,并將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,還包括 當(dāng)判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào); 判斷是否所述高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式,且所述低帶信號(hào)的諧波性小于閾值及所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式; 當(dāng)判斷為是,則將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高二級(jí)速率,將所述輸入總速率減去所述高二級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 當(dāng)判斷為否,則判斷是否高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Normal模式,且所述低帶信號(hào)的諧波性小于閾值及所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式; 當(dāng)判斷為是,則將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 當(dāng)判斷為否,則將所述初始高帶速率作為高帶速率,并將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
10.根據(jù)權(quán)利要求7所述的方法,其特征在于,還包括 當(dāng)判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào); 判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式; 當(dāng)判斷為是,則將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 當(dāng)判斷為否時(shí),判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Noise模式; 當(dāng)判斷為是,則將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào); 當(dāng)判斷為否,則將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
11.根據(jù)權(quán)利要求7所述的方法,其特征在于,還包括 當(dāng)判斷所述輸入總速率不小于所述第一速率時(shí),將高帶速率集合中的最低速率作為當(dāng)前高帶速率分配給所述高帶信號(hào),相應(yīng)當(dāng)前低帶速率為輸入總速率減去所述當(dāng)前高帶速率; 通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述初始低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并計(jì)算所述本地低帶合成信號(hào)的信噪比SNR值; 判斷所述SNR值是否在預(yù)設(shè)范圍內(nèi); 當(dāng)判斷為是,則將所述初始高帶速率作為所述高帶信號(hào)的高帶速率,將所述初始低帶速率作為所述低帶信號(hào)的低帶速率; 當(dāng)判斷為否,則執(zhí)行下述調(diào)整步驟當(dāng)所述SNR值小于所述預(yù)設(shè)范圍的最小值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到高順序排列時(shí),當(dāng)前低帶速率的高一級(jí)速率,當(dāng)所述SNR值大于所述預(yù)設(shè)范圍的最大值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到 高順序排列時(shí),當(dāng)前低帶速率的低一級(jí)速率; 通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照調(diào)整后的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并重新計(jì)算該本地低帶合成信號(hào)的SNR值; 判斷重新計(jì)算的SNR值是否在所述預(yù)設(shè)范圍內(nèi); 當(dāng)判斷為是,則將調(diào)整后的低帶速率作為低帶信號(hào)的低帶速率,相應(yīng)的輸入總速率減去調(diào)整后的低帶速率作為高帶信號(hào)的高帶速率; 當(dāng)判斷為否,則返回執(zhí)行所述調(diào)整步驟。
12.根據(jù)權(quán)利要求8至11任意一項(xiàng)所述的方法,其特征在于,在判斷所述輸入總速率不小于所述第一速率后,還包括 判斷所述輸入總速率是否大于預(yù)設(shè)的第二速率; 當(dāng)判斷為是,則將高帶速率集合中的最高速率作為高帶速率分配給高帶信號(hào),將所述輸入總速率減去所述最高速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 當(dāng)判斷為否,則執(zhí)行所述將高帶速率集合中的最低速率分配給所述高帶信號(hào)的步驟。
13.一種音頻編碼裝置,其特征在于,包括 分帶單元,用于將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào); 識(shí)別單元,用于分別識(shí)別所述低帶信號(hào)和高帶信號(hào)的類型,不同類型的低帶信號(hào)和高帶信號(hào)分別對(duì)應(yīng)不同的編碼模式; 自適應(yīng)調(diào)整單元,用于按照所述低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào),其中,分配給所述低帶信號(hào)的為低帶速率,分配給所述高帶信號(hào)的為高帶速率; 編碼單元,用于通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,以及通過(guò)所述高帶信號(hào)對(duì)應(yīng)的編碼模式按照所述高帶速率對(duì)所述高帶信號(hào)進(jìn)行編碼。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述自適應(yīng)調(diào)整單元包括 第一速率分配單元,用于將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述第一速率分配單元,具體用于當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為UC模式時(shí),將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào),當(dāng)所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為UC模式時(shí),將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給所述低帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述第一速率分配單元包括 初始高帶速率分配單元,用于當(dāng)所述輸入總速率大于等于預(yù)設(shè)的第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào); 速率分配調(diào)整單元,用于當(dāng)高帶信號(hào)對(duì)應(yīng)的編碼模式符合速率調(diào)整的類型時(shí),將高帶信號(hào)編碼模式對(duì)應(yīng)的比所述初始高帶速率高的調(diào)整速率作為高帶速率分配給所述高帶信號(hào),將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
17.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述自適應(yīng)調(diào)整單元包括判斷單元和速率分配單元, 所述速率分配單元,用于當(dāng)所述判斷單元判斷所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為UC模式時(shí),將預(yù)設(shè)的低帶速率集合中的最低速率作為低帶速率分配給所述低帶信號(hào),以及將所述輸入總速率減去所述低帶速率后得到的剩余速率作為高帶速率分配給所述高帶信號(hào)。
18.根據(jù)權(quán)利要求17所述的裝置,其特征在于, 所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為UC模式,且所述輸入總速率小于預(yù)設(shè)的第一速率時(shí),將預(yù)設(shè)的高帶速率集合中的最低速率作為高帶速率分配給所述高帶信號(hào),以及將所述輸入總速率減去所述高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
19.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述自適應(yīng)調(diào)整單元還包括第一速率調(diào)整單元, 所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào); 所述判斷單元,還用于判斷所述高帶信號(hào)的類型對(duì)應(yīng)的編碼模式是否為Harmonic模式; 所述第一速率調(diào)整單元,用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 所述速率分配單元,還用于當(dāng)所述判斷單元判斷為否時(shí),將所述初始高帶速率作為高帶速率,并將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
20.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述自適應(yīng)調(diào)整單元還包括第二速率調(diào)整單元, 所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào);所述判斷單元,還用于判斷是否所述高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式,且所述低帶信號(hào)的諧波性小于閾值及所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式; 所述第二速率調(diào)整單元,用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高二級(jí)速率,將所述輸入總速率減去所述高二級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 所述判斷單元,還用于當(dāng)所述判斷單元判斷為否時(shí),判斷是否高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Normal模式,且所述低帶信號(hào)的諧波性小于閾值及所述低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為audio編碼模式; 所述第二速率調(diào)整單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 所述速率分配單元,還用于當(dāng)所述判斷單元判斷為否時(shí),將所述初始高帶速率作為高帶速率,并將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
21.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述自適應(yīng)調(diào)整單元還包括第三速率調(diào)整單元, 所述速率分配單元,還用于當(dāng)所述判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將所述高帶速率集合中的最低速率作為初始高帶速率分配給所述高帶信號(hào); 所述判斷單元,還用于判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式不為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Harmonic模式; 所述第三速率調(diào)整單元,用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將所述輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào); 所述判斷單元,還用于當(dāng)所述判斷單元判斷為否時(shí),判斷是否低帶信號(hào)的類型對(duì)應(yīng)的編碼模式為VC模式,且高帶信號(hào)的類型對(duì)應(yīng)的編碼模式為Noise模式; 所述第三速率調(diào)整單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率調(diào)整為所述高帶速率集合中按照從低到高順序排列時(shí),所述初始高帶速率的高一級(jí)速率,將輸入總速率減去所述高一級(jí)速率后得到的剩余速率作為低帶速率分配給低帶信號(hào); 所述速率分配單元,還用于當(dāng)所述判斷單元判斷為否時(shí),則將所述輸入總速率減去所述初始高帶速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
22.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述自適應(yīng)調(diào)整單元還包括第四速率調(diào)整單元和SNR計(jì)算單元, 所述速率分配單元,還用于當(dāng)判斷單元判斷所述輸入總速率不小于所述第一速率時(shí),將高帶速率集合中的最低速率作為當(dāng)前高帶速率分配給所述高帶信號(hào),相應(yīng)當(dāng)前低帶速率為輸入總速率減去所述當(dāng)前高帶速率; 所述SNR計(jì)算單元,用于通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述初始低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并計(jì)算所述本地低帶合成信號(hào)的SNR值;所述判斷單元,還用于判斷所述SNR值是否在預(yù)設(shè)范圍內(nèi);所述速率分配單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將所述初始高帶速率作為所述高帶信號(hào)的高帶速率,將所述初始低帶速率作為所述低帶信號(hào)的低帶速率; 所述第四速率調(diào)整單元,用于當(dāng)所述SNR值小于所述預(yù)設(shè)范圍的最小值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到高順序排列時(shí),當(dāng)前低帶速率的高一級(jí)速率,當(dāng)所述SNR值大于所述預(yù)設(shè)范圍的最大值時(shí),將低帶速率調(diào)整為低帶速率集合中按照從低到高順序排列時(shí),當(dāng)前低帶速率的低一級(jí)速率; 所述SNR計(jì)算單元,還用于通過(guò)低帶信號(hào)對(duì)應(yīng)的編碼模式按照調(diào)整后的低帶速率對(duì)低帶信號(hào)進(jìn)行編碼,得到本地低帶合成信號(hào),并重新計(jì)算該本地低帶合成信號(hào)的SNR值;所述判斷單元,還用于判斷重新計(jì)算的SNR值是否在所述預(yù)設(shè)范圍內(nèi); 所述速率分配單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將調(diào)整后的低帶速率作為低帶信號(hào)的低帶速率,相應(yīng)的輸入總速率減去調(diào)整后的低帶速率作為高帶信號(hào)的高帶速率;所述第四速率調(diào)整單元,還用于當(dāng)所述判斷單元判斷為否時(shí),重復(fù)執(zhí)行所述第四速率 調(diào)整單元的功能。
23.根據(jù)權(quán)利要求19至22任意一項(xiàng)所述的裝置,其特征在于, 所述判斷單元,還用于在判斷所述輸入總速率不小于所述第一速率后,判斷所述輸入總速率是否大于預(yù)設(shè)的第二速率; 所述速率分配單元,還用于當(dāng)所述判斷單元判斷為是時(shí),將高帶速率集合中的最高速率作為高帶速率分配給高帶信號(hào),將所述輸入總速率減去所述最高速率后得到的剩余速率作為低帶速率分配給所述低帶信號(hào)。
全文摘要
本申請(qǐng)實(shí)施例公開(kāi)了一種音頻編碼方法及裝置,該方法包括將輸入的音頻信號(hào)分為低帶信號(hào)和高帶信號(hào);分別識(shí)別所述低帶信號(hào)和高帶信號(hào)的類型;按照所述低帶信號(hào)和高帶信號(hào)對(duì)應(yīng)的不同編碼模式,將所述音頻信號(hào)的輸入總速率自適應(yīng)分配給所述低帶信號(hào)和高帶信號(hào);通過(guò)所述低帶信號(hào)對(duì)應(yīng)的編碼模式按照所述低帶速率對(duì)所述低帶信號(hào)進(jìn)行編碼,以及通過(guò)所述高帶信號(hào)對(duì)應(yīng)的編碼模式按照所述高帶速率對(duì)所述高帶信號(hào)進(jìn)行編碼。由于本申請(qǐng)實(shí)施例中在對(duì)低帶信號(hào)和高帶信號(hào)進(jìn)行編碼時(shí),并非按照標(biāo)準(zhǔn)中給定或編碼前設(shè)定的速率進(jìn)行編碼,而是根據(jù)信號(hào)類型的不同自適應(yīng)調(diào)整編碼速率,因此提高了音頻編碼的總體性能。
文檔編號(hào)G10L19/00GK102737636SQ20111009220
公開(kāi)日2012年10月17日 申請(qǐng)日期2011年4月13日 優(yōu)先權(quán)日2011年4月13日
發(fā)明者劉澤新, 苗磊, 齊峰巖 申請(qǐng)人:華為技術(shù)有限公司