一种多屏互动方法及装置与流程

文档序号:11828705阅读:224来源:国知局
一种多屏互动方法及装置与流程

本发明涉及通信技术领域,特别涉及一种多屏互动方法及装置。



背景技术:

现有技术中的多屏互动技术主要包括强制转屏和分辨率协商转屏(在转屏之前提供了分辨率协商机制),但是现有技术的多屏互动技术主要解决如何预协商的问题,对于使用过程中的改变无法解决。

多屏互动方案包括屏幕分享和内容分享,其中屏幕分享在发送端包括抓屏、编码、打包、发送等流程,在接收端包括接收、解包、解码、播放的流程。同屏的方案存在一个问题,就是所有的显示都是屏幕拷贝,如果接收端和发送端面临的场景或者现实方式不同,可能因为发送端和接收端的情况差异,导致效率低或者显示的方式不符合要求。例如当一个分辨率很高的设备向低分辨率的设备进行传输的时候,如发送端可以抓屏到1280*1080的分辨率,但是接收端只能显示到1280*720,甚至更低的分辨率,这样对发送端来说,消耗的资源比较多,但是并没有更好的效果;再例如发送端是横屏而接收端是竖屏,这样显示的体验会比较差,遇到这样的情况需要单独设计方案来实现强制横屏或竖屏,但是应用场景会非常受限。



技术实现要素:

本发明的目的在于提供一种多屏互动方法及装置,解决了多屏互动过程中因为发送端和接收端的情况差异导致效率低下或显示方式不符合要求的问题,动态协商发送端和接收端的能力,提升多屏互动的效率和效果。

为了达到上述目的,本发明实施例提供一种多屏互动方法,应用于发送端,包括:

利用第一传输参数向接收端传输同屏数据;

传输同屏数据的过程中,实时检测参数调整的触发信息;

当检测到的触发信息满足预设触发条件时,调整所述第一传输参数,得到第二传输参数,并利用所述第二传输参数传输后续的同屏数据。

其中,所述实时检测参数调整的触发信息,具体包括:

实时检测发送端当前的资源占用情况。

其中,所述当检测到的触发信息满足预设触发条件时,调整所述第一传输参数,具体包括:

当检测到的发送端当前的资源占用情况超出第一预设情况或者低于第二预设情况,则调整所述第一传输参数;其中,所述第二预设情况低于所述第一预设情况。

其中,所述调整所述第一传输参数,具体包括:

若所述资源占用情况信息显示所述资源占用情况超过第一预设情况,则所述发送端主动降低所述第一传输参数;

若所述资源占用情况信息显示所述资源占用情况低于第二预设情况,则获取所述接收端当前支持的能力参数信息,并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

其中,所述实时检测参数调整的触发信息,具体包括:

向接收端发送询问当前网络状况信息的第一询问消息;

接收所述接收端返回的携带当前网络状况信息的第一询问响应消息;

实时检测所述第一询问响应消息,获得当前网络状况信息。

其中,当检测到的触发信息满足预设触发条件时,调整所述第一传输参数,具体包括:

当检测到当前网络状况低于预设网络状况时,调整所述第一传输参数。

其中,所述实时检测参数调整的触发信息,具体包括:

接收所述接收端发送的标识接收端能力参数变化的变化消息。

其中,当检测到的触发信息满足预设触发条件时,调整所述第一传输参数,具体包括:

当检测到所述变化消息时,向接收端发送询问所述接收端支持的能力参数信息的第二询问消息;

接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第二询问响应消息,从中获取所述接收端支持的能力参数信息;

根据所述接收端支持的能力参数信息调整所述第一传输参数。

其中,所述利用第一传输参数向接收端传输同屏数据之前还包括:

与接收端协商确定发送端和接收端共同支持的能力参数信息,并根据所述共同支持的能力参数信息确定第一传输参数。

其中,所述与接收端协商确定发送端和接收端共同支持的能力参数信息,具体包括:

向接收端发送询问所述接收端支持的第一能力参数信息的第三询问消息;

接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第三询问响应消息,从中获取所述接收端支持的第一能力参数信息;

根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

其中,所述与接收端协商确定发送端和接收端共同支持的能力参数信息,具体包括:

接收所述接收端发送的询问发送端支持的第二能力参数信息的第四询问消息;

向接收端发送携带所述发送端支持的第二能力参数信息的第四询问响应消息,使得所述接收端能够根据自身支持的第一能力参数信息和所述发送端支持的第二能力参数信息确定所述发送端和所述接收端共同支持的能力参数信息;

接收所述接收端发送的所述发送端和所述接收端共同支持的能力参数信息。

本发明实施例还提供一种多屏互动方法,应用于接收端,包括:

接收发送端利用第一传输参数传输的同屏数据;

传输同屏数据的过程中,当发送端检测到触发信息满足预设触发条件时,接收所述发送端利用调整后的第二传输参数传输的同屏数据。

其中,当触发信息为发送端当前的资源占用情况,且所述发送端当前的资源占用情况低于第二预设情况时,所述多屏互动方法还包括:

接收所述发送端发送的询问所述接收端当前支持的能力参数信息的第五询问消息;

向所述发送端返回携带所述接收端当前支持的能力参数信息的第五询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

其中,当所述触发信息为当前网络状况信息时,所述多屏互动方法还包括:

接收所述发送端发送的询问当前网络状况信息的第一询问消息;

向所述发送端返回携带当前网络状况信息的第一询问响应消息,使得所述发送端能够从中获取当前网络状况信息。

其中,当接收端能力参数变化时,所述多屏互动方法还包括:

向所述发送端发送标识接收端能力参数变化的变化消息;

接收所述发送端检测到所述变化消息后发送的询问所述接收端当前支持的能力参数信息的第二询问消息;

向所述发送端返回携带所述接收端当前支持的能力参数信息的第二询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并根据所述接收端当前支持的能力参数信息调整所述第一传输参数。

其中,所述接收发送端利用第一传输参数传输的同屏数据之前还包括:

与发送端协商确定发送端和接收端共同支持的能力参数信息,使得发送端能够根据所述共同支持的能力参数信息确定第一传输参数。

其中,所述与发送端协商确定发送端和接收端共同支持的能力参数信息,具体包括:

接收所述发送端发送的询问所述接收端支持的第一能力参数信息的第三询问消息;

向所述发送端返回携带所述接收端支持的第一能力参数信息的第三询问响应消息,使得发送端能够根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

其中,与发送端协商确定发送端和接收端共同支持的能力参数信息,具体包括:

向发送端发送询问所述发送端支持的第二能力参数信息的第四询问消息;

接收并解析所述发送端返回的携带所述发送端支持的第二能力参数信息的 第四询问响应消息,从中获取所述发送端支持的第二能力参数信息;

根据所述发送端支持的第二能力参数信息和所述接收端自身支持的第一能力参数信息,确定所述发送端和所述接收端共同支持的能力参数信息并将所述共同支持的能力参数信息发送给所述发送端。

本发明实施例还提供一种多屏互动装置,应用于发送端,包括:

传输模块,用于利用第一传输参数向接收端传输同屏数据;

检测模块,用于在传输同屏数据的过程中,实时检测参数调整的触发信息;

调整模块,用于当检测到的触发信息满足预设触发条件时,调整所述第一传输参数,得到第二传输参数,并利用所述第二传输参数传输后续的同屏数据。

其中,所述检测模块包括:

资源占用检测模块,用于实时检测发送端当前的资源占用情况。

其中,所述调整模块包括:

资源占用调整模块,用于当检测到的发送端当前的资源占用情况超出第一预设情况或者低于第二预设情况,则调整所述第一传输参数;其中,所述第二预设情况低于所述第一预设情况。

其中,所述资源占用调整模块包括:

第一调整子模块,用于若所述资源占用情况信息显示所述资源占用情况超过第一预设情况,则所述发送端主动降低所述第一传输参数;

第二调整子模块,用于若所述资源占用情况信息显示所述资源占用情况低于第二预设情况,则获取所述接收端当前支持的能力参数信息,并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

其中,所述检测模块包括:

第一发送模块,用于向接收端发送询问当前网络状况信息的第一询问消息;

第一接收模块,用于接收所述接收端返回的携带当前网络状况信息的第一询问响应消息;

网络状况检测模块,用于实时检测所述第一询问响应消息,获得当前网络状况信息。

其中,所述调整模块包括:

网络状况调整模块,用于当检测到当前网络状况低于预设网络状况时,调 整所述第一传输参数。

其中,所述检测模块包括:

能力变化检测模块,用于接收所述接收端发送的标识接收端能力参数变化的变化消息。

其中,所述调整模块包括:

第二发送模块,用于当检测到所述变化消息时,向接收端发送询问所述接收端支持的能力参数信息的第二询问消息;

第三接收模块,接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第二询问响应消息,从中获取所述接收端支持的能力参数信息;

能力调整模块,用于根据所述接收端支持的能力参数信息调整所述第一传输参数。

其中,所述装置还包括:

第一参数确定模块,用于与接收端协商确定发送端和接收端共同支持的能力参数信息,并根据所述共同支持的能力参数信息确定第一传输参数。

其中,所述第一参数确定模块包括:

第三发送模块,用于向接收端发送询问所述接收端支持的第一能力参数信息的第三询问消息;

第四接收模块,用于接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第三询问响应消息,从中获取所述接收端支持的第一能力参数信息;

第一确定子模块,用于根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

其中,所述第一参数确定模块包括:

第五接收模块,用于接收所述接收端发送的询问发送端支持的第二能力参数信息的第四询问消息;

第四发送模块,用于向接收端发送携带所述发送端支持的第二能力参数信息的第四询问响应消息,使得所述接收端能够根据自身支持的第一能力参数信息和所述发送端支持的第二能力参数信息确定所述发送端和所述接收端共同支 持的能力参数信息;

第六接收模块,用于接收所述接收端发送的所述发送端和所述接收端共同支持的能力参数信息。

本发明实施例还提供一种多屏互动装置,应用于接收端,包括:

第一数据接收模块,用于接收发送端利用第一传输参数传输的同屏数据;

第二数据接收模块,用于在传输同屏数据的过程中,当发送端检测到触发信息满足预设触发条件时,接收所述发送端利用调整后的第二传输参数传输的同屏数据。

其中,当触发信息为发送端当前的资源占用情况,且所述发送端当前的资源占用情况低于第二预设情况时,所述多屏互动装置还包括:

第七接收模块,用于接收所述发送端发送的询问所述接收端当前支持的能力参数信息的第五询问消息;

第五发送模块,用于向所述发送端返回携带所述接收端当前支持的能力参数信息的第五询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

其中,当所述触发信息为当前网络状况信息时,所述多屏互动装置还包括:

第八接收模块,用于接收所述发送端发送的询问当前网络状况信息的第一询问消息;

第六发送模块,用于向所述发送端返回携带当前网络状况信息的第一询问响应消息,使得所述发送端能够从中获取当前网络状况信息。

其中,当接收端能力参数变化时,所述多屏互动装置还包括:

第七发送模块,用于向所述发送端发送标识接收端能力参数变化的变化消息;

第九接收模块,用于接收所述发送端检测到所述变化消息后发送的询问所述接收端当前支持的能力参数信息的第二询问消息;

第八发送模块,用于向所述发送端返回携带所述接收端当前支持的能力参数信息的第二询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并根据所述接收端当前支持的能力参数信息调整所述第一传 输参数。

其中,所述多屏互动装置还包括:

第二参数确定模块,用于与发送端协商确定发送端和接收端共同支持的能力参数信息,使得发送端能够根据所述共同支持的能力参数信息确定第一传输参数。

其中,所述第二参数确定模块包括:

询问接收模块,用于接收所述发送端发送的询问所述接收端支持的第一能力参数信息的第三询问消息;

返回模块,用于向所述发送端返回携带所述接收端支持的第一能力参数信息的第三询问响应消息,使得发送端能够根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

其中,所述第二参数确定模块包括:

询问发送模块,用于向发送端发送询问所述发送端支持的第二能力参数信息的第四询问消息;

接收解析模块,用于接收并解析所述发送端返回的携带所述发送端支持的第二能力参数信息的第四询问响应消息,从中获取所述发送端支持的第二能力参数信息;

第二确定子模块,用于根据所述发送端支持的第二能力参数信息和所述接收端自身支持的第一能力参数信息,确定所述发送端和所述接收端共同支持的能力参数信息并将所述共同支持的能力参数信息发送给所述发送端。

本发明的上述技术方案至少具有如下有益效果:

本发明实施例的多屏互动方法及装置中,在同屏数据的传输过程中,实时的检测传输参数调整的触发信息,当触发信息满足触发条件时,发送端和接收端实时协商并调整第一传输参数,进而得到适合当前同屏传输的第二传输参数,再利用第二传输参数传输后续的同屏数据;该多屏互动方法实现了动态协商发送端能力和接收端能力,能够及时调整传输参数,提高同屏传输的效率和效果。

附图说明

图1表示本发明实施例的发送端的多屏互动方法的基本步骤流程图;

图2表示本发明实施例的接收端的多屏互动方法的基本步骤流程图;

图3表示本发明实施例的基于RTSP的屏幕共享流程图;

图4表示本发明实施例的发送端的多屏互动装置的组成结构图;

图5表示本发明实施例的接收端的多屏互动装置的组成结构图;

图6表示本发明实施例提供的发送端的多屏互动装置和接收端的多屏互动装置的多屏互动原理图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

本发明针对现有技术中多屏互动过程中因为发送端和接收端的情况差异导致效率低下或显示方式不符合要求的问题,提供一种多屏互动方法及装置,在同屏数据的传输过程中,实时的检测传输参数调整的触发信息,当触发信息满足触发条件时,发送端和接收端实时协商并调整第一传输参数,进而得到适合当前同屏传输的第二传输参数,再利用第二传输参数传输后续的同屏数据;该多屏互动方法实现了动态协商发送端能力和接收端能力,能够及时调整传输参数,提高同屏传输的效率和效果。

需要说明的是,本发明实施例提供的多屏互动方法应用于包括至少一个发送端和至少一个接收端的环境中,一个发送端可以给一个接收端发送同屏数据也可以给多个接收端发送同屏数据,若给多个接收端发送同屏数据可采用分别与多个接收端协商的确定对应的多个传输参数的原则发送也可采用综合多个接收端能力确定统一传输参数的原则发送,在此不作具体限定;还可采用多个发送端给同一个接收端发送同屏数据,多个发送端分别跟接收端协商确定多个传输参数,通过多个传输参数将同屏数据传输到接收端的预设显示屏进行显示。此外,上述一对多或多对一的数据传输方式不是本申请的着重点,且属于本领域技术人员能够实现的方案,在此不详细解释。

下面分别从发送端和接收端的多屏互动方法对本发明实施例做具体解释:如图1所示,本发明实施例提供一种多屏互动方法,应用于发送端,包括:

步骤11,利用第一传输参数向接收端传输同屏数据;

步骤12,传输同屏数据的过程中,实时检测参数调整的触发信息;

步骤13,当检测到的触发信息满足预设触发条件时,调整所述第一传输参数,得到第二传输参数,并利用所述第二传输参数传输后续的同屏数据。

如图2所示,本发明实施例还提供一种多屏互动方法,应用于接收端,包括:

步骤21,接收发送端利用第一传输参数传输的同屏数据;

步骤22,传输同屏数据的过程中,当发送端检测到触发信息满足预设触发条件时,接收所述发送端利用调整后的第二传输参数传输的同屏数据。

本发明上述实施例中,第一传输参数为传输同屏数据之前发送端与接收端协商确定的,即应用于发送端的步骤11之前还包括:

步骤14,与接收端协商确定发送端和接收端共同支持的能力参数信息,并根据所述共同支持的能力参数信息确定第一传输参数。

应用于接收端的步骤21之前还包括:

步骤23,与发送端协商确定发送端和接收端共同支持的能力参数信息,使得发送端能够根据所述共同支持的能力参数信息确定第一传输参数。

具体的,第一传输参数及第二传输参数的内容包括:(a)分辨率;(b)屏幕旋转角度;(c)屏幕显示比例和模式;(d)帧率;(e)其他影响显示和效率的问题。上述第一传输参数及第二传输参数均为可调整的参数,通过对第一传输参数的调整,得到更适合当前应用场景的第二传输参数,提高传输效率及效果。

进一步的,步骤14和步骤23为传屏之前的预协商过程,该预协商过程主要包括发送端主动询问接收端能力确定共同支持的能力参数,进而确定第一传输参数和接收端主动询问发送端能力确定共同支持的能力参数后返回给发送端,由发送端设置第一传输参数。

即发送端主动询问的情况为:发送端的步骤14包括:

步骤141,向接收端发送询问所述接收端支持的第一能力参数信息的第三询问消息;

步骤142,接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第三询问响应消息,从中获取所述接收端支持的第一能力参数信息;

步骤143,根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

接收端的步骤23包括:

步骤231,接收所述发送端发送的询问所述接收端支持的第一能力参数信息的第三询问消息;

步骤232,向所述发送端返回携带所述接收端支持的第一能力参数信息的第三询问响应消息,使得发送端能够根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

例如,发送端主动询问的情况,即发送端在进行发送的时候,首先询问接收端能力,与接收端进行能力协商,比如接收端的硬件解码能力和帧率,如果是720p@25fps,那么即使是发送端可以达到1080p@30fps,那么发送端也只提供较低分辨率和帧率,这样,可以减少发送端抓屏和编码的资源负担。

而接收端主动询问的情况为:接收端的步骤23包括:

步骤233,向发送端发送询问所述发送端支持的第二能力参数信息的第四询问消息;

步骤234,接收并解析所述发送端返回的携带所述发送端支持的第二能力参数信息的第四询问响应消息,从中获取所述发送端支持的第二能力参数信息;

步骤235,根据所述发送端支持的第二能力参数信息和所述接收端自身支持的第一能力参数信息,确定所述发送端和所述接收端共同支持的能力参数信息并将所述共同支持的能力参数信息发送给所述发送端。

发送端的步骤14包括:

步骤144,接收所述接收端发送的询问发送端支持的第二能力参数信息的第四询问消息;

步骤145,向接收端发送携带所述发送端支持的第二能力参数信息的第四询问响应消息,使得所述接收端能够根据自身支持的第一能力参数信息和所述发送端支持的第二能力参数信息确定所述发送端和所述接收端共同支持的能力参数信息;

步骤146,接收所述接收端发送的所述发送端和所述接收端共同支持的能力 参数信息。

例如,接收端主动询问的情况,即接收端在接收同屏数据之前,首先询问发送端能力,与发送端进行能力协商,比如发送端的音频格式、视频格式、几种分辨率以及对应的帧率,如果发送端支持1080p及720p,接收端自身仅支持720p,则告知发送端当前环境下发送端和接收端均支持720p的分辨率,则发送端在发送过程中提供720p分辨率的同屏数据,这样能够减少发送端转屏和编码的资源负担和接收端转屏、解码的资源负担。

进一步的,步骤12及步骤13描述了传屏过程中对传输参数的动态调整;具体的,只有当发送端或接收端中的一方的能力参数或网络情况或资源占用情况发生更改时,才需要调整传输参数。即步骤12中的触发信息主要包括四个方面的信息,1)发送端当前的资源占用情况;2)当前网络状况信息;3)接收端或发送端的能力被更改。下面分别从以上3个方面具体描述如何触发调整,以及如何调整。

当触发信息为发送端当前的资源占用情况时,发送端侧的步骤12具体包括:

步骤121,实时检测发送端当前的资源占用情况。

相应的,步骤13具体包括:

步骤131,当检测到的发送端当前的资源占用情况超出第一预设情况或者低于第二预设情况,则调整所述第一传输参数;其中,所述第二预设情况低于所述第一预设情况。

且所述调整所述第一传输参数的步骤具体包括:

步骤132,若所述资源占用情况信息显示所述资源占用情况超过第一预设情况,则所述发送端主动降低所述第一传输参数;

步骤133,若所述资源占用情况信息显示所述资源占用情况低于第二预设情况,则获取所述接收端当前支持的能力参数信息,并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

与发送端的步骤133对应的接收端的多屏互动方法,即当触发信息为发送端当前的资源占用情况,且所述发送端当前的资源占用情况低于第二预设情况时,所述多屏互动方法还包括:

步骤24,接收所述发送端发送的询问所述接收端当前支持的能力参数信息 的第五询问消息;

步骤25,向所述发送端返回携带所述接收端当前支持的能力参数信息的第五询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

例如,发送端的多屏互动模块通过与系统的交互,获得当前系统资源占用情况如CPU占用率,内存占用数等。首先设置CPU、内存占用情况的上限和下限,如果CPU、内存的值有一项超过了上限,则发送端主动降低帧率和分辨率;如果CPU和内存的占用情况低于下限,则发送端可以向接收端发送消息以获取当前时间接收端设备的参数(如几种分辨率(如1080p,720p,480p等),以及对应的帧率等),接收端设备在消息应答中包含当前支持的帧率和分辨率,发送端根据返回的应答消息选择其中能够实现的最高的帧率和分辨率,对参数进行调整后再进行资源的传输。

承续上例,当触发信息为当前网络状况信息时,发送端侧的步骤12具体包括:

步骤122,向接收端发送询问当前网络状况信息的第一询问消息;

步骤123,接收所述接收端返回的携带当前网络状况信息的第一询问响应消息;

步骤124,实时检测所述第一询问响应消息,获得当前网络状况信息。

相应的,步骤13具体包括:

步骤134,当检测到当前网络状况低于预设网络状况时,调整所述第一传输参数。

与发送端步骤12对应的接收端的多屏互动方法,即当所述触发信息为当前网络状况信息时,所述多屏互动方法还包括:

步骤26,接收所述发送端发送的询问当前网络状况信息的第一询问消息;

步骤27,向所述发送端返回携带当前网络状况信息的第一询问响应消息,使得所述发送端能够从中获取当前网络状况信息。

例如,发送端的多屏互动模块通过与接收端的交互,发送端设备向接收端发送第一询问消息(RTSP GET_PARAMETER请求)以获取当前时间网络状况信息(如当前网络的丢包率、时延等等);具体的,该消息需要增加参数以表明发 送端设备需要从接收端设备处获取当前网络的状况信息,参数定义如下:

丢包率:wfd_sink_network_packet_loss、时延:wfd_sink_network_time_delay。发送端设备若在第一询问消息中发现参数wfd_sink_network_packet_loss(丢包率)和wfd_sink_network_time_delay(时延),则需在第一询问响应消息中包含上述参数以返回当前网络的丢包率和时延信息,并根据这些信息对传输参数进行调整。具体的,例如丢包率大于预设门限值,则发送端主动降低帧率和分辨率,或者时延大于预设门限值,发送端也主动降低帧率和分辨率等;或者丢包率和时延较小,发送端与接收端协商接收端当前支持分辨率和帧率,重新调整传输参数,进一步提高传输效率及效果。

承接上例,当触发信息为接收端或发送端的能力被更改时,该种情况主要包括3种场景,场景一:发送端和接收端均提供人工配置的界面,可以根据用户选择来进行传屏参数的更换,从而在传屏过程中,更改这些参数,提升效率。需要说明的是,人工配置的调整优先级最高,即无论系统协商出的最佳传输参数是什么,也不管人工配置的方案是否能够提升效率,只要发送端或接收端中一方或两方响应到人工配置的参数,则后续的传屏过程均按照人工配置的参数执行。

场景二,发送端的能力被更改,若确定第一传输参数时是发送端主动询问接收端能力,则无需再询问接收端能力,只需重新确定当前发送端和接收端共同支持的能力参数,继而重新调整传输参数,使其适应当前应用场景,提高传输效率;若确定第一传输参数时是接收端主动询问发送端能力,则发送端向接收端发送能力参数变化的变化消息,该变化消息触发接收端重新获取发送端当前的能力参数,继而重新确定共同支持的能力参数,再重新调整传输参数,使其适应当前应用场景,提高传输效率。

场景三,接收端能力更改,与场景二相同,若确定第一传输参数时是接收端主动询问发送端能力,则无需再询问发送端能力,只需重新确定发送端和当前接收端共同支持的能力参数,继而重新调整传输参数,使其适应当前应用场景,提高传输效率;若确定第一传输参数时是发送端主动询问接收端能力,则接收端向发送端发送能力参数变化的变化消息,该变化消息触发发送端重新获取接收端当前的能力参数,继而重新确定共同支持的能力参数,再重新调整传 输参数,使其适应当前应用场景,提高传输效率。具体的,确定第一传输参数时是发送端主动询问接收端能力时,接收端的多屏互动方法还包括:

步骤28,向所述发送端发送标识接收端能力参数变化的变化消息;

步骤29,接收所述发送端检测到所述变化消息后发送的询问所述接收端当前支持的能力参数信息的第二询问消息;

步骤210,向所述发送端返回携带所述接收端当前支持的能力参数信息的第二询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并根据所述接收端当前支持的能力参数信息调整所述第一传输参数。

相应的,发送端的步骤12具体包括:

步骤125,接收所述接收端发送的标识接收端能力参数变化的变化消息。

且步骤13具体包括:

步骤135,当检测到所述变化消息时,向接收端发送询问所述接收端支持的能力参数信息的第二询问消息;

步骤136,接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第二询问响应消息,从中获取所述接收端支持的能力参数信息;

步骤137,根据所述接收端支持的能力参数信息调整所述第一传输参数。

例如,当传输一段时间后,接收端设备的一些参数会发生变化,接收端设备发送变化消息至接收端,触发发送端设备向接收端发送第二询问消息(RTSP GET_PARAMETER请求)以获取当前时间接收端设备参数(如几种分辨率(如1080p,720p,480p等),以及对应的帧率、屏幕的当前角度、显示比例和显示模式等);具体的,该第二询问消息需要增加下述参数以表明发送端设备需要获取接收端设备屏幕的当前角度、显示比例和显示模式,这些参数定义如下:

当前角度:wfd_sink_screen_angle、显示比例:wfd_sink_screen_proportion、显示模式:wfd_sink_screen_mode。

接收端设备若在第二询问消息请求中发现wfd_sink_screen_angle(当前角度)、wfd_sink_screen_proportion(显示比例)、wfd_sink_screen_mode(显示模式)参数,则需在第二询问响应消息中包含该参数以返回当前屏幕的角度、显示比例和显示模式信息,角度参数值为0、90、180、270,即当前屏幕与水平方向间的角度;显示比例参数值为1:18、1:24等;显示模式参数值为3:4、16:9、 16:10等。

发送端设备根据第二询问响应消息进行相应参数调整后(如分辨率从1280*720,降低到800*600,显示角度从0度,更改为自动转屏90度),继续发送同屏数据。

需要说明的是,本发明实施例提供的多屏互动方法中传输参数的具体内容针对不同的应用场景而变化;即发送端设备针对不同的传输应用与接收端设备对分辨率等参数进行协商,实现发送端对传输参数的调整。例如,当发送端与接收端之间实现视频传输时,发送端可以向接收端发送请求消息(RTSP GET_PARAMETER请求)以获取当前接收端设备参数(如几种分辨率(如1080p,720p,480p等),以及对应的帧率等),接收端设备在应答中包含当前接受的帧率和分辨率,发送端根据返回的响应消息选择其中能够实现的最高的帧率和分辨率,对参数进行调整后再进行资源的传输;当发送端与接收端之间实现游戏类应用传输时,只是为反向控制做大概位置的展示,发送端可以根据接收端发送的应答中包含当前接受的帧率和分辨率,选择其中能够实现的最低的帧率和分辨率,并相应的对传输参数进行调整。采用这个方法来实现对传屏分辨率、帧率的调整,传屏的应用或者模块需要感知目前正在运行的应用的特征。

多屏互动方案包括屏幕分享和内容分享,其中屏幕分享在发送端包括抓屏、编码、打包、发送等流程,在接收端包括接受、解包、解码、播放的流程。而内容分享的具体描述如下,如图3所示为基于RTSP(实时流传输协议)的屏幕共享流程描述:

在WFD能力协商阶段(WFD Capability Negotiation)即在双方能力信息交互阶段,参与通信的发送端设备首先向接收端设备发送M1即RTSP OPTIONS请求消息,以获取接收端设备支持的RTSP方法集。接收端设备收到该请求后发送M1应答消息。然后接收端设备向发送端设备发送M2即RTSP OPTIONS请求消息,以获取发送端设备所支持的RTSP方法集。发送端设备收到该请求后发送M2应答消息。M2应答消息发送成功后,发送端设备向接收端设备发送M3即RTSP GET_PARAMETER请求消息,以获取自己感兴趣的接收端设备的WFD能力列表,具体内容包括(音频格式、视频格式、几种分辨率(如1080p,720p,480p等),以及对应的帧率,支持的内容保护方式)。然后接收端设备发送M3 应答消息。根据应答消息携带的信息,发送端设备决定后续WFD会话(方向为发送端设备发送,接收端设备接收)的参数集并通过M4即RTSP SET_PARAMETER请求消息发送给接收端设备来设置参数,接收端设备回复M4应答。若接收端设备需要了解发送端设备的能力信息,则需要向发送端设备发送M3即RTSP GET_PARAMETER请求消息,以获取自己感兴趣的发送端设备的WFD能力列表具体内容包括(音频格式、视频格式、几种分辨率(如1080p,720p,480p等),以及对应的帧率,支持的内容保护方式)。然后发送端设备发送M3应答消息。据此应答,接收端设备决定后续WFD会话(方向为接收端设备发送,发送端设备接收)的参数集并通过M4即RTSP SET_PARAMETER请求消息发送给发送端设备,发送端设备回复M4应答。

通过上述的消息交互流程,通信双方互相获知了对方的能力信息,并且设置了一套双方均能共同接受的参数集合,发送端设备根据接收端设备所拥有的能力进行选择,接收端设备根据发送端设备的选择,开始发起同屏数据传输。

进一步的,当传输一段时间后,上述三种触发信息中的任一中满足触发条件时,发送端设备向接收端发送M3消息(RTSP GET_PARAMETER请求)以获取当前时间接收端,设备参数(如几种分辨率(如1080p,720p,480p等),以及对应的帧率、屏幕的当前角度、显示比例和显示模式等),接收端设备返回M3应答消息,发送端设备根据M3应答消息调整传输参数后继续进行同屏数据的传输。

需要说明的是,上述三种触发信息的调整优先级如下:调整的优先级是首先依据用户的需求,根据用户输入的情况进行设置;对于帧率或码率降低的处理,当系统反馈资源占用率过高(CPU/内存/GPU)时,即使目前网络时延和丢包率满足要求,也需要降低码率和帧率;而对于提高帧率和码率的处理,需要先看网络时延和丢包率是否满足要求,如果满足则提高帧率和码率,再看资源占用是否满足要求。

为了更好的实现上述目的,如图4所示,本发明实施例还提供一种多屏互动装置,应用于发送端,包括:

传输模块41,用于利用第一传输参数向接收端传输同屏数据;

检测模块42,用于在传输同屏数据的过程中,实时检测参数调整的触发信 息;

调整模块43,用于当检测到的触发信息满足预设触发条件时,调整所述第一传输参数,得到第二传输参数,并利用所述第二传输参数传输后续的同屏数据。

进一步的,本发明的上述实施例中,所述检测模块42包括:

资源占用检测模块,用于实时检测发送端当前的资源占用情况。

进一步的,本发明的上述实施例中,所述调整模块43包括:

资源占用调整模块,用于当检测到的发送端当前的资源占用情况超出第一预设情况或者低于第二预设情况,则调整所述第一传输参数;其中,所述第二预设情况低于所述第一预设情况。

进一步的,本发明的上述实施例中,所述资源占用调整模块包括:

第一调整子模块,用于若所述资源占用情况信息显示所述资源占用情况超过第一预设情况,则所述发送端主动降低所述第一传输参数;

第二调整子模块,用于若所述资源占用情况信息显示所述资源占用情况低于第二预设情况,则获取所述接收端当前支持的能力参数信息,并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

进一步的,本发明的上述实施例中,所述检测模块42包括:

第一发送模块,用于向接收端发送询问当前网络状况信息的第一询问消息;

第一接收模块,用于接收所述接收端返回的携带当前网络状况信息的第一询问响应消息;

网络状况检测模块,用于实时检测所述第一询问响应消息,获得当前网络状况信息。

进一步的,本发明的上述实施例中,所述调整模块43包括:

网络状况调整模块,用于当检测到当前网络状况低于预设网络状况时,调整所述第一传输参数。

进一步的,本发明的上述实施例中,所述检测模块42包括:

能力变化检测模块,用于接收所述接收端发送的标识接收端能力参数变化的变化消息。

进一步的,本发明的上述实施例中,所述调整模块43包括:

第二发送模块,用于当检测到所述变化消息时,向接收端发送询问所述接收端支持的能力参数信息的第二询问消息;

第三接收模块,接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第二询问响应消息,从中获取所述接收端支持的能力参数信息;

能力调整模块,用于根据所述接收端支持的能力参数信息调整所述第一传输参数。

进一步的,本发明的上述实施例中,所述装置还包括:

第一参数确定模块,用于与接收端协商确定发送端和接收端共同支持的能力参数信息,并根据所述共同支持的能力参数信息确定第一传输参数。

进一步的,本发明的上述实施例中,所述第一参数确定模块包括:

第三发送模块,用于向接收端发送询问所述接收端支持的第一能力参数信息的第三询问消息;

第四接收模块,用于接收并解析所述接收端返回的携带所述接收端支持的能力参数信息的第三询问响应消息,从中获取所述接收端支持的第一能力参数信息;

第一确定子模块,用于根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

进一步的,本发明的上述实施例中,所述第一参数确定模块包括:

第五接收模块,用于接收所述接收端发送的询问发送端支持的第二能力参数信息的第四询问消息;

第四发送模块,用于向接收端发送携带所述发送端支持的第二能力参数信息的第四询问响应消息,使得所述接收端能够根据自身支持的第一能力参数信息和所述发送端支持的第二能力参数信息确定所述发送端和所述接收端共同支持的能力参数信息;

第六接收模块,用于接收所述接收端发送的所述发送端和所述接收端共同支持的能力参数信息。

需要说明的是,本发明的上述实施例中提供的发送端多屏互动装置是应用上述发送端的多屏互动方法的装置,则上述发送端的多屏互动方法的所有实施 例及其有益效果均适用于该装置。

为了更好的实现上述目的,如图5所示,本发明实施例还提供一种多屏互动装置,应用于接收端,包括:

第一数据接收模块51,用于接收发送端利用第一传输参数传输的同屏数据;

第二数据接收模块52,用于在传输同屏数据的过程中,当发送端检测到触发信息满足预设触发条件时,接收所述发送端利用调整后的第二传输参数传输的同屏数据。

进一步的,本发明的上述实施例中,当触发信息为发送端当前的资源占用情况,且所述发送端当前的资源占用情况低于第二预设情况时,所述多屏互动装置还包括:

第七接收模块,用于接收所述发送端发送的询问所述接收端当前支持的能力参数信息的第五询问消息;

第五发送模块,用于向所述发送端返回携带所述接收端当前支持的能力参数信息的第五询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并基于所述接收端当前支持的能力参数信息调整所述第一传输参数。

进一步的,本发明的上述实施例中,当所述触发信息为当前网络状况信息时,所述多屏互动装置还包括:

第八接收模块,用于接收所述发送端发送的询问当前网络状况信息的第一询问消息;

第六发送模块,用于向所述发送端返回携带当前网络状况信息的第一询问响应消息,使得所述发送端能够从中获取当前网络状况信息。

进一步的,本发明的上述实施例中,当接收端能力参数变化时,所述多屏互动装置还包括:

第七发送模块,用于向所述发送端发送标识接收端能力参数变化的变化消息;

第九接收模块,用于接收所述发送端检测到所述变化消息后发送的询问所述接收端当前支持的能力参数信息的第二询问消息;

第八发送模块,用于向所述发送端返回携带所述接收端当前支持的能力参 数信息的第二询问响应消息,使得所述发送端能够从中获取所述接收端当前支持的能力参数信息并根据所述接收端当前支持的能力参数信息调整所述第一传输参数。

进一步的,本发明的上述实施例中,所述多屏互动装置还包括:

第二参数确定模块,用于与发送端协商确定发送端和接收端共同支持的能力参数信息,使得发送端能够根据所述共同支持的能力参数信息确定第一传输参数。

进一步的,本发明的上述实施例中,所述第二参数确定模块包括:

询问接收模块,用于接收所述发送端发送的询问所述接收端支持的第一能力参数信息的第三询问消息;

返回模块,用于向所述发送端返回携带所述接收端支持的第一能力参数信息的第三询问响应消息,使得发送端能够根据所述接收端支持的第一能力参数信息和所述发送端自身支持的第二能力参数信息,确定发送端和接收端共同支持的能力参数信息。

进一步的,本发明的上述实施例中,所述第二参数确定模块包括:

询问发送模块,用于向发送端发送询问所述发送端支持的第二能力参数信息的第四询问消息;

接收解析模块,用于接收并解析所述发送端返回的携带所述发送端支持的第二能力参数信息的第四询问响应消息,从中获取所述发送端支持的第二能力参数信息;

第二确定子模块,用于根据所述发送端支持的第二能力参数信息和所述接收端自身支持的第一能力参数信息,确定所述发送端和所述接收端共同支持的能力参数信息并将所述共同支持的能力参数信息发送给所述发送端。

需要说明的是,本发明的上述实施例中提供的接收端多屏互动装置是应用上述接收端的多屏互动方法的装置,则上述接收端的多屏互动方法的所有实施例及其有益效果均适用于该装置。

综上,本发明实施例的具体应用中,对同屏数据的传输参数的修改主要结合如图6所示的5个因素:1)当前的应用程序(即应用环境);2)从操作系统模块获取的资源占用情况;3)从网络通信模块获取的当前网络状况信息;4) 发送端或接收端的能力参数修改;5)用户的自定义设置。在多屏互动过程中结合上述5个因素的一个或多个来综合调整传输参数,使其与当前的应用环境相匹配,提高传输及显示的效果和效率。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1