(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的即时通信技术在融合视频中的应用

推荐内容