(CWW)視頻產業由于其信息傳遞、技術更新升級迅速,正處于高速增長期。尤其是近些年短視頻、網絡直播成為“新風口”,大小屏的融合也成了產業探索的新方向。此外,《“十四五”國家科學技術普及發展規劃》指出,加快推進IPTV、互聯網電視服務升級,依托IPTV、互聯網電視的強交互屬性,研究大小屏互動、多屏聯動技術,推動用戶體驗升級。
目前,主流的大小屏融合技術方案還局限在使用DLNA協議的近場甩屏場景,具體原理如下:機頂盒和小屏客戶端通過在內部集成DLNA協議棧,分別作為DMR(Digital Media Renderer)、DMC(Digital Media Controller)。當小屏客戶端和機頂盒處于同一個家庭網絡中時,小屏客戶端通過家庭網關發送廣播報文來發現機頂盒,并通過DLNA協議向機頂盒發送甩屏請求,進而實現近場甩屏。該方案局限性較大,要求大小屏客戶端必須在同一個家庭局域網中才能實現,且當遇到網絡質量問題時,會出現甩屏失敗的情況,可靠性差。
(資料圖片)
XMPP(ExtensibleMessaging andPresenceProtocol,可擴展消息與存在協議)是一種以XML為基礎的開放式即時通信協議,是經由互聯網工程工作小組(IETF)通過的互聯網標準。其在開放性、安全性、可擴展性、多樣性上有著諸多優點,被廣泛應用于游戲、監控、云計算、視頻會議、社交等諸多領域。
本文提出了一種基于XMPP協議的即時通信技術方案,可以很好地應用在大小屏融合視頻中,該方案已實現了斷點續播、跨屏收藏、遠場甩屏、跨屏搜索、手機遙控等多個業務場景。
方案整體介紹
該方案基于XMPP協議的即時通信技術,在傳統視頻方案的基礎上,通過新增XMPP應用,在手機客戶端和大屏客戶端分別集成XMPP SDK客戶端,同時借助XMPP服務端進行消息的及時轉發,實現大小屏精準協同,多場景靈活互動。該方案涉及的大小屏融合各場景是基于大小屏客戶端賬號融合、內容融合、權益融合的前提下進行的。基于XMPP協議的即時通信技術方案整體架構如圖1所示,具體說明如下。
融合視頻平臺負責記錄用戶賬號、賬號權益、媒資內容信息、用戶書簽等數據,用于用戶登錄、播放鑒權、大小屏賬號綁定、內容關聯以及權益互通等。
即時消息中心(XMPP Server)負責與大小屏客戶端建鏈,并與二者XMPP消息相互即時轉發。
內容分發網絡(CDN)主要進行媒資介質的分發,為距離最近的客戶端提供所需的媒體流。
大小屏客戶端為用戶提供視頻業務體驗的入口,一般為安裝有大屏和小屏視頻業務APP的終端設備,其中APP里集成了XMPP SDK客戶端,可進行XMPP消息的接收與發送,以及部分信息解析工作。
圖1 基于XMPP協議的即時通信技術方案整體架構
實現原理
基于XMPP協議的即時通信技術方案業務邏輯如圖2所示,在大屏機頂盒和小屏移動客戶端中分別集成XMPP SDK客戶端,當終端用戶在視頻平臺登錄成功后,視頻APP負責調起XMPP SDK客戶端,隨后兩個XMPP SDK客戶端與即時消息中心進行建鏈。此時,其中一端的視頻APP即可發起大小屏互動事件(如播放投屏、遙控按鍵、內容搜索等),經XMPP消息將這些事件動作進行封裝后,借助已經建鏈的XMPP消息通道,將XMPP消息發送給即時消息中心。即時消息中心收到來自客戶端的消息后,根據消息中所攜帶的目標用戶ID,將XMPP消息實時轉發給目標用戶。
圖2 基于XMPP協議的即時通信技術方案業務邏輯
目標用戶的XMPP SDK客戶端收到XMPP消息后,首先對消息進行一次解析,然后將其發送給客戶端本地視頻APP,客戶端本地視頻APP對收到的消息進行二次解析。消息二次解析后將還原為一系列大小屏互動的事件動作,同時向EPG頁面發起相應的指令,最后EPG根據收到的指令給予相應的頁面展示。如果動作事件是內容播放類操作,客戶端還要向內容網絡進行相關媒體流拉取播放。
為了更好地理解該方案的原理,以下用點播內容的遠場甩屏場景舉例說明。當小屏移動客戶端向目標大屏發起遠場甩屏時,小屏移動客戶端通過XMPP SDK客戶端將遠場甩屏動作事件ID、點播內容ID及當前的視頻播放進度的時間點等數據封裝在XMPP消息中,通過與即時消息中心建立的鏈接通道,將XMPP消息發送給目標大屏客戶端。目標大屏客戶端收到這些數據后,通過解析便可以根據事件ID、內容ID和時間信息得知小屏客戶端用戶發起的是甩屏動作,以及播放的內容ID和起播時間點。從而使用內容ID向融合視頻平臺發起播放鑒權,鑒權通過后獲取到播放URL。再將獲取到的URL與時間點拼接成新的URL,然后使用新的URL向內容網絡進行媒體流拉取,最終實現該片源在大屏端的同步播放。
其他場景(如斷點續播、跨屏收藏、手機遙控等)的實現原理同點播內容遠場甩屏類似,分別根據XMPP消息體中所傳的不同的事件ID和相應的事件數據實現。如在斷點續播場景中,當小屏用戶退出小屏正在播放的點播時,小屏客戶端會通過XMPP消息將書簽事件ID和正在觀看的內容ID及播放時長等數據發送給目標大屏客戶端。目標大屏收到信息后,通過解析獲知需要添加書簽的內容ID和播放時長信息,大屏客戶端向融合視頻平臺發起書簽接口調用進行相同內容的書簽添加,后續大屏用戶點開個人書簽欄即可通過書簽查詢接口找到該點播內容,點擊后即可按小屏上次播放時間點從內容網絡進行媒體流拉取,實現大屏側的斷點續播。
在跨屏搜索場景中,XMPP消息體中封裝搜索事件ID、搜索內容ID等信息,目標大屏收到信息后,通過解析獲知需要搜索內容ID,大屏客戶端向融合視頻平臺調用搜索查詢接口進行相同內容信息的查詢,并在EPG頁面上進行相應的展示。在手機遙控中,XMPP消息體中封裝遙控事件ID、按鍵ID(方向鍵、音量加減鍵等)等信息,目標大屏收到信息后,解析為遙控按鍵信息,并在EPG頁面進行相應的操作展示。
XMPP即時通信技術的優勢
基于DLNA與XMPP兩種協議的大小屏融合典型場景如圖3所示。基于DLNA協議的近場融合實現原理如下:大小屏終端通過有線網口或Wi-Fi等方式連接到家庭網關,移動客戶端和大屏機頂盒端分別集成DLNA協議棧,并分別作為數字媒體控制端和數字媒體接收端啟動。移動客戶端通過家庭網關發送廣播報文來發現大屏客戶端,大屏作為接收端監聽來自移動客戶端的甩屏、遙控等消息,并將當前的播放狀態、事件執行情況返回給移動客戶端,從而實現大小屏融合,其前提條件是移動客戶端與大屏客戶端必須處于同一個家庭網絡中。相比目前大小屏近場融合采用的DLNA協議,本方案使用的基于XMPP協議的即時通信技術在可靠性、安全性、拓展性、多樣性等方面具有顯著優勢。
圖3 基于DLNA與XMPP兩種協議的大小屏融合典型場景
首先,支持跨網絡、跨地域。目前大多數解決方案是基于DLNA協議實現的近場融合,要求大小屏客戶端必須在同一局域網中,使用場景有著很大的局限性。本文中基于XMPP協議的即時通信方案,不受兩端網絡限制。不論是互聯網還是IPTV等其他專網,只要滿足兩端與即時消息中心網絡互通,就可實現大小屏各融合場景,因此具備跨地域、跨網絡的優勢。
其次,安全性更高。XMPP消息采用HTTPS加密傳輸,且要求大小屏各客戶端登錄認證成功之后,才可以進行XMPP消息發送。相比DLNA協議的近場融合,本方案不需要任何認證,只要在局域網中通過廣播方式發現可投大屏設備即可進行操作,因此在安全性方面更勝一籌。
再次,可擴展性更強。此前,基于DLNA的近場融合僅可以進行近場投屏、斷點續播,場景較為單一。而XMPP作為以XML為基礎的開放式即時通信協議,繼承了在XML環境中靈活的發展性。因此,基于XMPP的應用具有超強的可擴展性,經過擴展后的XMPP可以通過發送擴展信息來處理用戶的需求。因此,本方案除投屏、斷點續播等場景之外,還可以實現遠程遙控、跨屏搜索、語音控制等功能。
最后,可靠性更高。本方案基于XMPP協議的客戶端與即時消息中心之間采用周期心跳維持建鏈、定時監測、斷鏈重試等多種可靠性機制,確保在中間網絡質量出現波動的情況下,仍然可以獲得良好的業務體驗效果。
本方案首次將XMPP即時通信技術使用在大小屏融合視頻領域,借助XMPP的安全性、開放性、可擴展性等優勢,對傳統娛樂視頻平臺進行了高階賦能。相比目前使用DLNA協議實現近場甩屏的單一融合場景,本方案具備實現斷點續播、跨屏搜索、遠場甩屏、手機遙控等幾大能力;后續依然可以借助XMPP協議的可擴展性,實現遠程控制、語音遙控等其他場景,進一步豐富大小屏融合場景。本方案不僅實現了大小屏深度融合,提升了用戶體驗,而且為未來視頻領域新業態(如游戲、健身、教育等)的出現提供了可能性。
*本文首發于《通信世界》
2022年11月10日 第21期 總第907期
原文標題:一種基于XMPP的即時通信技術在融合視頻中的應用