投屏实现方法、存储介质、电子设备及系统与流程

文档序号:14749664发布日期:2018-06-22 11:08阅读:319来源:国知局

本发明涉及通信技术领域,具体涉及一种投屏实现方法、存储介质、电子设备及系统。



背景技术:

传统的投屏实现方法中是设备A通过搜索周边设备后与设备B建立连接,设备A是客户端,设备B是服务端,设备A直接通过WIFI直连的形式来连接上设备,然后将设备A中的信息投递到设备B中。

由于设备B的网络设备需要工作在普通网卡模式以外还需要工作在WIFI直连模式下,也就是说设备B的网络设备需要同时工作在两种模式下,这样就极大的提高了网络设备的不稳定性,非常容易引起丢包甚至是断网的情况,从而导致投屏非常的不稳定。

并且在设备A与设备B建立了一套内在的通信信道,其中设备A是客户端,设备B内部搭建了一套服务,通过该服务与设备A进行联系,设备A通过该条信道将信息传递给设备B并在屏幕上显示。从而导致B设备的网络设备负担非常重,从而影响了投屏的效率和稳定性。



技术实现要素:

针对现有技术中存在的缺陷,本发明的目的在于提供一种投屏实现方法、存储介质、电子设备及系统,提升了投屏的效率和稳定性。

为达到以上目的,本发明采取的技术方案是:一种投屏实现方法:

多个设备均通过WIFI方式连接路由器;其中一个设备为发起投屏的设备;

发起投屏的设备扫描当前网络环境下的其他所有设备以获取所有设备列表;

发起投屏的设备接收用户选择的所有设备列表的其中一个设备作为被投屏设备;

发起投屏的设备将被投屏设备的相关信息发送给服务器;并将需要被投屏的直播房间信息上传到服务器;

服务器查询其数据库中的可连接设备列表,若被投屏设备在所述可连接设备列表中,则服务器通过路由器将从发起投屏的设备接收到的直播房间信息发送给被投屏设备;

被投屏设备主动与服务器建立连接关系,接收发起投屏的设备经由服务器和路由器发送的实时的直播间流信息并在被投屏设备的屏幕上显示。

在上述技术方案的基础上,服务器判定被投屏设备已经获取到直播间流信息后,向发起投屏的设备反馈直播间流信息播放成功的消息,发起投屏的设备接收到播放成功的消息后弹出投屏成功的提示。

在上述技术方案的基础上,被投屏设备的相关信息包括其外网IP地址、内网IP地址和网卡地址。

在上述技术方案的基础上,服务器根据被投屏设备的外网IP地址、内网IP地址向被投屏设备发送信息。

在上述技术方案的基础上,服务器通过标准的IP协议将设备的内网IP地址发送给路由器,路由器查询路由器列表信息,并根据设备的内网IP地址对应的目标地址信息将从发起投屏的设备接收到的直播房间信息发送给被投屏设备。

本发明还公开了一种存储介质,该存储介质上存储有计算机程序:所述计算机程序被处理器执行时实现所述投屏实现方法。

本发明还公开了一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序:处理器执行计算机程序时实现所述投屏实现方法。

本发明还公开了一种投屏实现系统,包括:多个设备,路由器和服务器,其中一个设备为发起投屏的设备;

发起投屏的设备用于扫描当前网络环境下的其他所有设备以获取所有设备列表;接收用户选择的所有设备列表的其中一个设备作为被投屏设备;将被投屏设备的相关信息发送给服务器;并将需要被投屏的直播房间信息上传到服务器;

服务器用于查询其数据库中的可连接设备列表,若被投屏设备在所述可连接设备列表中,则服务器通过路由器将从发起投屏的设备接收到的直播房间信息发送给被投屏设备;

被投屏设备用于主动与服务器建立连接关系,接收发起投屏的设备经由服务器和路由器发送的实时的直播间流信息并在被投屏设备的屏幕上显示。

在上述技术方案的基础上,服务器用于判定被投屏设备已经获取到直播间流信息后,向发起投屏的设备反馈直播间流信息播放成功的消息,发起投屏的设备接收到播放成功的消息后弹出投屏成功的提示。

在上述技术方案的基础上,被投屏设备的相关信息包括其外网IP地址、内网IP地址和网卡地址;服务器用于根据被投屏设备的外网IP地址、内网IP地址通过路由器向被投屏设备发送信息。

与现有技术相比,本发明的优点在于:

本发明借助服务器来实现了整个投屏过程,被投屏设备与服务器建立连接关系,接收发起投屏的设备经由服务器和路由器发送的实时的直播间流信息并在被投屏设备的屏幕上显示,从而可以使得设备的网卡可仅在WIFI模式下工作,提高了投屏的效率及降低了投屏失败的概率,避免设备的网络设备同时在两种模式下工作室时易引起丢包甚至是断网的情况。

附图说明

图1为本发明实施例中投屏实现方法的流程示意图;

图2为本发明实施例中投屏实现系统的结构示意图。

具体实施方式

以下结合附图及实施例对本发明作进一步详细说明。

参见图1所示,本发明实施例提供一种投屏实现方法,

S1,多个设备均通过WIFI方式连接路由器;其中一个设备为发起投屏的设备;

S2,发起投屏的设备扫描当前网络环境下的其他所有设备以获取所有设备列表;

S3,发起投屏的设备接收用户选择的所有设备列表的其中一个设备作为被投屏设备;

S4,发起投屏的设备将被投屏设备的相关信息发送给服务器;并将需要被投屏的直播房间信息上传到服务器;被投屏设备的相关信息包括其外网IP地址、内网IP地址和网卡地址。服务器根据被投屏设备的外网IP地址、内网IP地址向被投屏设备发送信息。

S5,服务器查询其数据库中的可连接设备列表,若被投屏设备在所述可连接设备列表中,则服务器通过路由器将从发起投屏的设备接收到的直播房间信息发送给被投屏设备;服务器通过标准的IP协议将设备的内网IP地址发送给路由器,路由器查询路由器列表信息,并根据设备的内网IP地址对应的目标地址信息将从发起投屏的设备接收到的直播房间信息发送给被投屏设备。

S6,被投屏设备主动与服务器建立连接关系,接收发起投屏的设备经由服务器和路由器发送的实时的直播间流信息并在被投屏设备的屏幕上显示。

服务器判定被投屏设备已经获取到直播间流信息后,向发起投屏的设备反馈直播间流信息播放成功的消息,发起投屏的设备接收到播放成功的消息后弹出投屏成功的提示。

本发明借助服务器来实现了整个投屏过程,被投屏设备与服务器建立连接关系,接收发起投屏的设备经由服务器和路由器发送的实时的直播间流信息并在被投屏设备的屏幕上显示,从而可以使得设备的网卡可仅在WIFI模式下工作,提高了投屏的效率及降低了投屏失败的概率,避免设备的网络设备同时在两种模式下工作室时易引起丢包甚至是断网的情况。

上述步骤的具体实现过程为:

1)首先选择其中一个设备A为发起投屏的设备,设备A需要检测是否是WIFI连接状态,如果是WIFI连接状态才开始查询设备,否则提示设备A用户状态异常需要连接WIFI设备。

2)如果设备A当前是WIFI连接状态,那么设备A需要扫描当前网络环境下的所有设备,具体实现是用过调用wifiManager中的scan方法来实现WIFI扫描的工作,扫描结果会通过回调函数的形式进行结果的返回。扫描结果会封装成一个集合list,该集合list中存储的就是当前网络环境下的所有设备的集合信息。

3)设备A如果获取到的集合数量是大于0的那么就将该所有设备信息通过列表的形式展示在设备A上,如果数量等于0此时提示设备A用户当前网络环境下扫描不到其他设备。

4)如果设备A扫描到当前网络环境下设备数量大于0的时候会展示所有设备列表,用户点击所有设备列表中的任意一个设备作为被投屏设备,会触发投屏流程的开启。

5)当设备A的用户点击设备A扫描结果列表中的设备B列表信息的时候,设备A会主动找路由器获取被点击设备B的详细信息,包括设备B的外网IP地址bIp1及设备B的内网IP地址bIp2,及设备B的网卡地址bMacAdd。

6)设备A通过网络使用标准的HTTP请求将设备B的相关信息封装成JSON格式的数据后发送给服务器,服务器获取到设备B的相关信息后,首先通过标准的JSON格式解析对信息进行解析操作然后将解析好的内容保存到内存中。服务器接下来会去查询服务器中数据库的可连接设备列表,查找可连接设备列表中是否存在网卡地址为bMacAdd的设备,如果可连接设备列表中不存在bMacAdd的设备,此时返回给设备A设备不存在的信息,当设备A接收到服务器返回的设备不存在的信息的时候直接弹出提示信息告知设备A用户连接设备无法进行投屏操作。

7)如果服务器在可连接设备列表中查询到网卡地址bMacAdd的设备,此时服务器需要返回一条查询到设备的信息给设备A,设备A接收到该信息后既可以开始投屏的第二步骤处理了。

8)设备A此时的投屏并非传统意义上的直接将内容投屏到设备B上,而是将设备A需要被投屏的直播房间信息上传到服务器。上传的信息包括房间号,主播相关信息等及设备B的相关信息。这些信息都是封装成标准的JSON格式后进行传输的。

9)服务器接收到该信息后通过标准的JSON对数据进行解析,然后获取其中的信息,首先获取目标信息并判定目标信息是否存在于服务器的可连接设备列表中,不存在依旧会返回一条错误信息给设备A,存在服务器就需要和设备B构建连接通路了。

10)如果服务器在可连接设备列表查询到网卡地址bMacAdd的设备,服务器就会直接根据设备B的ip地址推送信息。由于设备A已经将设备B的bIp1及bIp2信息发送给了服务器,服务器将通过标准的IP协议(在IP协议中包含了路由的目标IP信息,也就是设备B的内网ip信息)发送消息给路由器,路由器会查询路由器列表信息,并根据IP包中的目标地址信息将接收到的数据包直接发送给设备B中进行处理。

11)其路由信息中包含了设备A发给设备服务器S中的相关信息,设备B接收到该信息后,主动与服务器建立连接关系,并获取真实的直播间流信息,然后将直播间中的流信息在屏幕上进行显示出来。

12)服务器判定设备B已经争取获取到流信息后,需要向设备A反馈一条设备B播放成功的消息,此时设备A接收到该消息后可以弹出提示投屏过程成功了。

本发明实施例还公开了一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现投屏实现方法。

本发明实施例还公开了一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,处理器执行计算机程序时实现投屏实现方法。

参见图2所示,本发明实施例还公开了一种投屏实现系统,包括:多个设备,路由器和服务器,其中一个设备为发起投屏的设备;

发起投屏的设备用于扫描当前网络环境下的其他所有设备以获取所有设备列表;接收用户选择的所有设备列表的其中一个设备作为被投屏设备;将被投屏设备的相关信息发送给服务器;并将需要被投屏的直播房间信息上传到服务器;

服务器用于查询其数据库中的可连接设备列表,若被投屏设备在所述可连接设备列表中,则服务器通过路由器将从发起投屏的设备接收到的直播房间信息发送给被投屏设备;

被投屏设备用于主动与服务器建立连接关系,接收发起投屏的设备经由服务器和路由器发送的实时的直播间流信息并在被投屏设备的屏幕上显示。

服务器用于判定被投屏设备已经获取到直播间流信息后,向发起投屏的设备反馈直播间流信息播放成功的消息,发起投屏的设备接收到播放成功的消息后弹出投屏成功的提示。

被投屏设备的相关信息包括其外网IP地址、内网IP地址和网卡地址;服务器用于根据被投屏设备的外网IP地址、内网IP地址通过路由器向被投屏设备发送信息。

本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

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