本技术实施例涉及计算机,尤其涉及投屏方法和装置。
背景技术:
1、投屏是指将电子设备(如手机、平板、电脑等电子设备)上面播放的媒体内容通过投屏的方式同步到另外一个电子设备上面进行播放和观看。例如,通过投屏可以将小屏设备(如手机)播放的多媒体内容、游戏界面等投射到大屏设备(如智能电视)播放,利用大屏设备的显示屏播放,可以提供给用户更好的使用体验。
2、相关投屏方法投屏设备和被投屏设备需要在同一局域网内,无法实现跨网络投屏。
3、因此,如何实现跨网络投屏是本领域技术人员亟须解决的问题之一。
技术实现思路
1、本技术实施例提供了投屏方法和装置,能够实现跨网络投屏。为达到上述目的,本技术实施例采用如下技术方案:
2、第一方面,本技术实施例了提供一种投屏方法,该方法包括:云端设备接收第一设备发送的第一报文。所述云端设备向所述第二设备发送所述第一报文。其中,所述第一报文用于指示第二设备进行投屏操作或获取所述第二设备的设备状态,所述第一报文包括对象表示法json字符串和统一资源定位符url信息,所述json字符串包括应用层控制信息,所述应用层控制信息包括控制信息字段和状态信息字段,所述url信息包括所述第一协议的关键字。
3、相关投屏方法,投屏设备和被投屏设备需要在同一局域网内,需要点对点投屏,无法实现跨网络投屏。而在本技术实施例提供的方法中,云端设备可以接收投屏设备(即第一设备)发送的投屏报文(即第一报文)将其转发给被投屏端(即第二设备),投屏设备和被投屏设备不需要在同一局域网内,而是可以通过云端设备实现跨网络投屏。
4、所述控制信息字段包括投屏指令字段,所述投屏指令字段包括待投屏媒体内容的uri。
5、可以看出,本技术实施例可以通过云端设备将投屏设备发送的待投屏媒体内容的uri转发至被投屏端从而实现跨网络投屏。
6、所述状态信息字段包括开关状态字段、投屏开关状态字段、视频能力字段、音频能力字段、播放媒体内容uri字段。
7、可以看出,本技术实施例可以通过云端设备将投屏设备发送的开关状态字段、投屏开关状态字段、视频能力字段、音频能力字段和播放媒体内容uri字段等字段转发至被投屏端以获取被投屏端的状态,从而实现跨网络投屏。
8、可选地,第一报文还包括传输层信息,所述传输层信息用于指示所述第一报文的传输层为传输控制协议tcp、安全传输层协议tls、用户数据报协议udp或数据包传输层安全性协议dtls。
9、可选地,所述第一报文还包括网络层信息,所述网络层信息用于指示所述第一报文的网络层为网际协议版本ipv4或ipv6。
10、可选地,所述第一报文还包括数据链路层信息,所述数据链路层信息用于指示所述第一报文的数据链路层为电气与电子工程师协会ieee 802.11或802.3。
11、可选地,所述第一报文还包括物理层信息,所述物理层信息用于指示所述第一报文的物理层为家庭无线保真wi-fi、以太网ethernet、蓝牙或紫蜂zigbee。
12、可以理解的是,相对于数字生活网络联盟dlna协议仅支持通过网际互联协议(inte rnet protocol,ip)通道进行投屏。第一协议支持ip、plc、蓝牙等传输协议通道,可以扩展更多的传输通道。另外,dlan协议为局域网协议,不支持远程控制。且dlan协议默认不支持设备认证,存在非法控制的安全隐患。而第一协议支持远程控制和设备认证,相对dlan协议提高了用户体验和安全性。
13、在一种可能的实现方式中,该方法还可以包括:云端设备接收电子设备发送的认证信息,所述电子设备包括第一设备和/或第二设备,所述认证信息包括证书、许可证license或用户个人识别号码pin中的至少一项;所述云端设备根据所述认证信息进行安全认证;所述云端设备向所述电子设备发送所述云端设备认证信息。
14、需要说明的是,云端设备在与电子设备建立连接前,通过电子设备的认证信息进行第一协议认证可以防止与未经认证的设备建立连接,从而保证连接的安全性。
15、第二方面,本技术实施例提供了另一种投屏方法,该方法包括:向第二设备发送第一报文,所述第一报文用于指示所述第二设备进行投屏操作或获取所述第二设备的设备状态,所述第一报文包括json字符串和url信息,所述json字符串包括应用层控制信息,所述应用层控制信息包括控制信息字段和状态信息字段,所述url信息包括所述第一协议的关键字。
16、示例性地,可以通过云端设备向第二设备发送第一报文。
17、在本技术实施例提供的方法中,云端设备可以接收投屏设备(即第一设备)发送的投屏报文(即第一报文)将其转发给被投屏端(即第二设备),投屏设备和被投屏设备不需要在同一局域网内,而是可以通过云端设备实现跨网络投屏。
18、在一种可能的实现方式中,该方法还可以包括:接收至少一个电子设备发送的状态信息,所述至少一个电子设备包括所述第二设备,所述状态信息包括开关状态信息、投屏开关状态信息、视频能力信息、音频能力信息或播放媒体内容uri信息中的至少一项,所述开关状态用于指示设备是否开启,所述投屏能力信息用于指示设备是否支持投屏,所述视频能力信息用于指示所述设备是否支持播放视频,所述音频能力信息用于指示所述设备是否支持播放音频,所述播放媒体内容uri信息用于指示所述设备当前播放的媒体内容的url。
19、可以看出,可以通过获取电子设备的开关状态信息、投屏开关状态信息、视频能力信息、音频能力信息和播放媒体内容uri信息作为后续确定投屏内容和投屏设备的参考。
20、根据所述状态信息确定可投屏设备,所述可投屏设备为所述至少一个电子设备中支持投屏且开启的电子设备。
21、可以理解的是,支持投屏且处于开启状态的设备才能被投屏,因此可以通过电子设备的状态信息从电子设备中确定可投屏设备。
22、在一种可能的实现方式中,所述方法还包括:接收第一用户操作,所述第一用户操作用于选择投屏设备;根据所述第一用户操作从所述可投屏设备中确定所述第二设备。
23、可以看出,本技术实施例提供方法可以根据用户操作从可投屏的设备中灵活选取需要的投屏设备,然后通过云端设备实现跨网络投屏。
24、在一种可能的实现方式中,所述方法还包括:根据所述状态信息确定可投屏媒体内容,所述可投屏媒体内容为多个投屏内容中与所述第二设备支持的媒体类型匹配的投屏内容。
25、可以理解是,不同电子设备支持的媒体类型不同。例如,智能音箱支持播放音频但不支持播放视频,而智能电视支持播放音频和视频。因此可以根据需要投屏设备支持的媒体类型确定可投屏媒体内容,以防止用户选择投屏设备不支持的媒体类型,从而提高用户体验。
26、在一种可能的实现方式中,所述方法还包括:接收第二用户操作,所述第二用户操作用于选择投屏内容;根据所述第二用户操作从所述可投屏媒体内容确定待投屏内容。
27、可以看出,本技术实施例提供方法可以根据用户可以根据操作从可投屏媒体内容中灵活选取待投屏内容,然后通过云端设备实现跨网络投屏。
28、在一种可能的实现方式中,所述方法还包括:接收第三设备发送的待投屏媒体内容的uri。
29、可以看出,本技术实施例提供的方法除了可以使第二设备投屏本设备播放的媒体内容外,还可以获取第三设备播放的媒体内容的网络地址,使第二设备投屏播放第三设备播放的媒体内容,进一步提高用户体验。
30、在一种可能的实现方式中,所述方法还包括:接收所述第二设备发送的播放报文,所述播放报文用于指示播放待投屏媒体内容;与所述第二设备建立媒体传输通道;通过所述媒体传输通道向所述第二设备发送所述待投屏媒体内容。
31、可以看出,本技术实施例提供的方法除了可以使第二设备通过待投屏媒体内容的网络地址访问媒体服务器获取待投屏媒体内容,也可以通过建立媒体传输通道使第二设备播放本设备的镜像画面(即镜像投屏)或本设备内的资源。
32、可选地,上述媒体传输通道可以为实时流传输协议(real time streamingprotocol,r tsp)协议的媒体传输通道、快速用户数据报协议因特网连接(quick userdatagram prot ocol internet connection,quic)协议的媒体传输通道或快速传输控制(kcp)协议的媒体传输通道。
33、相比于相关技术采用miracast(一种无线显示标准)建立rtsp媒体传输通道传输待投屏媒体内容,本技术实施例提供的投屏方法,不仅能通过建立rtsp媒体传输通道传输待投屏媒体内容,还可以通过建立quic或kcp媒体传输通道传输待投屏媒体内容,提高了投屏方法的可靠性和抗干扰性。
34、在一种可能的实现方式中,所述方法还包括:对待投屏媒体内容进行压缩操作,所述压缩操作包括视频压缩、音频压缩或图片压缩中的至少一项。
35、可以理解的是,通过对待投屏媒体内容进行压缩操作,可以降低投屏媒体内容传输过程的数据量,从而降低投屏的延时和带宽成本。
36、示例性地,可以对待投屏媒体内容进行视频压缩,将投屏媒体内容中的视频内容压缩为h264(一种数字视频压缩格式)格式。
37、又示例性地,可以对投屏媒体内容进行音频压缩,将投屏媒体内容中的音频内容压缩为高级音频编码(advanced audio coding,acc)。
38、第三方面,本技术实施例提供了一种投屏装置,该装置包括:接收单元和发送单元。所述接收单元,用于接收第一设备发送的第一报文,所述第一报文用于指示第二设备进行投屏操作或获取所述第二设备的设备状态,所述第一报文包括json字符串和url信息,所述json字符串包括应用层控制信息,所述应用层控制信息包括控制信息字段和状态信息字段,所述url信息包括所述第一协议的关键字。所述发送单元,用于向所述第二设备发送所述第一报文。
39、在一种可能的实现方式中,所述控制信息字段包括投屏指令字段,所述投屏指令字段包括待投屏媒体内容的uri。
40、在一种可能的实现方式中,所述状态信息字段包括开关状态字段、投屏开关状态字段、视频能力字段、音频能力字段、播放媒体内容uri字段。
41、在一种可能的实现方式中,所述第一报文还包括传输层信息,所述传输层信息用于指示所述第一报文的传输层为tcp、tls、udp或dtls。
42、在一种可能的实现方式中,所述第一报文还包括网络层信息,所述网络层信息用于指示所述第一报文的网络层为ipv4或ipv6。
43、在一种可能的实现方式中,所述第一报文还包括数据链路层信息,所述数据链路层信息用于指示所述第一报文的数据链路层为ieee 802.11或802.3。
44、在一种可能的实现方式中,所述第一报文还包括物理层信息,所述物理层信息用于指示所述第一报文的物理层为wi-fi、ethernet、蓝牙或zigbee。
45、在一种可能的实现方式中,所述接收单元还用于:接收电子设备发送的认证信息,所述电子设备包括第一设备和/或第二设备,所述认证信息包括证书、许可证license或用户个人识别号码pin中的至少一项;根据所述认证信息进行安全认证。
46、在一种可能的实现方式中,所述发送单元还用于:向所述电子设备发送所述云端设备认证信息。
47、第四方面,本技术实施例提供了一种投屏装置,该装置包括:收发单元。所述收发单元,用于向第二设备发送第一报文,所述第一报文用于指示所述第二设备进行投屏操作或获取所述第二设备的设备状态,所述第一报文包括json字符串和url信息,所述json字符串包括应用层控制信息,所述应用层控制信息包括控制信息字段和状态信息字段,所述url信息包括所述第一协议的关键字。
48、在一种可能的实现方式中,所述收发单元还用于:接收至少一个电子设备发送的状态信息,所述至少一个电子设备包括所述第二设备,所述状态信息包括开关状态信息、投屏开关状态信息、视频能力信息、音频能力信息或播放媒体内容uri信息中的至少一项,所述开关状态用于指示设备是否开启,所述投屏能力信息用于指示设备是否支持投屏,所述视频能力信息用于指示所述设备是否支持播放视频,所述音频能力信息用于指示所述设备是否支持播放音频,所述播放媒体内容uri信息用于指示所述设备当前播放的媒体内容的url。
49、在一种可能的实现方式中,所述装置还包括:处理单元。所述处理单元,用于根据所述状态信息确定可投屏设备,所述可投屏设备为所述至少一个电子设备中支持投屏且开启的电子设备。
50、在一种可能的实现方式中,所述收发单元还用于:接收第一用户操作,所述第一用户操作用于选择投屏设备。
51、在一种可能的实现方式中,所述处理单元还用于:根据所述第一用户操作从所述可投屏设备中确定所述第二设备。
52、在一种可能的实现方式中,所述处理单元还用于:根据所述状态信息确定可投屏媒体内容,所述可投屏媒体内容为多个投屏内容中与所述第二设备支持的媒体类型匹配的投屏内容。
53、在一种可能的实现方式中,所述收发单元还用于:接收第二用户操作,所述第二用户操作用于选择投屏内容。
54、在一种可能的实现方式中,所述处理单元还用于:根据所述第二用户操作从所述可投屏媒体内容确定待投屏内容。
55、在一种可能的实现方式中,所述收发单元还用于:接收第三设备发送的待投屏媒体内容的uri。
56、在一种可能的实现方式中,所述收发单元还用于:接收所述第二设备发送的播放报文,所述播放报文用于指示播放待投屏媒体内容;与所述第二设备建立媒体传输通道;通过所述媒体传输通道向所述第二设备发送所述待投屏媒体内容。
57、在一种可能的实现方式中,所述收发单元还用于:对待投屏媒体内容进行压缩操作,所述压缩操作包括视频压缩、音频压缩或图片压缩中的至少一项。
58、第五方面,本技术实施例还提供一种投屏装置,该投屏装置包括:至少一个处理器,当所述至少一个处理器执行程序代码或指令时,实现上述第一方面或其任意可能的实现方式中所述的方法。
59、可选地,该投屏装置还可以包括至少一个存储器,该至少一个存储器用于存储该程序代码或指令。
60、第六方面,本技术实施例还提供一种芯片,包括:输入接口、输出接口、至少一个处理器。可选地,该芯片还包括存储器。该至少一个处理器用于执行该存储器中的代码,当该至少一个处理器执行该代码时,该芯片实现上述第一方面或其任意可能的实现方式中所述的方法。
61、可选地,上述芯片还可以为集成电路。
62、第七方面,本技术实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于实现上述第一方面或其任意可能的实现方式中所述的方法。
63、第八方面,本技术实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机实现上述第一方面或其任意可能的实现方式中所述的方法。
64、本实施例提供的投屏装置、计算机存储介质、计算机程序产品和芯片均用于执行上文所提供的方法,因此,其所能达到的有益效果可参考上文所提供的方法中的有益效果,此处不再赘述。
1.一种投屏方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述控制信息字段包括投屏指令字段,所述投屏指令字段包括待投屏媒体内容的uri。
3.根据权利要求1或2所述的方法,其特征在于,所述状态信息字段包括开关状态字段、投屏开关状态字段、视频能力字段、音频能力字段、播放媒体内容uri字段。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述第一报文还包括传输层信息,所述传输层信息用于指示所述第一报文的传输层为传输控制协议tcp、安全传输层协议tls、用户数据报协议udp或数据包传输层安全性协议dtls。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述第一报文还包括网络层信息,所述网络层信息用于指示所述第一报文的网络层为网际协议版本ipv4或ipv6。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述第一报文还包括数据链路层信息,所述数据链路层信息用于指示所述第一报文的数据链路层为电气与电子工程师协会ieee 802.11或802.3。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述第一报文还包括物理层信息,所述物理层信息用于指示所述第一报文的物理层为家庭无线保真wi-fi、以太网ethernet、蓝牙或紫蜂zigbee。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述方法还包括:
9.一种投屏方法,其特征在于,包括:
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
13.根据权利要求10至12中任一项所述的方法,其特征在于,所述方法还包括:
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
15.根据权利要求9至14中任一项所述的方法,其特征在于,所述方法还包括:
16.根据权利要求9至15中任一项所述的方法,其特征在于,所述方法还包括:
17.根据权利要求9至16中任一项所述的方法,其特征在于,所述方法还包括:
18.一种投屏装置,其特征在于,包括:接收单元和发送单元;
19.根据权利要求18所述的装置,其特征在于,所述控制信息字段包括投屏指令字段,所述投屏指令字段包括待投屏媒体内容的uri。
20.根据权利要求18或19所述的装置,其特征在于,所述状态信息字段包括开关状态字段、投屏开关状态字段、视频能力字段、音频能力字段、播放媒体内容uri字段。
21.根据权利要求18至20中任一项所述的装置,其特征在于,所述第一报文还包括传输层信息,所述传输层信息用于指示所述第一报文的传输层为tcp、tls、udp或dt ls。
22.根据权利要求18至21中任一项所述的装置,其特征在于,所述第一报文还包括网络层信息,所述网络层信息用于指示所述第一报文的网络层为ipv4或ipv6。
23.根据权利要求18至22中任一项所述的装置,其特征在于,所述第一报文还包括数据链路层信息,所述数据链路层信息用于指示所述第一报文的数据链路层为ieee 802.11或802.3。
24.根据权利要求18至23中任一项所述的装置,其特征在于,所述第一报文还包括物理层信息,所述物理层信息用于指示所述第一报文的物理层为wi-fi、ethernet、蓝牙或zigbee。
25.根据权利要求18至24中任一项所述的装置,其特征在于,所述接收单元还用于:
26.一种投屏装置,其特征在于,包括:收发单元;
27.根据权利要求26所述的装置,其特征在于,所述收发单元还用于:
28.根据权利要求27所述的装置,其特征在于,所述装置还包括:处理单元;
29.根据权利要求28所述的装置,其特征在于,所述收发单元还用于:
30.根据权利要求27至29中任一项所述的装置,其特征在于,所述处理单元还用于:
31.根据权利要求30所述的装置,其特征在于,所述收发单元还用于:
32.根据权利要求26至31中任一项所述的装置,其特征在于,所述收发单元还用于:
33.根据权利要求26至32中任一项所述的装置,其特征在于,所述收发单元还用于:
34.根据权利要求26至33中任一项所述的装置,其特征在于,所述收发单元还用于:
35.一种投屏装置,包括至少一个处理器和存储器,其特征在于,所述至少一个处理器执行存储在存储器中的程序或指令,以使得所述投屏装置实现上述权利要求1至17任一项所述的方法。
36.一种计算机可读存储介质,用于存储计算机程序,其特征在于,当所述计算机程序在计算机或处理器运行时,使得所述计算机或所述处理器实现上述权利要求1至17中任一项所述的方法。
37.一种计算机程序产品,所述计算机程序产品中包含指令,其特征在于,当所述指令在计算机或处理器上运行时,使得所述计算机或所述处理器实现上述权利要求1至17中任一项所述的方法。
