概念
RTC(Real-Time Communication)意為實時通信,是一項已發展十余年的技術,主要是以語音、視頻、網絡電話作為通信主體,通常不要求完全必達,以RTP/RTCP、UDP作為主要數據傳輸協議,同時也具備TCP傳輸能力。在熟悉RTC技術之前,我們首先了解下RTC與IM(即時通訊,Instant Message)、WebRTC、實時音視頻、實時互動幾個常用概念的區別。
IM主要是指以文本、短語音、文件等內容為主的信息傳遞,通常要求信息必達,以TCP/UDP作為主要傳輸協議。
WebRTC(Web Real-Time Communications,Web 實時通信),目前作為網頁端實時通信的標準,已得到各個瀏覽器廠商的廣泛支持,提供了基礎的前端功能實現,WebRTC并不等同于RTC,而是RTC技術棧中的重要組成部分。
實時音視頻則是RTC技術在音視頻領域最常見的應用場景。
實時互動則是將RTC技術和IM、美顏特效、語音特效、AI智能處理、互動白板、轉碼推流、內容審核等多種核心能力集成在一起形成的以超低延時、強互動為主要目標的技術場景化集合,RTC技術是實時互動的重要組成部分。
發展簡史
回顧RTC技術的發展歷程,自1995年,首款基于VoIP(Voice over Internet Protocol)的通信產品誕生,實現了基于IP傳輸的語音通話和多媒體會議。到1999年,GIPS(Global IP Solutions)利用PC計算能力對聲音算法進行創新,為互聯網通信提供新引擎,并陸續向QQ、Skype、Webex等產品提供音頻引擎。到2010谷歌收購 GIPS并于2011年更名為WebRTC進行開源,實現了視頻流、音頻流或者其他任意數據在瀏覽器之間的點對點連接傳輸。再到2014年,全球首個商用實時音視頻傳輸網絡RTN(Real-time Network)開始搭建,使用邊緣計算節點與智能路由提升通信傳輸效率,為RTC大規模實時互動提供網絡保障。再到2021年萬維網聯盟(W3C)和互聯網工程任務組(IETF)宣布WebRTC成為官方標準,成為線上通信及協作服務的基石。在新冠疫情的推動下,RTC技術更是在直播連麥、遠程教育、線上會議、電商直播、游戲直播、云游戲、遠程控制等場景下得到了極大程度的推廣和普及應用,目前RTC技術已快速滲透到各行各業中。
** 技 術 篇 **
互動直播系統架構
前面提到了RTC技術在很多種場景下都得到了運用,本篇文章將主要從音視頻通話和連麥的角度來探討RTC關鍵技術。接下來,我們了解下RTC技術在互動直播應用中的角色,如圖1所示:
圖1 互動直播系統整體架構圖
圖1為典型的互動直播整體架構圖,包括直播平面、互動平面和調度平面,RTC系統主要包括調度平面和互動平面,主要負責實時音視頻流的接入和轉發,以滿足超低延時音視頻互動能力,再將RTC媒體流混合后轉推到CDN網絡(步驟4、6),以滿足弱互動性、高并發、低成本的直播觀看能力。
RTC實時音視頻系統整體架構
接下來,我們再來看一下典型的RTC實時音視頻系統整體架構情況,如圖2所示:
圖2 RTC實時音視頻系統整體架構圖
RTC實時音視頻系統整體架構主要包括圖2中的RTC平臺層和資源層,RTC平臺層又包括SDK能力和后臺服務能力兩部分,SDK能力主要包括底層能力層和各平臺封裝層兩部分;后臺服務能力主要包括適配網關、調度系統、信令系統、媒體轉發系統、后臺管理、混流轉推、大數據分析、運維監控管理等等。資源層包括云主機、物理機、網絡、存儲、DNS等等。
生產消費流程
接下來,我們再來看一看RTC實時音視頻系統中數據的生產消費流程,如圖3所示:
圖3 RTC音視頻數據生產消費流程圖
從發送端數據的采集開始到接收端數據的渲染播放,整個流程要先后經過采集、前處理、編碼、傳輸、解碼、后處理、渲染播放等環節。其中采集、前處理、編碼、解碼、后處理、渲染播放在RTC SDK終端完成,傳輸環節由RTC SDK終端和RTC后端媒體轉發系統共同完成。
采集環節主要包括音頻采集、視頻采集、文件采集等;
前處理環節主要包括視頻美顏、視頻濾鏡、音視頻識別、音頻3A、音頻特效等;
編碼環節主要包括編碼器類型選擇、編碼參數調控、編碼策略控制等;
傳輸環節相對比較復雜,既包括客戶端SDK數據的發送和接收,還包括數據在RTC媒體網絡中的轉發和質量反饋,涉及到ARQ(Automatic Repeat-reQuest,自動重傳請求)、FEC(Forward Error Correction,前向糾錯)、JitterBuffer(視頻網絡抖動緩沖器)、NetEQ(Network Equalizer,音頻網絡抖動緩沖器)、PacedSender(平滑發送控制器)、GCC(Google Congestion Control,擁塞控制算法)等多種網絡傳輸關鍵技術;
解碼環節主要包括解碼器類型選擇、解碼參數調控、解碼策略控制等;后處理主要包括音畫同步、音頻3A、音頻混音等;
渲染播放主要包括音視頻的即時渲染、GPU渲染等。
調度系統
RTC調度系統的本質是在實時音視頻數據傳輸的質量、傳輸成本、資源利用等諸多約束因素情況下,綜合運用工程與算法手段,得到網絡路徑、資源分配等實時近似最優解。一般又可細分為接入調度、負載調度、資源調度、場景調度等。
質量方面需要考慮用戶地理位置、網絡運營商、本地網絡特征、設備性能、RTC使用場景類型、場景對質量要求的SLA、參與互動人數、各服務運行指標等條件;成本方面需要考慮資源預留、資源利用率、帶寬削峰填谷等。目前行業領先的實踐是基于接入負載均衡、骨干網路規劃、實時質量檢測等能力基礎之上,結合機器學習預測方法,通過抽象多種不同RTC應用場景需求并轉化為數學優化問題,采用最優化算法,尋求得出最優調度決策方案。同時調度系統在部署上,除了要考慮機房內集群化部署,還需要考慮多中心分布式部署,以避免單機房故障導致的調度系統功能失效等問題。
實時信令系統
RTC實時信令系統的主要作用是通過傳輸實時控制指令,控制RTC媒體流的發布、訂閱和轉發,以及實時同步房間及用戶的各種狀態。另外,RTC實時信令系統通常還支持傳遞用戶自定義消息,可以滿足應用內的文字消息、彈幕等輕聊天場景。
在一些面向未來的實時互動場景中,實時信令技術能帶來例如虛擬人物的表情、道具狀態等實時同步;SLG、MOBA等類型游戲核心業務的實時數據傳輸,比如行軍狀態同步,地圖資源同步等;直播中的其他業務數據(如送禮物,抽獎等)的實時傳輸;物聯網和智能設備的實時通信、監控元數據、處理數據傳入和傳出。消息必達、超低延遲、高并發是RTC實時信令系統的顯著特征,因此,在傳輸上既要支持常規TCP協議,還要支持UDP協議,以滿足超低延時要求。在網絡架構上,針對中小規模RTC系統,通常采用純網狀的網絡架構;針對大規模RTC系統,純網狀網絡架構已無法完全滿足超高并發信令的實時分發,通常需要引入中心網狀+邊緣樹狀模型的網絡架構。
在RTC系統中,只有同時滿足信令消息的高可靠、超低延時、高并發,才能保證RTC系統媒體的正常分發,以及房間和人員狀態的正常同步。
媒體分發系統
RTC媒體分發系統主要作用是從接收到應用終端發送的音視頻媒體數據開始,到最后將數據發送到其他應用終端的過程中,對音視頻數據在RTC媒體系統中的轉發控制。在網絡傳輸方面會涉及到ARQ(Automatic Repeat-reQuest,自動重傳請求)、FEC(Forward Error Correction,前向糾錯)、PacedSender(平滑發送控制器)、GCC(Google Congestion Control,擁塞控制算法)、Simulcast(視頻大小流控制)、帶寬探測、碼率控制、數據緩存、質量反饋等技術;在級聯轉發方面通常會涉及到服務器內核級聯、機器級聯、機房級聯等策略。超低延時、高并發、轉發調控是RTC媒體分發系統的顯著特征。
RTC媒體分發系統通常還分為SFU(Selective Forwarding Unit)和MCU(MultiPoint Control Unit)兩種分發架構,如圖4所示。
SFU架構是將所有參與會話的流都發送到服務端,服務端將同等數量的流轉發給應用終端,適合對超低延時要求高,并發要求不是特別高的場景,例如會議系統、直播連麥、遠程面試等。
MCU架構是將所有參與會話的流都發送到服務端,服務端將所有流混流合并成一路流,然后再下發到應用終端,適合對超低延時要求不高,對并發要求特別高的場景,比如大規模賽事直播等場景。
業內主流是使用SFU分發架構,當有超大規模分發需求時,通過MCU混流后,再將媒體流轉推到CDN系統,由CDN系統來支撐超大規模并發能力。不過,目前業內也出現了以阿里的GRTN和騰訊TRTC為代表的基于SFU模型的全鏈路RTC分發方案,具備支撐百萬級并發,且延時可控制在秒內的能力,同時,也給RTC媒體分發系統的級聯策略、轉發性能、資源調度、信令協助等能力帶來了非常大的挑戰。
圖4 SFU和MCU分發架構示意圖
混流轉推系統
如圖1中所示,RTC混流轉推系統主要作用是將RTC系統中所有參與會話的音視頻數據流混合成為1路或多路媒體流,然后再轉發到CDN或文件錄制等旁路系統,以支持RTC系統和其他音視頻系統之間的數據流轉。業內使用的典型案例,就是圖1中的互動直播場景,將主播和嘉賓連麥的數據流混合后,旁路轉推到CDN系統,以滿足超高并發的直播觀看需求,并能有效地減少運營成本。
RTC混流轉推系統主要包括接入網關、RTC流拉取、編碼、布局管理、圖像合成、多協議轉推等能力。在技術指標上,對混流服務器性能要求較高,如果在高并發混流任務情況下,通常還需要使用服務器GPU硬件編碼及渲染合成能力,實現高效率完成音視頻編解碼和圖像合成。
數據質量分析系統
RTC數據質量分析系統在RTC系統中,主要起到兩方面作用,一個是通過實時數據的上報、收集、查詢、分析,實時了解從整體到個別用戶的體驗,快速響應由于個別用戶的設備、網絡環境差異、服務異常等造成的體驗問題。依賴于實時的大數據處理能力,包括分布式數據庫技術和實時數據監控與分析,能夠實時反饋每一個用戶的終端體驗情況,形成實時鏈路監控和告警,是RTC系統里除了運維告警之外的另一種有效的監控告警方式。另一個作用是通過查詢分析離線數據,形成對用戶數量、音視頻數據用量的統計,以及對不同時間段音視頻傳輸各環節質量情況的分析和對比,對RTC系統QOS指標的提升具有重要的參考意義。
網絡體驗優化
RTC網絡體驗優化技術是,在RTC應用場景中,為了保證音視頻數據在網絡中的傳輸質量而采取的多種網絡技術和算法相結合的工程技術的統稱,是實時RTC技術體系的重要環節,其中包括文章前面提到的ARQ、FEC、NetEQ、JitterBuffer、GCC、PacedSender、帶寬探測、碼率控制、視頻大小流策略,還包括視頻SVC分層編碼技術、視頻超分辨率技術等等。通過合理地運用各種網絡技術和算法,以對抗網絡傳輸過程中出現的丟包、高時延、窄帶寬、網絡抖動等問題,從而達到低延時、低卡頓的效果,顯著提升實時互動場景的用戶體驗。網絡體驗優化中每一項技術和算法都值得深入研究和探討,由于本篇文章技術角度主要是介紹RTC音視頻系統的整體架構情況,這里就不再詳細展開介紹。
** 應 用 篇 **
當前RTC技術已廣泛應用于各行各業中,已成為數字經濟新的生產力來源。尤其是新冠疫情的到來,以RTC技術為基礎的在線辦公、遠程會議、在線教學、電商直播、文旅直播、云K歌、云包廂、云游戲等數字化場景蓬勃涌現;伴隨著實體經濟數字化轉型,RTC技術逐漸在遠程醫療、遠程機器操控、遠程驗車、遠程保險、自動泊車、車載監控等場景中滲透開來。RTC技術作為新一代數字經濟發展的底座支撐,將加速新型數字產業體系的形成與發展,開辟經濟增長新空間。伴隨著元宇宙概念的突然爆發,RTC技術已經成為元宇宙場景中不可或缺的技術底座,超低延時效果也將是元宇宙沉浸式體驗不可或缺的因素之一。
互動直播
在直播觀影/觀賽的互動場景,咪咕視頻推出了云包廂、云觀影、云觀眾、云打Call等業務。在云觀賽場景中,咪咕視頻“云包廂”實現云聚會看比賽,在享受精彩賽事的同時,基于RTC實時互動網絡,準實時的端到端時延,穩定流暢的數據傳輸,身處各地的朋友可以如面對面般進行賽事評論和聊天,極大提升觀賽的娛樂性和沉浸感。
此外可以在常規實時互動基礎上,融合引入VR/AR、數智人、虛擬演播等技術,創新互動場景,實現全場景沉浸式極致體驗。在2022年北京冬奧會期間,中國移動5G冰雪推廣大使谷愛凌的數智分身Meet Gu“走進”咪咕演播室,運用AR、虛擬演播、實時互動等技術,實現場內與場外、虛擬與現實的同臺互動,帶給觀眾耳目一新的體驗。
健康生活
十四五規劃強調要落實全民健身國家戰略。面對當前疫情反復的現狀,咪咕善跑推出智能互動健身功能,支持通過手機或大屏(帶攝像頭)點播健身課程,基于邊緣AI實時監控用戶運動數據,通過RTC技術和用戶實時互動,并糾正錯誤動作,達成私人教練及健身館效果。
文博文旅
數字文旅可以從線下游覽升級成線上虛擬空間與線下現實增強相結合的全新體驗。在云景區中設置超寫實虛擬人作為導覽員,游客還能夠在游覽時與同游的游客進行互動;數字藏品技術能夠讓景區增加更多的運營增長空間。數字文博有云博物館、歷史重現、文物復原、導覽講解、互動游戲等。咪咕和博物館和景區合作在文博文旅場景有很多創新,如線上推出云博物館,線下提供AR講解、AR歷史合拍、AR探究鏡、AR尋寶等多種虛實結合的實時互動業務。
游戲互動
咪咕快游云游戲在前面提到的技術的基礎上,基于中國移動“5G+云+邊”算力和網絡能力,將游戲與視頻結合的方式為玩家帶來創新的游戲場景。例如實時互動的游戲直播,玩家可以圍觀游戲主播,并實現連麥、游戲控制權轉移等新的實時互動方式。針對跨端或跨設備場景,解決用戶因設備、地點等因素帶來的游戲體驗限制,在手機、電腦、平板之間實現跨平臺跨端游戲內容隨意無縫切換。
?
** 展 望 篇 **
RTC技術雖然已經比較成熟,但仍然面臨諸多難題和挑戰,有待提高。
網絡層面,完全沉浸感需要超高分辨率、超低時延的數據傳輸,這對于網絡傳輸的帶寬、延遲提出了更高要求,同時將來以億計的交互用戶量級將對網絡傳輸的可靠性提出更高要求,目前業內的RTC技術體系,還無法真正做到身臨其境的沉浸式體驗感,RTC傳輸技術上還需要繼續不斷成熟和提高。
算力層面,基礎設施工藝能力不足,工業母機、高端芯片、基礎軟硬件、開發平臺、基本算法等方面的瓶頸依然存在。算力網絡面臨技術不完備,產業標準和理解不統一等問題。算法的不足和算力網絡的不完整,也將是RTC技術在更多產業上廣泛應用的制約因素。
規模化層面,RTC技術以超低延時作為其最為顯著的特征,但也因此導致其在超大規模的并發實現上瓶頸明顯,但伴隨著以賽事直播、文藝匯演直播、元宇宙場景為典型代表的大規模用戶量應用場景對使用超低延時技術的渴望,以RTC為基礎的超大規模超低延時互動分發系統,已經成為業內強需求,急需突破制約和快速提升。
RTC技術缺乏統一標準,行業互通有待提升。
RTC技術已經經歷了十余年的發展時間,在國內和國外也已經形成較多成熟的RTC技術服務提供商。但由于RTC技術的開放性,導致RTC技術到目前為止并沒有形成統一的行業標準。雖然萬維網聯盟(W3C)和互聯網工程任務組(IETF)在2021年宣布WebRTC成為官方標準,但仍然難以解決RTC整體技術體系標準的統一性,尤其是RTC實時信令系統的開放性,導致行業內的RTC產品無法無障礙地實現互聯互通。伴隨著RTC技術未來在工業制造、安全生產、醫療、金融等行業快速鋪開落地,將會對RTC技術產品在融合通信、互聯互通方面的能力提出更高的要求。
行業發展處于早期,監管法規待完善。
RTC技術的應用作為新興賽道,包括用戶層面、技術層面、市場層面的相關法律法規和行業標準仍需完善,由于互動方式的創新、技術的突破,會帶來一些新的隱私保護、數據安全、合規等方面的問題,需要加強監管及行業自治;行業對于服務到達質量、不同類型產品能夠接受的延遲數據等還沒有統一的系統化的標準,這在行業協作、跨企業共建的過程中降低了一定的效率。
-
TCP
+關注
關注
8文章
1377瀏覽量
79186 -
實時通信
+關注
關注
0文章
18瀏覽量
9730 -
WebRTC
+關注
關注
0文章
57瀏覽量
11271
發布評論請先 登錄
相關推薦
評論