媒體轉碼的云原生設計
介紹
當今的網(wǎng)絡(luò )和設備中使用了大量不同的語(yǔ)音和視頻編碼算法或編解碼。多年來(lái),編解碼已經(jīng)開(kāi)發(fā)出來(lái),以適應各種目的; 一些被設計為減少帶寬消耗 (例如iBLC、G729ab和AMR這樣的窄帶編解碼),而另一些被設計為提供卓越的語(yǔ)音質(zhì)量 (例如,AMR-WB、G.722和Opus等寬帶編解碼),如下圖所示。

世界上所有領(lǐng)先的服務(wù)提供商都推出了端到端高清語(yǔ)音服務(wù),因此所有終端之間媒體互通是必要的。 例如,對于高清語(yǔ)音服務(wù),WebRTC使用Opus,企業(yè)有線(xiàn)使用G.722,而無(wú)線(xiàn)網(wǎng)絡(luò )可能使用AMR-WB。這些不同端點(diǎn)的互通將需要在這些HD編解碼之間進(jìn)行媒體轉碼。隨著(zhù)移動(dòng)通信的發(fā)展以及諸如WebRTC之類(lèi)的技術(shù)繼續獲得認可,還將開(kāi)發(fā)新的創(chuàng )新編解碼器來(lái)支持它們。編解碼的激增將對服務(wù)提供商提出更高的要求,以支持其網(wǎng)絡(luò )中新編解碼和舊編解碼的媒體互通。
為了滿(mǎn)足媒體轉碼的需求,服務(wù)提供商使用SBC提供轉碼以及廣泛的其他媒體處理功能,例如: 媒體監管和門(mén)控; 媒體格式轉換和流管理; 傳真和DTMF檢測和生成; 帶內到帶外DTMF轉換; 和靜音抑制。
即使是像傳真音調檢測這樣的簡(jiǎn)單要求,也需要對媒體流進(jìn)行解碼和分析。在SBC硬件中進(jìn)行語(yǔ)音呼叫轉碼的能力有助于簡(jiǎn)化服務(wù)提供商的通信流程,并提供高性?xún)r(jià)比且可靠的方式進(jìn)行實(shí)時(shí)通信。但高會(huì )話(huà)數的實(shí)時(shí)語(yǔ)音和視頻呼叫需要密集的計算,隨著(zhù)媒體互通需求的增加,這將給媒體處理功能帶來(lái)額外的負擔。
為了滿(mǎn)足媒體互通要求,SBC歷來(lái)使用基于硬件的數字信號處理器 (DSP),但是在云原生解決方案中,基于硬件的DSP不適合軟件的部署模型。 這些選項變成使用中央處理單元 (CPU)或圖形處理單元 (GPU)來(lái)替代,正如我們將展示的那樣,這就是GPU閃耀的地方。
- 媒體轉碼的云原生設計
通信服務(wù)提供商提供云原生實(shí)時(shí)通信的能力將在很大程度上取決于下一代媒體處理平臺的能力及其對各種編碼的支持。我們認為,云原生的媒體轉碼解決方案意味著(zhù)它是為虛擬云部署設計的,利用了基于云的應用程序的純軟件、分布式、動(dòng)態(tài)、可編排的特性。
對于Ribbon SBC,這意味著(zhù)采用微服務(wù)體系結構將核心SBC應用程序組件分發(fā)到信令,媒體和轉碼中。這使得能夠根據每個(gè)組件的規模、成本和性能獨立選擇技術(shù)。Ribbon SBC微服務(wù)體系結構和可用的技術(shù)選擇如下圖2所示

- 云中的媒體轉碼
在云環(huán)境中,支持虛擬云環(huán)境中的媒體轉碼主要有兩種選擇: CPU和GPU
- 基于CPU的媒體轉碼
英特爾x86是一款通用CPU,它可以支持媒體互通所需的矢量計算,也支持與媒體處理無(wú)關(guān)的大量附加指令。因此,英特爾x86在功率和性能方面通常都不太有效,盡管英特爾在其最近的CPU體系結構演變中繼續加強矢量算術(shù)功能。
然而,即使使用最好的處理器,基于CPU的轉碼解決方案也比使用專(zhuān)用DSP處理的同時(shí)轉碼的會(huì )話(huà)數量少得多。在成本、轉碼、功率效率和機架空間方面,DSP比CPU有更高效率和性?xún)r(jià)比。一個(gè)基本的估計是,與英特爾CPU相比,現代DSP可以產(chǎn)生每瓦信道吞吐量的五倍或更多倍。然而,在純軟件環(huán)境中,基于CPU的媒體互通仍然為用戶(hù)提供了某些好處。
基于CPU的解決方案
- 支持使用現成的硬件。在不同平臺上運行的可移植性,為不同部署規模找到合適的解決方案。
- 確保昂貴的專(zhuān)用硬件不會(huì )因媒體互通的要求隨時(shí)間變化而擱淺
- 以靈活敏捷的方式輕松添加新的編解碼,尤其是針對諸如SILK或OPUS之類(lèi)的CPU進(jìn)行了優(yōu)化的編解碼
- 適合虛擬云部署,支持動(dòng)態(tài)擴展,容量較低的應用模型
基于GPU的媒體轉碼
GPU是高性能的多核處理器,能夠非常高的計算和數據吞吐量。曾經(jīng)很難編程,但是今天的GPU是通用并行處理器,支持可訪(fǎng)問(wèn)的編程和C語(yǔ)言等借口。在并行化計算的情況下,將其應用程序移植到GPU的開(kāi)發(fā)人員通常會(huì )比優(yōu)化的CPU實(shí)現速度提高幾個(gè)數量級。
基于GPU的解決方案
- 可以實(shí)現類(lèi)似于dsp的性能
- 適合虛擬云部署模型
- 旨在通過(guò)多個(gè)實(shí)例支持多個(gè)轉碼場(chǎng)景
- 在縮放密度、機架空間和基于CPU的媒體互通方面有多倍的提升
未完,待續

如想了解更多信息請聯(lián)系Riboon在中國區的合作伙伴:北京美迪格威科技有限公司