可共同地被稱作前一幀的"部分副本"。在特定實施例中,分配到低頻帶冗余 譯碼信息和高頻帶冗余譯碼信息的帶寬量(例如,幀的位數(shù)目)可在幀之間動態(tài)調(diào)整,如本 文進一步描述。
[0030] 舉例來說,編碼器116可在后續(xù)幀N+QFFSET中對幀N 132的冗余譯碼信息進行編碼,其 中OFFSET是大于或等于1的整數(shù)。當經(jīng)由包交換網(wǎng)絡傳送幀時,每一幀可個別地路由到目的 地裝置且?guī)蔁o序地到達。因此,即使幀N 132(或其一部分)可損壞或可能不到達第二計算 裝置120(本文統(tǒng)稱為相對于幀N 132的"幀擦除"條件),幀N+QFFSET也可完整地到達(或可能已 經(jīng)到達)第二計算裝置120。幀 N+QFFSET中的冗余譯碼信息可由第二計算裝置120使用以重構 幀N 132(或其一部分)或遏止嚴重的引入假象的誤差傳播。
[0031]在圖1的實例中,OFFSET等于2。因此,幀N-.131的冗余譯碼信息添加到幀N+1 133, 幀N 132的冗余譯碼信息添加到幀N+2 134等。在替代實施例中,OFFSET參數(shù)可具有除2外的 值。OFFSET參數(shù)的值可由行業(yè)標準(例如,增強話音服務(EVS)標準)界定,可由計算裝置110 和120協(xié)商,和/或可基于測得或估計的網(wǎng)絡錯誤而確定。在說明性實施例中,第一計算裝置 110可經(jīng)配置以確定是否發(fā)送冗余譯碼信息。舉例來說,第一計算裝置110可基于與幀N 132 相關聯(lián)的"關鍵性"參數(shù)而確定是否在幀N+2 134中發(fā)送幀~132的冗余幀信息,其中所述關 鍵性參數(shù)指示在發(fā)射期間幀N 132丟失的情況下幀N 132在減少或最小化音頻信號中的假象 方面的相對重要性。因此,取決于來源受控參數(shù)以及基于網(wǎng)絡或信道條件,可基于每幀而執(zhí) 行冗余幀信息的通信。
[0032]在特定實施例中,LB核心、HB參數(shù)、HB冗余譯碼信息和LB冗余譯碼信息在幀中占據(jù) 的空間量(例如,位數(shù)目)由編碼器116動態(tài)調(diào)整。舉例來說,如圖1中所示,HB與LB冗余譯碼 信息的比率在幀Ν+ι 133中比幀N+2 134中低。在特定實施例中,HB與LB冗余譯碼信息在 [25%,75% ]分割與[5%,95% ]分割之間變化。作為另一實例,如圖1中所示,HB參數(shù)與LB核 心的比率在幀n 131中比在幀N+1 133中低,切HB參數(shù)與LB核心的比率在幀N+1 133中比在 幀N 132和幀N+2 134中低。
[0033]作為一實例,當音頻幀中不包含冗余譯碼信息時用于音頻幀的標稱編碼位速率可 為13.2kbps。為了適應冗余譯碼信息,用于音頻幀的LB核心和HB參數(shù)的譯碼速率可減少到 9.6kbps。剩余3.6kbps帶寬可用以對前一幀的HB和LB冗余譯碼信息進行編碼,其中HB與LB 冗余譯碼信息之間的分裂可在幀之間在[25 %,75 % ]分裂與[5 %,95 % ]分裂之間動態(tài)變 化。應注意,所描述的位速率和分裂僅是舉例。在替代實施例中,所描述技術可與不同位速 率和不同分裂一起使用。在另一特定實施例中,冗余幀與主要幀之間分布的位的比率可為 自適應的。舉例來說,主要幀可使用11.6kbps,而冗余幀可使用總13.2kbps的1.6kbps。在另 一實例中,主要幀可使用12.6kbps,而冗余幀可使用總13.2kbps的0.6kbps?;?關鍵性" 參數(shù),當一些位用于冗余幀譯碼時在不存在網(wǎng)絡錯誤下或在清潔信道條件中,此動態(tài)位分 配可實現(xiàn)且可限制主要幀質(zhì)量的降級。
[0034]當確定在特定幀(例如,幀N+2 134)中多少空間分配給HB冗余譯碼信息以及LB冗余 譯碼信息時,編碼器116可考慮正使用的包交換網(wǎng)絡的性質(zhì)、特定幀和/或正發(fā)射冗余譯碼 信息的前一幀(例如,幀N 132)。參考圖2-9進一步描述冗余譯碼信息以及動態(tài)調(diào)整在音頻 幀內(nèi)多少空間分配給此冗余譯碼信息的實例。
[0035] 第二計算裝置120可包含處理器122和存儲器124。在特定實施例中,存儲器124存 儲可由處理器122執(zhí)行以執(zhí)行本文所描述的各種操作的指令。第二計算裝置120還可包含解 碼器126和接收器128。解碼器126可對由接收器128接收(例如,經(jīng)由包交換網(wǎng)絡)的音頻幀 進行解碼,例如音頻幀131、132、133和/或134。在替代實施例中,第二計算裝置120除接收器 128之外還可包含發(fā)射器,或可包含經(jīng)配置以發(fā)射和接收數(shù)據(jù)的收發(fā)器。
[0036]在特定實施例中,第二計算裝置120包含緩沖器,其在圖1中說明為去抖動緩沖器 129。接收器128可在去抖動緩沖器129中存儲所接收的包(例如,音頻幀)。因為經(jīng)由包交換 網(wǎng)絡發(fā)射的包可無序地到達,所以去抖動緩沖器129可用以基于例如包時戳而存儲且重排 序所接收的包。在網(wǎng)絡錯誤的存在下,解碼器126可能不能解碼一或多個包的全部或部分, 因為包(或其部分)可能損壞或丟失(例如,不被接收)。舉例來說,在音頻幀131-134的發(fā)射 期間,幀N 132會丟失。解碼器126可從幀N+2 134中的冗余譯碼彳目息重構丟失的幀N 132。參考 圖2-9進一步描述冗余譯碼信息以及丟失音頻幀的重構的實例。
[0037] 在操作期間,第一計算裝置110可對音頻幀131-134進行編碼且經(jīng)由包交換網(wǎng)絡將 其發(fā)射到第二計算裝置120。第二計算裝置120可在去抖動緩沖器129中緩沖所接收的音頻 幀。解碼器126可從去抖動緩沖器129檢索所存儲的音頻幀且解碼所述音頻幀。當解碼器126 確定其不能夠解碼特定音頻幀(或其部分)(例如,因為所述幀或其部分損壞或未被接收) 時,解碼器126可檢查去抖動緩沖器129以查看包含用于破壞/丟失幀的冗余譯碼信息的幀 (例如,音頻流中跟隨破壞/丟失幀的"未來"幀)的可用性。如果此未來幀可用,那么解碼器 126可使用來自未來幀的冗余譯碼信息重構且解碼特定音頻幀(或其部分)。圖1的系統(tǒng)100 可因此實現(xiàn)冗余幀信息的通信,其可用以在不利網(wǎng)絡條件存在下改善音頻解碼性能。
[0038] 應注意,在以上描述中,將由圖1的系統(tǒng)100執(zhí)行的各種功能描述為由特定組件或 模塊執(zhí)行。然而,組件和模塊的此劃分僅為了說明。在替代實施例中,由特定組件或模塊執(zhí) 行的功能可實際上劃分為多個組件或模塊。此外,在替代實施例中,圖1的兩個或兩個以上 組件或模塊可集成到單個組件或模塊中。圖1中說明的每一組件或模塊可使用硬件(例如, 現(xiàn)場可編程門陣列(FPGA)裝置、專用集成電路(ASIC)、DSP、控制器等)、軟件(例如,可由處 理器執(zhí)行的指令)或其任何組合實施。
[0039 ]參考圖2和圖3,展示音頻幀134的說明性實施例。音頻幀134可包含經(jīng)編碼LB部分, 指定為"LB核心"。經(jīng)編碼LB部分可包含LB線性預測濾波器和激勵信息。舉例來說,經(jīng)編碼低 頻帶部分可包含LB線譜對(LSP)索引和LB激勵201。在替代實施例中,音頻幀的LB核心可包 含不同信息。音頻幀134還可包含HB參數(shù),指定為"HB參數(shù)"。HB參數(shù)占據(jù)比經(jīng)編碼LB核心少 的空間,且包含可由解碼器根據(jù)音頻信號譯碼模型使用以重構音頻幀的HB部分的參數(shù)集 合。在圖2的實例中,HB參數(shù)可包含經(jīng)變換LB激勵202、HB增益形狀203、HB增益幀204和HB LSP索引205。在替代實施例中,音頻幀可包含不同的HB參數(shù)。
[0040] 在特定實施例中,LB LSP索引和LB激勵201、經(jīng)變換LB激勵202、HB增益形狀203、HB 增益幀204和HB LSP索引205是在編碼器(例如,圖1的編碼器116或參考圖5描述的編碼器 500)處在音頻分析期間產(chǎn)生。舉例來說,音頻信號可通過分析濾波器組,其將音頻信號分離 為LB信號和HB信號。LB和HB信號可或可不重疊。LB信號可輸入到LP分析模塊中,其將LB信號 的譜包絡編碼為LP系數(shù)(LPC)的集合。變換模塊可將LPC變換為LSP,其可替代地被稱作線譜 對(LSP)。量化器可通過識別"最接近于" LSP的LB LSP碼簿的條目而量化LSP。量化器可如 201處展示的LB LSP索引輸出碼簿中的條目的索引。LB分析模塊還可產(chǎn)生在201處展示的LB 激勵和經(jīng)變換LB激勵202。舉例來說,LB激勵可為通過量化在LP分析模塊執(zhí)行的LP過程期間 產(chǎn)生的LP殘余信號而產(chǎn)生的經(jīng)編碼信號。LP殘余信號可表示預測誤差。
[0041] HB分析模塊可從分析濾波器組接收HB信號且從LB分析模塊接收低頻帶激勵信號。 HB分析模塊可使用類似于所描述過程的LPC譯碼、變換和量化過程產(chǎn)生HB LSP索引205,以 產(chǎn)生LB LSP索引和LB激勵201。冊LSP索引205可占據(jù)比LB LSP索引少的位。HB分析模塊還 可產(chǎn)生HB增益形狀203和HB增益幀204。冊增益形狀203和HB增益幀204可使得解碼器(例如, 圖1的解碼器126或參考圖6描述的解碼器)能夠調(diào)整HB增益形狀和幀增益以更準確地再生 HB信號。
[0042] 當冗余幀譯碼信息的通信經(jīng)啟用時,音頻幀134進一步包含另一音頻幀的LB冗余 譯碼信息214和HB冗余譯碼信息210。音頻幀134還可包含幀類型指示符215。如參考圖5-6進 一步描述,在說明性實施例中,幀類型指示符215是3位指示符,其指示另一音頻幀的幀類型 且指示音頻幀134的多少位分配給LB冗余譯碼信息214和HB冗余譯碼信息210。在特定實施 例中,LB冗余譯碼信息214或HB冗余譯碼信息210可為任選的。HB冗余譯碼信息210可包含HB 增益形狀指示符211、HB增益幀指示符212和HBLSP指示符213,如圖2中所示。在替代實施例 中,HB譯碼信息210可包含不同指示符或指示符的組合。舉例來說,HB LSP指示符213可包含 在HB冗余譯碼信息210中以用于超寬帶通信,但可針對寬帶通信省略。作為另一實例,HB增 益形狀指示符211和/或HB增益幀指示符212可針對某些類型的幀省略。
[0043]在特定實施例中,HB增益形狀指示符211可為與前一音頻幀(例如,幀N 132)的HB 增益形狀相關聯(lián)的單位指示符。編碼器可基于幀N 132與幀N+2 134的HB部分之間的相關而 設定HB增益形狀指示符211的值。舉例來說,幀N 132與幀N+2 134之間的經(jīng)幀間正規(guī)化的HB 相關可基于以下公式而估計:
[0044]
[0045] 其中XN(k)是第N幀的第k增益形狀值。在一個實例中,一或多個子幀的滾動窗可用 以確定每幀四個增益形狀值(例如,k從1變化到4)。如果相關值大于閾值(例如,0.75),那么 編碼器將HB增益形狀指示符211的值設定為第一值(例如,GS_bit=l)。當HB增益形狀指示 符211具有第一值時,解碼器可在幀N 132的冗余幀解碼/重構期間再使用幀N+2 134的HB增 益形狀203作為幀N 132的估計HB增益形狀。如果相關值小于閾值,那么編碼器將HB增益形 狀指示符211的值設定為第二值(例如,GS_bit = 0)。當HB增益形狀指示符211具有第二值 時,解碼器可使用恒定增益形狀作為估計增益形狀,或可執(zhí)行某種其它預測方法來估計幀N 132的增益形狀。
[0046]在特定實施例中,編碼器可基于碼簿索引距離而不是HB增益形狀相關或者除HB增 益形狀相關之外還基于碼簿索引距離來確定HB增益形狀指示符211的值。舉例來說,編碼器 可維持或存取用以量化HB增益形狀信息203的HB增益形狀碼簿。編碼器可確定與幀N 132的 HB增益形狀相關聯(lián)的第一碼簿索引以及與幀N+2 134的HB增益形狀相關聯(lián)的第二碼簿索引。 編碼器可基于碼簿索引之間的距離(例如,最小均方誤差距離)設定HB增益形狀指示符211 的值(例如,GS_bit = l或GS_bit = 0)。
[0047] HB增益幀指示符212可為單位指示符或多位指示符。在特定實施例中,HB增益幀指 示符212的大小由編碼器動態(tài)調(diào)整。舉例來說,包交換網(wǎng)絡可用以發(fā)射各種類型的音頻幀, 包含濁音音頻幀、通用音頻幀、過渡音頻幀和非濁音音頻幀。針對非濁音幀的增益幀量化使 用比針對濁音/通用/過渡幀寬的動態(tài)范圍可為有用的。較粗略的增益幀量化可足以有效地 表示濁音/通用/過渡幀的HB與LB增益比率。因此,如果幀N 132是非濁音幀,那么編碼器可 將第一較大數(shù)目的位(例如,3到6位)分配給HB增益幀指示符212。如果幀N 132不是非濁音 幀,那么編碼器可將第二較小數(shù)目的位(例如,1到2位)分配給HB增益幀指示符212。
[0048]在圖2中所示的實例中,HB增益幀指示符212被分配大量的位(例如,3-6位)。相比 之下,圖3說明其中HB增益幀指示符312被分配比圖2的HB增益幀指示符212少的數(shù)目的位 (例如,1-2位)。因為HB增益幀指示符312被分配較小數(shù)目的位,所以額外位可用于表示LB冗 余譯碼信息314,其大于圖2的LB冗余譯碼信息214。替代地,所述額外位可分配給幀N+2 134 的LB核心或HB參數(shù)。在圖2-3中,使用三個分隔線250、260和270說明位分配中的此靈活性。