设备交互方法、系统及装置与流程

文档序号:32061538发布日期:2022-11-04 23:21阅读:112来源:国知局
设备交互方法、系统及装置与流程

1.本技术涉及计算机应用技术领域,特别是涉及一种设备交互方法、系统及装置。


背景技术:

2.随着计算机应用技术的不断发展,诸如投屏等多设备互动技术已经广泛应用到人们的生产和生活中。例如用户可以通过在移动终端上将媒体数据投屏到诸如智能电视、电脑等具有较大屏幕的设备上进行显示。其中,将负责投屏控制功能的设备(例如上述的移动终端)称为控制侧设备,将接受投屏控制的设备(例如上述智能电视、电脑等设备)称为播放侧设备。
3.然而,在一些应用场景下常常会出现播放侧设备因性能受限而无法正常播放控制侧设备的媒体数据。


技术实现要素:

4.有鉴于此,本技术提供了一种设备交互方法、系统及装置,用以解决播放侧设备因性能受限而无法正常播放控制侧设备的媒体数据的问题。
5.本技术提供了如下方案:
6.第一方面,本技术提供了一种设备交互方法,该方法包括:
7.控制侧设备获取并记录播放侧设备的计算能力信息;
8.响应于用户的操作事件,确定所述操作事件对应的控制处理所需的计算要求;
9.若所述播放侧设备的计算能力不满足所述计算要求,则由所述控制侧设备或除所述控制侧设备和播放侧设备之外的其他设备对所述操作事件所针对的待处理数据执行所述控制处理后,由所述控制侧设备将所述控制处理所产生的媒体数据发送给所述播放侧设备,以便所述播放侧设备播放所述媒体数据。
10.根据本技术实施例中一可实现的方式,所述控制侧设备获取并记录播放侧设备的计算能力包括:
11.所述控制侧设备接入局域网后,通过广播的方式查询所述局域网中所述播放侧设备的计算能力信息;或者,
12.所述控制侧设备接入局域网后,从所述局域网中的管理设备获取所述播放侧设备在所述管理设备登记的计算能力信息;或者,
13.所述控制侧设备与所述播放侧设备建立连接的过程中,获取所述播放侧设备的计算能力信息;或者,
14.所述控制侧设备与所述播放侧设备建立连接后,通过心跳机制获取所述播放侧设备的计算能力信息。
15.根据本技术实施例中一可实现的方式,由除所述控制侧设备和播放侧设备之外的其他设备执行所述控制处理包括:
16.所述控制侧设备与所述其他设备建立连接;
17.将待处理数据和所述控制处理的信息发送给所述其他设备;
18.获取所述其他设备对所述待处理数据执行所述控制处理后所产生的媒体数据。
19.根据本技术实施例中一可实现的方式,所述控制侧设备与所述其他设备建立连接包括:
20.所述控制侧设备从局域网中的管理设备获取所述其他设备在所述管理设备中登记的计算能力信息和地址信息,若所述登记的计算能力信息满足所述计算要求,则利用所述地址信息向所述其他设备发送连接请求并与所述其他设备建立连接;或者,
21.所述控制侧设备通过广播的方式查询局域网中所述其他设备的计算能力信息和地址信息,若所述其他设备的计算能力满足所述计算要求,则利用所述地址信息向所述其他设备发送连接请求并与所述其他设备建立连接。
22.根据本技术实施例中一可实现的方式,若所述播放侧设备的计算能力满足所述计算要求,则将待处理数据和所述控制处理的信息发送给所述播放侧设备,由所述播放侧设备对待处理数据进行控制处理后播放。
23.根据本技术实施例中一可实现的方式,所述计算能力信息包括:具备的计算服务类型和计算资源剩余状况。
24.根据本技术实施例中一可实现的方式,所述控制处理包括投屏播放场景下对媒体数据的解码、合成、编辑、剪辑、格式转换或视角切换。
25.第二方面,本技术提供了一种设备交互方法,该方法包括:
26.播放侧设备向控制侧设备提供所述播放侧设备的计算能力信息,以便于所述控制侧设备在所述播放侧设备的计算能力不满足用户的操作事件对应的控制处理所需的计算要求时,由所述控制侧设备或除所述控制侧设备和播放侧设备之外的其他设备对所述操作事件所针对的待处理数据执行所述控制处理;
27.接收并播放所述控制侧设备发送的所述控制处理所产生的媒体数据。
28.根据本技术实施例中一可实现的方式,所述播放侧设备向控制侧设备提供所述播放侧设备的计算能力信息包括:
29.响应于所述控制侧设备的广播查询,将所述播放侧设备的计算能力信息发送给所述控制侧设备;或者,
30.所述播放侧设备向局域网中的管理设备登记所述播放侧设备的计算能力信息,以供所述控制侧设备从所述管理设备查询所述播放侧设备的计算能力信息;或者,
31.所述播放侧设备与所述控制侧设备建立连接的过程中,将所述播放侧设备的计算能力信息提供给所述控制侧设备;或者,
32.所述播放侧设备与所述控制侧设备建立连接后,通过心跳机制向所述控制侧设备发送所述播放侧设备的计算能力信息。
33.第三方面,本技术提供了一种设备交互系统,该系统包括控制侧设备和播放侧设备;
34.所述控制侧设备,被配置为获取并记录播放侧设备的计算能力信息;响应于用户的操作事件,确定所述操作事件对应的控制处理所需的计算要求;若所述播放侧设备的计算能力不满足所述计算要求,则对所述操作事件所针对的待处理数据执行所述控制处理后,将所述控制处理所产生的媒体数据发送给所述播放侧设备;
35.所述播放侧设备,被配置为播放来自所述控制侧设备的媒体数据。
36.第四方面,本技术提供了一种设备交互系统,该系统包括控制侧设备、播放侧设备和其他设备;
37.所述控制侧设备,被配置为获取并记录播放侧设备的计算能力信息;响应于用户的操作事件,确定所述操作事件对应的控制处理所需的计算要求;若所述播放侧设备的计算能力不满足所述计算要求,则将所述操作事件所针对的待处理数据和所述控制处理的信息发送给所述其他设备;
38.所述其他设备,被配置为依据所述控制处理的信息,对所述待处理数据进行控制处理得到媒体数据,将所述媒体数据发送给所述控制侧设备;
39.所述控制侧设备,还被配置为将所述媒体数据发送给所述播放侧设备;
40.所述播放侧设备,被配置为播放来自所述控制侧设备的媒体数据。
41.第五方面,本技术提供了一种设备交互装置,设置于控制侧设备,该装置包括:
42.能力获取单元,被配置为获取并记录播放侧设备的计算能力信息;
43.要求确定单元,被配置为响应于用户的操作事件,确定所述操作事件对应的控制处理所需的计算要求;
44.控制处理单元,被配置为若所述播放侧设备的计算能力不满足所述计算要求,则对所述操作事件所针对的待处理数据执行所述控制处理,或者提供给除所述控制侧设备和播放侧设备之外的其他设备对待处理数据执行所述控制处理;
45.第一通信单元,被配置为将所述控制处理所产生的媒体数据发送给所述播放侧设备,以便所述播放侧设备播放所述媒体数据。
46.第六方面,本技术提供了一种设备交互装置,设置于播放侧设备,该装置包括:
47.能力提供单元,被配置为向控制侧设备提供所述播放侧设备的计算能力信息,以便于所述控制侧设备在所述播放侧设备的计算能力不满足用户的操作事件对应的控制处理所需的计算要求时,由所述控制侧设备或除所述控制侧设备和播放侧设备之外的其他设备对所述操作事件所针对的待处理数据执行所述控制处理;
48.接收处理单元,被配置为接收所述控制侧设备发送的所述控制处理所产生的媒体数据;
49.播放处理单元,被配置为播放所述媒体数据。
50.根据第七方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述的方法的步骤。
51.根据第八方面,提供了一种电子设备,其特征在于,包括:
52.一个或多个处理器;以及
53.与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行上述第一方面中任一项所述的方法的步骤。
54.根据本技术提供的具体实施例,本技术可以具备以下技术效果:
55.1)控制侧设备获取并记录播放侧设备的计算能力信息,若播放侧设备的计算能力不满足用户操作事件对应的控制处理所需的计算要求,由控制侧设备设备或其他设备对待处理数据执行控制处理后,再将产生的流体流发送给播放侧设备,从而保证播放侧设备能
够正常播放媒体数据。
56.2)本技术可以借助控制侧设备或除控制侧设备和播放侧设备的其他设备的计算能力,实现对播放侧设备对媒体数据播放能力的提升。
57.3)本技术提供了多种获取播放侧设备和其他设备计算能力信息的途径,使得实现更加丰富和灵活。
58.当然,实施本技术的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
59.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
60.图1示出了应用本技术实施例的示例性系统架构图;
61.图2为本技术实施例提供的控制侧设备执行的方法流程图;
62.图3为本技术实施例提供的播放侧设备执行的方法流程图;
63.图4为本技术实施例提供的投屏应用场景下的基本架构示意图;
64.图5为本技术实施例提供的一个视频投屏的方法流程图;
65.图6为本技术实施例提供的另一个视频投屏的方法流程图;
66.图7为本技术实施例提供的一个vr设备播放高清vr视频的方法流程图;
67.图8示出根据一个实施例的设备交互装置的示意性框图;
68.图9示出根据另一个实施例的设备交互装置的示意性框图;
69.图10示例性的展示出了电子设备的架构。
具体实施方式
70.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本技术保护的范围。
71.在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
72.应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
73.取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
74.图1示出了可以应用本技术实施例的示例性系统架构。如图1中所示,在同一个局
域网中可能存在多个终端设备,例如智能手机、智能电视、平板电脑、pc、便携式电脑等等。其中用户可以将其中一个便于操作的设备作为控制端设备,例如将智能手机作为控制端设备,或者将平板电脑作为控制端设备,等等;将其中一个便于观看的设备作为播放端设备,例如将具有较大屏幕的智能电视作为播放端设备,或者将pc作为播放端设备,等等。在图1所示系统中仅以智能手机作为控制端设备,智能电视作为播放端设备为例,局域网中还存在pc和便携式电脑等其他设备。
75.各终端设备之间通过诸如路由器等交换设备互联,组成局域网。各终端设备可以通过有线或无线的方式接入局域网,目前普遍采用的方式是通过wifi的方式接入局域网。例如,无线路由器产生的无线网络覆盖的有效范围内,各终端设备采用wifi的方式进行联网。除此之外,各终端设备之间也可以通过蓝牙等其他无线方式建立互连。各终端设备上安装并运行有支持多设备交互的应用,例如投屏类应用、通信类应用等等,还可以安装有其他诸如语音交互应用、网页浏览器应用等等,本技术对此不加以限制。
76.控制端设备和播放端设备之间的设备交互可以基于多种协议实现,包括但不限于:airplay(隔空播放)、dnla(digital living network alliance,数字生活网络联盟)和miracast。
77.其中,airplay主要用于支持ios设备包括iphone、ipad、macbook通过wifi将图片、音频、视频等传输到支持airplay的显示设备上,ios设备基本都支持这个功能。miracast是由wi-fi联盟于2012年所制定,以wi-fi直连(wi-fi direct)为基础的无线显示标准,支持此标准的3c设备可通过无线方式分享视频或图像。dlna使用通用的即插即用(upnp)协议来完成媒体的管理,发现和控制,旨在解决pc(personal computer,个人计算机)、智能电器,移动设备等在内的无线网络和有线网络的互联互通。
78.应该理解,图1中的各种设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的控制端设备、播放端设备和其他设备。
79.图2为本技术实施例提供的设备交互方法的主要流程图,该方法流程可以由图1所示系统中的控制端设备执行。如图2所示,该方法可以包括以下步骤:
80.步骤202:控制侧设备获取并记录播放侧设备的计算能力信息。
81.步骤204:响应于用户的操作事件,确定操作事件对应的控制处理所需的计算要求。
82.步骤206:判断播放侧设备的计算能力是否满足计算要求,如果否,执行步骤208;如果是,执行步骤210。
83.步骤208:由控制侧设备或除控制侧设备和播放侧设备之外的其他设备对操作事件所针对的待处理数据执行控制处理后,由控制侧设备将控制处理所产生的媒体数据发送给播放侧设备,以便播放侧设备播放该媒体数据。
84.步骤210:待处理数据和控制处理的信息发送给播放侧设备,由播放侧设备对待处理数据进行控制处理后播放。
85.由上面流程可以看出,控制侧设备获取并记录播放侧设备的计算能力信息,若播放侧设备的计算能力不满足用户操作事件对应的控制处理所需的计算要求,由控制侧设备设备或其他设备对待处理数据执行控制处理后,再将产生的流体流发送给播放侧设备,从而保证播放侧设备能够正常播放媒体数据。
86.下面对上述流程中的各步骤进行详细描述。首先结合实施例对上述步骤202即“控制侧设备获取并记录播放侧设备的计算能力信息”进行详细描述。
87.控制侧设备获取播放侧设备的计算能力信息可以采用但不限于以下几种方式:
88.第一种方式:控制侧设备接入局域网后,通过广播的方式查询局域网中播放侧设备的计算能力信息。
89.控制侧设备在接入局域网后,可以通过ssdp(simple service discovery protocol,简单服务发现协议)查询所在局域网内提供特定服务的设备。例如,控制侧设备可以在局域网内广播查询请求,该查询请求中包含查询的设备类型信息或服务类型信息。接收到该查询请求的设备若符合该设备类型信息或能够提供所查询的服务类型信息一致的服务,会响应该查询请求,返回响应消息并在响应消息中携带本设备的计算能力信息。
90.控制侧设备可以记录各设备返回的计算能力信息,后续选定播放侧设备后就可以直接获知播放侧设备的计算能力信息。
91.更进一步地,该计算能力信息可以在控制侧设备选择播放侧设备时作为参考。例如,控制侧设备获取到用户进行投屏的操作时,向用户展示局域网内所有可作为播放侧设备的设备信息并展示各设备的计算能力信息供用户参考。
92.其中设备的计算能力信息可以通过设备具备的计算服务类型和计算资源的剩余状况来确定。例如依据当前cpu、gpu、内存等的剩余状况来体现。
93.作为其中一种可实现的方式,可以预先将不同计算资源状况与不同等级的计算能力相对应,例如划分成高计算能力、中计算能力和低计算能力等。然后依据设备当前计算资源的剩余状况确定对应的计算能力等级,控制侧设备记录局域网内各设备的计算能力等级和具备的计算服务类型即可。
94.作为另一种可实现的方式,也可以直接记录设备的计算资源剩余状况和计算服务类型,例如剩余多少cpu、gpu和内存等。
95.设备具备的计算服务类型可以通过设备上安装的应用类型来确定,例如是否安装有特定的视频合成应用,是否安装有特定的视频解码应用,等等。
96.还可以采用其他形式来体现计算能力信息,在此不做一一穷举。关于计算能力信息的形式在后续其他实现方式中均适用,后续不做赘述。
97.第二种方式:控制侧设备接入局域网后,从局域网中的管理设备获取播放侧设备在管理设备登记的计算能力信息。
98.在一个局域网中可以选定一个设备作为管理设备,所有设备都可以向该管理设备登记本设备的计算能力信息,并可以从该管理设备获取其他设备的计算能力信息。
99.例如,管理设备可以为路由器等交换设备,也可以为用户指定的一个控制侧设备。
100.作为其中一种可实现的方式,所有设备在接入局域网时,均向该局域网中的管理设备登记本设备的计算能力信息。
101.作为另一种可实现的方式,随着设备上不断运行的应用,设备具有的计算服务类型和资源剩余状况是发生变化的。因此,局域网中的各设备还可以周期性地向所在局域网中的管理设备登记本设备的计算能力信息。管理设备可以实时更新记录的其他各设备的计算能力信息,与此同时,管理设备也会记录管理设备自己的计算能力信息。
102.另外,控制侧设备可以在选定播放侧设备之前,从局域网中的管理设备获取播放
侧设备在管理设备登记的计算能力信息,后续选定播放侧设备后就可以直接获知播放侧设备的计算能力信息。更进一步地,该计算能力信息可以在控制侧设备选择播放侧设备时作为参考。例如,控制侧设备获取到用户进行投屏的操作时,向用户展示局域网内所有可作为播放侧设备的设备信息并展示各设备的计算能力信息供用户参考。
103.或者,控制侧设备也可以在选定播放侧设备之后,从局域网中的管理设备获取播放侧设备在管理设备登记的计算能力信息。
104.第三种方式:控制侧设备与播放侧设备建立连接的过程中,获取播放侧设备的计算能力信息。
105.控制侧设备与播放侧设备建立连接通常是在选定播放侧设备之后执行。例如,用户在控制侧设备上操作进行投屏搜索,控制侧设备搜索局域网内提供投屏服务的设备信息并以列表的形式展示给用户,用户从中选择一个设备作为播放侧设备。再例如,用户在控制侧设备上操作进行投屏,控制侧设备将用户设置的默认设备作为播放侧设备。
106.在选择播放侧设备后,可以在用户触发下或者自动向播放侧设备发送连接请求,通过握手机制与播放侧设备建立连接。在连接建立的过程中,播放侧设备可以通过握手过程中发送给控制侧设备的消息携带播放侧设备的计算能力信息。
107.第四种方式:控制侧设备与播放侧设备建立连接后,通过心跳机制获取播放侧设备的计算能力信息。
108.控制侧设备与播放侧设备建立连接后,可以通过周期性发送的心跳报文向播放侧设备查询计算能力信息。播放侧设备接收到来自控制侧设备的心跳报文后,实时获取自身的计算能力信息并通过心跳响应返回给控制侧设备。控制侧设备利用接收到的计算能力信息更新已经记录的播放侧设备的计算能力信息,从而保证所记录播放侧设备的计算能力信息具有一定的实时性。
109.下面结合实施例对上述步骤204即“响应于用户的操作事件,确定操作事件对应的控制处理所需的计算要求”进行详细描述。
110.用户可以通过在控制侧设备进行操作实现对播放侧设备所播放媒体数据的控制。用户在控制侧设备进行操作的方式可以是通过在用户ui界面通过输入控制指令、触发控制组件等方式,也可以通过输入语音控制指令等方式进行操作。
111.用户的操作事件通常对应一定的控制处理,本技术实施例中涉及的控制处理指的是:因用户的操作事件产生的媒体控制需求所对应的对媒体数据的处理方式。其中一些是比较简单的控制处理,例如开始播放、暂停播放、倍速播放、前进、后退等等。这些控制处理通常需要的计算要求较低。而还有一些是比较复杂的控制处理,例如对媒体数据进行解码、合成、编辑、剪辑、格式转换、视角切换等等。这些控制处理通常需要的计算要求较高。
112.控制端设备可以利用操作事件对应的控制处理的类型和待处理数据的数据量,能够预估控制处理所需的计算要求。该计算要求可以体现为需要的计算服务类型和计算资源状况,例如需要占用多少cpu、gpu、内存、网络带宽等。也可以将对计算资源的使用状况与不同等级的计算能力相对应,例如划分成高计算要求、中计算要求和低计算要求等。
113.这样就能够在步骤206中判断播放侧设备的计算能力是否满足计算要求。例如若播放侧设备具有控制处理所需要的计算服务类型且剩余的计算资源达到控制处理所需要的计算资源,则认为满足计算要求。再例如,若播放侧设备具有控制处理所需要的计算服务
类型且且计算能力等级高于或等于控制处理对应的计算要求等级,则认为满足计算要求,等等。
114.下面结合实施例对上述步骤208即“由控制侧设备或除控制侧设备和播放侧设备之外的其他设备对待处理数据执行控制处理后,由控制侧设备将控制处理所产生的媒体数据发送给播放侧设备,以便播放侧设备播放该媒体数据”进行详细描述。
115.作为其中一种可实现的方式,控制侧设备在确定播放侧设备的计算能力不满足控制处理的计算要求时,可以在本控制侧设备对待处理数据进行控制处理后,将控制处理所产生的媒体数据发送给播放侧设备。
116.在此需要说明的是,用户的操作事件针对的是媒体数据,相应地,用户操作事件所对应的控制处理针对的也是该媒体数据。在本技术实施例中将用户操作事件所针对的媒体数据称为待处理数据。将该待处理数据进行控制处理以影响播放侧设备播放的媒体数据。例如,待处理数据可以是播放侧设备将要播放的媒体数据,例如对要播放的媒体数据进行解码处理、剪辑处理,视角切换等等。待处理数据也可以是用户输入的数据和要播放的媒体数据,例如用户输入一条弹幕文本,控制处理是将该弹幕文本合成于要播放的媒体数据中,播放侧设备将来播放的视频中就可以包含用户输入的弹幕文本。其中,待处理数据的来源可以是多种多样的,例如待处理数据可以是从媒体服务器端获取的媒体数据,可以是从其他用户端设备获取的媒体数据,还可以是控制侧设备本地存储的媒体数据,甚至如上面例子中所述的,也可以是用户在控制侧设备输入的媒体数据。等等。
117.作为另一种可实现的方式,也可以由除控制侧设备和播放侧设备之外的其他设备对待处理数据执行控制处理,然后再由控制侧设备获取控制处理后产生的媒体流并发送给播放侧设备。
118.具体地,可以包括但不限于以下几种情况:
119.第一种情况:控制侧设备可以首先判断本控制侧设备的计算能力是否满足控制处理的计算要求,如果满足,则由控制侧设备对待处理数据执行控制处理;否则,可以由除控制侧设备和播放侧设备之外的其他设备对待处理数据执行控制处理。
120.第二种情况:控制侧设备也可以不对待处理数据执行任何控制处理,在确定播放侧设备的计算能力不满足控制处理的计算要求时,就交给除控制侧设备和播放侧设备之外的其他设备对待处理数据执行控制处理。
121.第三种情况:也可以根据用户的设置来确定,如果用户设置优先由控制侧设备执行控制处理,则按照第一种情况中的,控制侧设备可以首先判断本控制侧设备的计算能力是否满足控制处理的计算要求,如果满足,则由控制侧设备对待处理数据执行控制处理;否则,可以由除控制侧设备和播放侧设备之外的其他设备对待处理数据执行控制处理。如果用户设置禁止控制侧设备执行控制处理,则按照第二种情况中的,控制侧设备在确定播放侧设备的计算能力不满足控制处理的计算要求时,就交给除控制侧设备和播放侧设备之外的其他设备对待处理数据执行控制处理。
122.在这种实现方式中,控制侧设备可以与上述的其他设备建立连接,将待处理数据和控制处理的信息发送给该其他设备;然后获取其他设备对该待处理数据执行的控制处理后所产生的媒体数据。
123.作为其中一种可实现的方式,控制侧设备与其他设备建立连接之前,可以通过广
播的方式查询局域网中其他设备的计算能力信息和地址信息,从中选择一个计算能力满足上述计算要求的其他设备。然后利用其他设备的地址信息向该其他设备发送连接请求并与该其他设备建立连接。
124.作为另一种可实现的方式,控制侧设备可以从局域网中的管理设备获取其他设备在管理设备中登记的计算能力信息和地址信息。例如,如果设备支持本技术实施例提供的设备交互方式,可以在加入局域网时在管理设备上登记自己能够提供的计算服务类型以及计算资源状况,例如可以提供媒体数据的解码、合成、编辑、剪辑、格式转换、视角切换等服务。如果某其他设备登记的计算服务包含控制侧设备需要的控制处理且计算资源状况满足计算要求,则利用该其他设备的地址信息向该其他设备发送连接请求并与该其他设备建立连接。
125.相应地,对于播放侧设备而言,其执行的方法流程可以如图3中所示,包括以下步骤:
126.步骤302:播放侧设备向控制侧设备提供播放侧设备的计算能力信息,以便于控制侧设备在播放侧设备的计算能力不满足用户的操作事件对应的控制处理所需的计算要求时,由控制侧设备或除控制侧设备和播放侧设备之外的其他设备对待处理数据执行控制处理。
127.播放侧设备向控制侧设备提供计算能力信息的方式可以采用但不限于以下几种:
128.第一种方式:响应于所述控制侧设备的广播查询,将所述播放侧设备的计算能力信息发送给所述控制侧设备。
129.例如,控制侧设备可以在局域网内广播查询请求,该查询请求中包含查询的设备类型信息或服务类型信息。接收到该查询请求的播放侧设备若符合该设备类型信息或能够提供所查询的服务类型信息一致的服务,会响应该查询请求,返回响应消息并在响应消息中携带本设备的计算能力信息。
130.第二种方式:播放侧设备向局域网中的管理设备登记播放侧设备的计算能力信息,以供控制侧设备从管理设备查询播放侧设备的计算能力信息。
131.在一个局域网中可以选定一个设备作为管理设备,所有设备都可以向该管理设备登记本设备的计算能力信息,并可以从该管理设备获取其他设备的计算能力信息。例如,管理设备可以为路由器等交换设备,也可以为用户指定的一个控制侧设备。
132.作为其中一种可实现的方式,所有设备在接入局域网时,均向该局域网中的管理设备登记本设备的计算能力信息。
133.作为另一种可实现的方式,随着设备上不断运行的应用,设备具有的计算服务类型和资源剩余状况是发生变化的。因此,局域网中的各设备还可以周期性地向所在局域网中的管理设备登记本设备的计算能力信息。管理设备可以实时更新记录的其他各设备的计算能力信息,与此同时,管理设备也会记录管理设备自己的计算能力信息。
134.第三种方式:播放侧设备与控制侧设备建立连接的过程中,将播放侧设备的计算能力信息提供给控制侧设备。
135.在连接建立的过程中,播放侧设备可以通过握手过程中发送给控制侧设备的消息携带播放侧设备的计算能力信息。
136.第四种方式:播放侧设备与控制侧设备建立连接后,通过心跳机制向控制侧设备
发送播放侧设备的计算能力信息。
137.控制侧设备与播放侧设备建立连接后,可以通过周期性发送的心跳报文向播放侧设备查询计算能力信息。播放侧设备接收到来自控制侧设备的心跳报文后,实时获取自身的计算能力信息并通过心跳响应返回给控制侧设备。
138.步骤304:接收并播放控制侧设备发送的控制处理所产生的媒体数据。
139.若播放侧设备的计算能力满足计算要求,则播放侧设备会接收到控制侧设备发送的待处理数据和控制处理的信息,此时,播放侧设备对待处理数据进行控制处理后播放。
140.计算能力信息包括:具备的计算服务类型和计算资源剩余状况。
141.下面以几个具体的应用场景为例,对上述方法流程进行举例描述。为了方便对应用场景的理解,首先对各应用场景的基本的架构进行简单介绍。如图4中所示,数据源负责提供各种媒体数据。以投屏为例,数据源可以是服务器端提供的视频数据,该服务器端可以是云服务器。云服务器又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(vps,virtual private server)服务中存在的管理难度大,服务扩展性弱的缺陷。
142.控制侧设备具备下载媒体数据的功能、能够对视频数据进行控制处理的功能、存储处理后数据的功能、ui交互功能、作为控制点与局域网内设备进行交互的功能(图中以dlna控制点为例)、网络通信功能(例如服务套接字等)。
143.播放侧设备包含与控制侧设备通信的功能(图中以dlna功能为例)、解码功能、渲染功能等。
144.控制侧设备与播放侧设备之间可以进行ssdp、gena、soap协议的协商和交互,以及数据交互。
145.应用场景1:用户通过手机投屏多路视频数据至智能电视。
146.图5为本技术实施例提供的一个视频投屏的方法流程图,该方法中以手机作为控制侧设备、智能电视作为播放侧设备为例。如图5所示,该方法可以包括以下步骤:
147.步骤502:手机响应于用户的触发开始投屏的操作,展现投屏控制界面。
148.步骤504:手机在局域网内搜索支持投屏播放的设备,并将搜索到的设备信息以列表的形式展现给用户。
149.步骤506:手机响应于用户从列表中选择智能电视作为播放类设备,与智能电视建立连接,并在建立连接的过程中获取智能电视的计算能力信息。
150.步骤508:手机确定用户选择播放的视频为一个多路视频数据,估算解码多路视频需要的计算要求,确定智能电视的计算能力不满足该计算要求后,由手机对视频流进行解码处理。
151.通常对于多路视频的解码需要一定的计算能力,例如需要具有h264解码功能且计算资源满足计算要求,若智能电视没有h264解码功能或者计算资源的剩余状况不满足计算要求,而手机能够满足该计算要求,则由手机对视频流进行解码处理。
152.步骤510:手机将解码处理后得到的视频流传输给智能电视。
153.步骤512:智能电视对接收到的视频流进行播放。
154.应用场景2:用户通过手机投屏自由视角视频至智能电视并进行视角切换。
155.图6为本技术实施例提供的另一个视频投屏的方法流程图,该方法中以手机作为
控制侧设备、智能电视作为播放侧设备为例。如图6所示,该方法可以包括以下步骤:
156.步骤602:手机响应于用户的触发开始投屏的操作,展现投屏控制界面。
157.步骤604:手机在局域网内搜索支持投屏播放的设备,并将搜索到的设备信息以列表的形式展现给用户。
158.步骤606:手机响应于用户从列表中选择智能电视作为播放类设备,与智能电视建立连接,并在建立连接的过程中获取智能电视的计算能力信息。
159.步骤608:手机将用户选择投屏播放的视频流传输给智能电视进行播放。
160.步骤610:手机响应于用户的触发视角切换的操作,估算视角切换需要的计算要求。
161.步骤612:手机确定智能电视的计算能力不满足该计算要求且手机的计算能力也不满足计算要求后,通过广播的方式查询局域网中计算能力能够满足上述计算要求的其他设备。
162.随着视频处理技术和网络传输技术的不断提高,科研人员研发了自由视角技术。通过在拍摄现场部署一圈同步采集摄像机,拍摄对现场的画面进行全方位的采集拍摄,然后上传到云端。在云端对采集到的视频进行三维重建合成自由视角视频。自由视角视频不同于传统视频,每一帧都包含拍摄视角的纹理信息和深度信息,且需要用户的交互输入作为变换视角的依据。因此,终端设备需要具有较强的计算能力来依据用户选择切换的视角信息对自由视角视频进行处理,包括对纹理深度图的解析、深度图预处理和映射、多相机映射纹理图的融合等等。这些处理通常是普通的智能电视不完成的,在本实施例中若手机也不满足计算要求,则可以由安装有特定应用(例如具备上述处理过功能的视频处理应用)且计算资源的剩余状况也符合计算要求的pc来进行上述处理完成视角切换,得到切换后的视频流。
163.步骤614:手机与pc建立连接。
164.步骤616:手机将接收到的视频流和视角切换信息发送给pc。
165.步骤618:由pc对视频流进行视角切换处理后,将产生的视频流发送给手机。
166.步骤620:手机将视频流传输给智能电视。
167.步骤622:智能电视对接收到的视频流进行播放。
168.应用场景3:vr设备播放高清vr视频。
169.图7为本技术实施例提供的一个vr设备播放高清vr视频的方法流程图,该方法中以vr设备处理器作为控制侧设备、vr眼镜作为播放侧设备为例。如图7所示,该方法可以包括以下步骤:
170.步骤702:vr设备加入局域网后,从局域网中的路由器获取各设备登记的计算能力信息和地址信息。
171.步骤704:响应于用户的触发播放高清vr视频的操作,vr设备的处理器确定处理器和vr眼睛都不具备高清vr视频的解码能力,则查询到局域网中的pc登记有高清vr视频的解码功能且计算资源的剩余状况满足播放高清vr视频的计算要求。
172.步骤706:vr设备的处理器与pc建立连接。
173.步骤708:vr设备的处理器将高清vr视频和解码信息提供给pc。
174.步骤710:由pc对该高清vr视频进行解码,将解码后得到的vr视频流发送给vr设备
的处理器。
175.步骤712:vr设备的处理器将vr视频流发送给vr眼镜。
176.步骤714:vr眼镜播放vr视频流。
177.通过该实施例,使得一些性能比较低的vr设备能够借助局域网中其他设备而具备更高的播放能力。
178.从上述方法实施例可以看出,本技术上述实施例所涉及的方案与传统推流类投屏相比,能够具备更高的媒体播放能力。传统推流类投屏是控制侧设备将要播放的媒体链接发送给播放侧设备,由播放侧设备访问该链接并进行媒体播放。若需要的媒体播放能力超出了播放侧设备的计算能力,则无法正常播放,或者在媒体播放过程中用户对媒体的控制需求所需需要的计算要求超出了播放侧设备的计算能力,也无法正常实现该控制需求。但采用那本技术实施例所提供的方案可以由控制侧设备或具备足够计算能力的其他设备来对待处理数据进行控制处理后,将控制处理所产生的媒体数据发送给播放侧设备,以使得媒体数据能够正常播放,满足用户对媒体的控制需求。
179.另外,本技术上述实施例所涉及方案与传统镜像类投屏相比,无需在控制侧设备进行真实播放。传统镜像类投屏是控制侧设备在播放媒体数据的同时进行录屏,将录屏数据传输给播放侧设备进行播放,因此需要控制侧设备真实播放媒体数据,整个过程中会影响用户对控制侧设备的其他使用需求。而本技术实施例提供的方式仅需要控制侧设备将控制处理所产生的媒体数据发送给播放侧设备即可,无需真实播放媒体数据,因此更加方便,不会影响用户对控制侧设备的正常使用。
180.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
181.根据另一方面的实施例,提供了一种设备交互装置。图8示出根据一个实施例的设备交互装置的示意性框图,该装置设置于图1所示架构中的控制侧设备。如图8所示,该装置800包括:能力获取单元801、要求确定单元802、控制处理单元803和第一通信单元804,还可以进一步包括第二通信单元805。其中各组成单元的主要功能如下:
182.能力获取单元801,被配置为获取并记录播放侧设备的计算能力信息。
183.要求确定单元802,被配置为响应于用户的操作事件,确定操作事件对应的控制处理所需的计算要求。
184.控制处理单元803,被配置为若播放侧设备的计算能力不满足计算要求,则对待处理数据执行控制处理,或者由除控制侧设备和播放侧设备之外的其他设备对操作事件所针对的待处理数据执行控制处理。
185.第一通信单元804,被配置为将控制处理所产生的媒体数据发送给播放侧设备,以便播放侧设备播放媒体数据。
186.其中,能力获取单元801可以具体被配置为:控制侧设备接入局域网后,通过广播的方式查询局域网中播放侧设备的计算能力信息;或者,
187.控制侧设备接入局域网后,从局域网中的管理设备获取播放侧设备在管理设备登
记的计算能力信息;或者,
188.控制侧设备与播放侧设备建立连接的过程中,获取播放侧设备的计算能力信息;或者,
189.控制侧设备与播放侧设备建立连接后,通过心跳机制获取播放侧设备的计算能力信息。
190.第二通信单元805,被配置为与其他设备建立连接;将待处理数据和控制处理的信息发送给其他设备;获取其他设备对待处理数据执行控制处理后所产生的媒体数据。
191.作为其中一种可实现的方式,第二通信单元805与其他设备建立连接时,从局域网中的管理设备获取其他设备在管理设备中登记的计算能力信息和地址信息,若登记的计算能力信息满足计算要求,则第二通信单元805利用地址信息向其他设备发送连接请求并与其他设备建立连接。
192.作为另一种可实现的方式,第二通信单元805与其他设备建立连接时,通过广播的方式查询局域网中其他设备的计算能力信息和地址信息,若其他设备的计算能力满足计算要求,则第二通信单元805利用地址信息向其他设备发送连接请求并与其他设备建立连接。
193.第一通信单元804,进一步被配置为:若播放侧设备的计算能力满足计算要求,则将待处理数据和控制处理的信息发送给播放侧设备,由播放侧设备对待处理数据进行控制处理后播放。
194.上述计算能力信息包括:具备的计算服务类型和计算资源剩余状况。
195.作为一种典型的应用场景,控制处理包括投屏播放场景下对媒体数据的解码、合成、编辑、剪辑、格式转换或视角切换。
196.图9示出根据另一个实施例的设备交互装置的示意性框图,该装置设置于图1所示架构中的播放侧设备。如图9所示,该装置900包括:能力提供单元901、接收处理单元902和播放处理单元903。其中各组成单元的主要功能如下:
197.能力提供单元901,被配置为向控制侧设备提供播放侧设备的计算能力信息,以便于控制侧设备在播放侧设备的计算能力不满足用户的操作事件对应的控制处理所需的计算要求时,由控制侧设备或除控制侧设备和播放侧设备之外的其他设备对操作事件所针对的待处理数据执行控制处理。
198.接收处理单元902,被配置为接收控制侧设备发送的控制处理所产生的媒体数据。
199.播放处理单元903,被配置为播放媒体数据。
200.其中,能力提供单元901可以具体被配置为:响应于控制侧设备的广播查询,将播放侧设备的计算能力信息发送给控制侧设备;或者,
201.播放侧设备向局域网中的管理设备登记播放侧设备的计算能力信息,以供控制侧设备从管理设备查询播放侧设备的计算能力信息;或者,
202.播放侧设备与控制侧设备建立连接的过程中,将播放侧设备的计算能力信息提供给控制侧设备;或者,
203.播放侧设备与控制侧设备建立连接后,通过心跳机制向控制侧设备发送播放侧设备的计算能力信息。
204.更进一步地,若播放侧设备的计算能力满足计算要求,则接收处理单元902接收到控制侧设备发送的待处理数据和控制处理的信息,此时,播放处理单元903对待处理数据进
行控制处理后播放。
205.另外,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述方法实施例中任一项所述的方法的步骤。
206.以及一种电子设备,包括:
207.一个或多个处理器;以及
208.与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行前述方法实施例中任一项所述的方法的步骤。
209.其中,图10示例性的展示出了电子设备的架构,具体可以包括处理器1010,视频显示适配器1011,磁盘驱动器1012,输入/输出接口1013,网络接口1014,以及存储器1020。上述处理器1010、视频显示适配器1011、磁盘驱动器1012、输入/输出接口1013、网络接口1014,与存储器1020之间可以通过通信总线1030进行通信连接。
210.其中,处理器1010可以采用通用的cpu、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本技术所提供的技术方案。
211.存储器1020可以采用rom(read only memory,只读存储器)、ram(randomaccess memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储用于控制电子设备1000运行的操作系统1021,用于控制电子设备1000的低级别操作的基本输入输出系统(bios)1022。另外,还可以存储网页浏览器1023,数据存储管理系统1024,以及设备交互装置1025等等。上述设备交互装置1025就可以是本技术实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本技术所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
212.输入/输出接口1013用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
213.网络接口1014用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
214.总线1030包括一通路,在设备的各个组件(例如处理器1010、视频显示适配器1011、磁盘驱动器1012、输入/输出接口1013、网络接口1014,与存储器1020)之间传输信息。
215.需要说明的是,尽管上述设备仅示出了处理器1010、视频显示适配器1011、磁盘驱动器1012、输入/输出接口1013、网络接口1014,存储器1020,总线1030等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本技术方案所必需的组件,而不必包含图中所示的全部组件。
216.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品
可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例或者实施例的某些部分所述的方法。
217.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
218.以上对本技术所提供的技术方案进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1