一种投屏的方法、装置及系统与流程

专利2022-05-09  2


本公开涉及云游戏技术领域,具体而言,涉及一种投屏的方法、装置及系统。



背景技术:

在云游戏解决方案中,游戏玩家在操控游戏运行过程中,如果需要将玩家终端上所呈现的游戏视频分享至已建连的其他终端设备(比如电视)上进行播放,则需要由玩家终端在游戏运行过程中执行屏幕画面采集和音频数据采集的操作,以及将采集的游戏画面数据和音频数据进行编码后以视频流的方式发送至上述其他终端设备,由该其他终端设备对接收到的视频流进行解码播放。

上述的投屏方式中,游戏在云端服务器上运行,玩家终端一方面要从云端服务器实时获取游戏视频流,另一方面要实时进行屏幕画面的采集和音频采集生成投放视频流,以及将在本地生成的投放视频流发送至其他终端设备,进而该方式中玩家终端需要同时具备良好的上行带宽和下行带宽,否则由于终端的上行带宽与下行带宽之间存在的冲突,会使得下行游戏画面传输不流畅,游戏出现卡顿,影响游戏玩家的游戏体验以及分享该游戏视频的终端设备的观众的观看体验。



技术实现要素:

有鉴于此,本公开提供一种投屏的方法、装置及系统,以实现玩家在玩云游戏的过程中能够将游戏视频分享至其他终端设备进行播放,并且不影响玩家的游戏体验。

具体地,本公开是通过如下技术方案实现的:

第一方面,本公开实施例中提供了一种投屏的方法,所述方法应用于第一终端设备,所述方法包括:

所述第一终端设备在检测到投屏开启后,判断当前所满足的投屏状态;

如果当前满足本地投屏状态,则按照以下第一方式进行投屏:

对本地所生成的画面数据和音频数据进行采集和编码,生成第一待投放视频流;

通过与待进行投屏的第二终端设备之间建立的第一数据传输通道,将所述第一待投放视频流推送至所述第二终端设备,以使所述第二终端设备对接收到的视频流进行解码播放;

如果当前满足云端投屏状态,则按照以下第二方式进行投屏:

触发目标云应用服务器生成第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备,以使所述第二终端设备对接收到的视频流进行解码播放;

其中,在所述云端投屏状态下,所述第一终端设备所播放的指定云应用视频流是从所述目标云应用服务器获取得到的。

可选地,所述方法,还包括:

在按照所述第一方式投屏过程中,若发生了由本地投屏状态切换至云端投屏状态的触发事件,则停止按照所述第一方式进行投屏的操作,切换至按照所述第二方式进行投屏的操作。

可选地,所述由本地投屏状态切换至云端投屏状态的触发事件,包括:

所述第一终端设备所请求启动的指定云应用在目标云应用服务器上启动成功。

可选地,所述方法,还包括:

在按照所述的第二方式投屏过程中,若发生了由云端投屏状态切换至本地投屏状态的触发事件,则停止按照所述第二方式进行投屏操作,切换至按照所述第一方式进行投屏操作。

可选地,所述由云端投屏状态切换至本地投屏状态的触发事件,包括:

所述第一终端设备所请求启动的指定云应用在所述目标云应用服务器上结束运行。

第二方面,本公开实施例提供了一种投屏的系统,所述系统包括:第一终端设备、第二终端设备和云应用服务器;

所述第一终端设备,用于在检测到投屏开启后,判断当前所满足的投屏状态;

如果当前满足本地投屏状态,则按照以下第一方式进行投屏:

对本地所生成的画面数据和音频数据进行采集和编码,生成第一待投放视频流;

通过与待进行投屏的第二终端设备之间建立的第一数据传输通道,将所述第一待投放视频流推送至所述第二终端设备;

如果当前满足云端投屏状态,则按照以下第二方式进行投屏:

触发目标云应用服务器生成第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备;

其中,在所述云端投屏状态下,所述第一终端设备所播放的指定云应用视频流是从所述目标云应用服务器获取得到的;

所述第二终端设备,用于对接收到的投放视频流进行解码播放;

所述云应用服务器用于响应于接收到的所述第一终端设备发送的指定云应用的启动请求,启动所述指定云应用,以及响应第一终端设备在云端投屏状态下的投屏触发操作生成该指定云应用的第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备。

可选地,所述第一终端设备,还用于:

在按照所述第一方式投屏过程中,若发生了由本地投屏状态切换至云端投屏状态的触发事件,则停止按照所述第一方式进行投屏的操作,切换至按照所述第二方式进行投屏的操作。

可选地,所述第一终端设备,还用于:

在按照所述的第二方式投屏过程中,若发生了由云端投屏状态切换至本地投屏状态的触发事件,则停止按照所述第二方式进行投屏操作,切换至按照所述第一方式进行投屏操作。

第三方面,本公开实施例提供了一种投屏的装置,所述装置应用于第一终端设备,所述装置,包括:

判断模块,用于在检测到投屏开启事件后,判断当前所满足的投屏状态;

第一投屏模块,用于如果当前满足本地投屏状态,则按照第一方式进行投屏:

对本地所生成的画面数据和音频数据进行采集和编码,生成第一待投放视频流;

通过与待进行投屏的第二终端设备之间建立的第一数据传输通道,将所述第一待投放视频流推送至所述第二终端设备,以使所述第二终端设备对接收到的视频流进行解码播放;

第二投屏模块,用于如果当前满足云端投屏状态,则按照第二方式进行投屏:

触发目标云应用服务器生成第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备,以使所述第二终端设备对接收到的视频流进行解码播放;

其中,在所述云端投屏状态下,所述第一终端设备所播放的指定云应用视频流是从所述目标云应用服务器获取得到的。

第四方面,本公开实施例提供了一种机器可读存储介质,机器可读存储介质上存储有若干计算机指令,计算机指令被执行时实现如第一方面所述的方法。

第五方面,本公开实施例提供了一种电子设备,包括:机器可读存储介质和处理器,机器可读存储介质:存储指令代码,处理器:与机器可读存储介质通信,读取和执行机器可读存储介质中的指令代码,实现如第一方面所述的方法。

本公开实施例中提供的一种投屏的方法、装置及系统,第一终端设备若检测到投屏开启后,则判断当前所满足的投屏状态;如果当前满足本地投屏状态,则对所生成的画面数据和音频数据进行采集和编码,生成第一待投放视频流;然后通过该第一终端设备与待进行投屏的第二终端设备之间建立的第一数据传输通道,将生成的第一待投放视频流推送至第二终端设备进行解码播放;如果当前满足云端投屏状态,此时第一终端设备所播放的指定云应用视频流从目标云应用服务器获取得到,则触发目标云应用服务器生成第二待投放视频流,并通过目标云应用服务器与第二终端设备之间建立的第二数据传输通道,将目标云应用服务器所生成的第二待投放视频流推送至第二终端设备进行解码播放;进而本实施例中,在第一终端设备所播放的画面是本地生成的状态下,在投屏时第一终端设备对在本地生成的游戏画面数据和音频数据进行采集和编码生成第一待投放视频流,将该第一待投放视频流发送至第二终端设备;如果第一终端设备所播放的画面来源于云应用服务器,则由云应用服务器生成第二待投放视频流,将该第二待投放视频流发送至第二终端设备进行解码播放,本公开相对于现有的投屏方式,对第一终端设备的带宽要求较低,并且降低了第一终端设备的功耗,能满足玩家的用户体验和投屏观看者的观看体验。

附图说明

图1是本公开一示例性实施例示出的一种投屏的方法的应用场景示意图;

图2是本公开一示例性实施例示出的一种投屏的方法的流程步骤示意图;

图3是本公开一示例性实施例示出的一种开启投屏的显示界面示意图;

图4是本公开一示例性实施例示出的一种客户端的门户界面示意图;

图5是本公开一示例性实施例示出的一种投屏的方法的流程示意图;

图6是本公开一示例性实施例示出的一种投屏的系统示意图;

图7是本公开一示例性实施例示出的一种投屏的装置的结构示意图;

图8是本公开一示例性实施例示出的一种电子设备的结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

云游戏是以云计算为基础的游戏实现方式,游戏应用运行于云应用服务器上,游戏的逻辑处理、画面渲染均由云应用服务器执行,云应用服务器将渲染生成的游戏画面和音频进行采集和编码,以实时视频流的方式通过网络发送至终端,由终端进行解码和播放,并且终端响应用户针对云游戏的控制操作生成操控指令,将该操控指令实时发送至云应用服务器进行响应。云游戏实现方式中,用户只需要拥有具有流媒体播放功能的设备和可获取控制操作的设备即可进行游戏。比如,该具有流媒体播放功能的设备可以是vr头盔、机顶盒等,该可获取控制操作的设备可以是vr头盔扳机、游戏手柄等,也可以是同时具有流媒体播放功能和可获取控制操作功能的设备,比如手机、平板电脑等设备。

在云游戏模式下,玩家在其终端设备上进行游戏操控,如果玩家想要将操控游戏运行生成的游戏视频流同时投放至其他终端设备上供其他用户观看,如果是采用通过玩家终端设备对屏幕当前显示图像的采集(比如截屏)和编码的方式得到待投放视频流,将该待投放视频流发送至其他终端设备进行解码播放的方式,由于玩家终端设备一方面需要从云应用服务器实时收流,同时需要将采集和编码得到的待投放视频流发送至其他终端设备,该方式对玩家终端设备的带宽要求较高,并且玩家终端的功耗较大,此时可能会导致玩家终端设备收流存在延时,进而云游戏出现卡顿,影响玩家的用户体验,另一方面也会影响投屏观看者的观看体验;基于此,本公开实施例提供了一种投屏方法、装置及系统。

图1是本公开一示例性实施例示出的一种投屏的方法的应用场景示意图;参照图1所示,本实施例中提供的一种投屏方法中,第一终端设备20上的客户端启动后,用户在客户端门户界面中选择指定应用并触发启动,第一终端设备20响应于用户针对指定云应用的启动触发操作,向云应用服务器10发送该指定云应用的启动请求,云应用服务器10启动该指定云应用;在指定云应用启动后,云应用服务器响应于第一终端设备20发送的该指定云应用的操控指令渲染生成应用画面和音频数据,云应用服务器对该应用画面和音频数据进行采集和编码,以实时视频流的方式发送至第一终端设备20,第一终端设备20接收该视频流后进行解码播放;并且第一终端设备20根据用户针对指定云应用的控制操作生成操控指令,将该操控指令发送至云应用服务器10,由云应用服务器10执行该指定云应用进程进行响应;本公开中,在第一终端设备20所安装的客户端启动后,在投屏状态下,针对于在第一终端设备本地生成的画面,由第一终端设备生成第一待投放视频流,将该第一待投放视频流推送至第二终端设备进行解码播放;针对于在云应用服务器10生成的视频流,在进行投屏时,由云端服务器生成第二待投放视频流发送至第二终端设备进行播放,进而实现将第一终端设备所播放的视频流分享至第二终端设备进行播放,降低了第一终端设备同时从云应用服务器收流和同时进行视频流投放的带宽压力和设备功耗,保证第一终端设备的用户体验和投屏效果。

本公开实施例中所提供的一种投屏的方法,能够实现从本地客户端启动、云应用在云端启动、云应用退出和客户端退出整个完整过程的投屏操作。

本公开实施例中,上述第一终端设备可以为头部显示器,该头部显示器设有外部输入设备比如扳机、手柄等,该头部显示器可以是一体机式虚拟现实头盔、连接手机端的虚拟现实头盔、连接台式计算机的虚拟现实头盔、混合现实头盔及增强现实头盔等,也可以是指具有处理功能的vr眼镜、具有处理功能的vr盒子,或者是诸如电脑、电视等具有全景视频播放功能的设备等等。也可以是其他任意能够用于处理和播放vr视频以及具有人机交互功能的任意设备。

本公开中,上述的第二终端设备可以为手机、机顶盒、电脑、平板电脑等设备;本领域技术人员应当清楚,当终端为机顶盒时,该终端可以与播放设备进行连接。

上述的云应用服务器可以是一台服务器,也可以是多个服务器组成的服务器集群;该服务器可以是物理服务器或者虚拟服务器。

本公开中上述第一终端设备与云应用服务器之间通过网络连接,上述第一终端设备与第二终端设备之间可以是通过有线的方式连接,比如usb线连接,hdmi传输线连接等,也可以是通过无线方式连接,比如wifi连接;本公开对此不做限定。

图2是本公开一示例性实施例示出的一种投屏的方法的流程步骤示意图;参照图2所示,本实施例中提供的一种投屏方法,应用于上述的第一终端设备,该方法包括如下步骤s201-s204:

s201、第一终端设备在检测到投屏开启后,判断当前所满足的投屏状态。

本实施例中,上述投屏开启的操作可以是由以下几种事件触发的:

用户通过操作第一终端设备上的某一实体键触发投屏开启;

或者在第一终端设备的客户端启动后的显示界面上,用户通过操作显示界面中的某一控件触发投屏开启等操作;

再或者用于操作第一终端设备执行某一特定的动作,比如甩屏触发投屏开启等待。

示例性地,参照图3中所示的实施例中,安装在第一终端设备的客户端启动后,用户可以在客户端门户界面中呼出状态栏300,该状态栏300中包含有投屏开启控件:开启同屏301,以及同屏状态(同屏成功/失败)提示信息。

示例性地,在开启投屏后,第一终端设备与第二终端设备之间建立连接。

第一终端设备在检测到投屏开启状态后,如果当前满足本地投屏状态,则按照以下第一方式的步骤s202-s203向已建立连接的第二终端设备进行投屏:

s202、对本地所生成的画面数据和音频数据进行采集和编码,生成第一待投放视频流。

s203、通过与待进行投屏的第二终端设备之间建立的第一数据传输通道,将所述第一待投放视频流推送至第二终端设备进。

图4是本公开一示例性实施例示出的一种客户端的门户界面示意图;参照图4所示,本实施例中,第一终端设备上客户端的门户界面中包含有各种应用的图标,比如,可以是本地游戏图标,即需要在本地安装和运行的游戏,该游戏的游戏画面是在本地渲染生成;也可以是云游戏图标。

在本地投屏状态下,第一终端设备所播放的应用画面是在本地渲染完成的;比如,在现有的云游戏模式中,在云游戏客户端启动至用户选择的指定云游戏在云应用服务器上启动之前,用户在客户端侧的操作响应包括门户显示和目标云游戏的选择等均是在本地执行,在对本地渲染生成的画面进行投放至第二终端设备时,第一终端设备通过对渲染生成的画面进行采集和编码生成第一待投放视频流。

示例性的,第一终端设备向第二终端设备发送第一待投放视频流的获取地址,第二客户端接收到该获取地址后向第一终端设备请求获取待投放视频流,第一终端设备接收到待投放视频流的获取请求后开始向第二终端设备推送第一待投放视频流。

本公开另一可能的实施例中,上述在本地投屏状态下,第一终端设备所播放的应用画面也包括在云端进行部分渲染后发送至第一终端设备,由第一终端设备最终渲染成完整画面的应用画面。

第一终端设备在检测到投屏开启状态后,如果当前满足云端投屏状态,则按照以下第二方式中的步骤s204进行投屏:

s204、触发目标云应用服务器生成第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备,以使所述第二终端设备对接收到的视频流进行解码播放;

其中,在所述云端投屏状态下,所述第一终端设备所播放的指定云应用视频流是从所述目标云应用服务器获取得到的。

示例性地,在开启投屏状态下,第一终端设备在用户所选择的指定应用启动成功后,通知启动该指定云应用的目标云应用服务器开启投屏编码,生成第二待播放视频流。第一终端设备向第二终端设备发送该目标云应用服务器上第二待投放视频流的获取地址,第二终端设备根据该第二待投放视频流的获取地址向目标云应用服务器请求获取第二待投放视频流。

本实施例中,上述第二待投放视频流可以是与第一终端设备所获取的播放视频流为同一路流;或者目标云应用服务器对渲染生成的应用画面进行采集和重新编码后生成固定参数的第二待投放视频流,该第二待投放视频流的码率低于第一终端设备所播放视频流的码率;再或者目标应用服务器根据第二终端设备的性能参数对渲染生成的应用画面进行采集和重新编码后生成适配第二终端设备的第二待投放视频流。

进而本公开实施例可以实现第一终端设备本地应用的投屏和云应用的投屏。本公开一可能的实施例中,上述方法,还包括如下步骤a10:

步骤a10、在按照所述第一方式投屏过程中,若发生了由本地投屏状态切换至云端投屏状态的触发事件,则停止按照所述第一方式进行投屏的操作,切换至按照所述第二方式进行投屏的操作。

可选地,上述第二终端设备根据第一终端设备与第二终端设备所播放视频流之间的同步状态和/或由按照第一方式进行投屏切换至按照第二方式进行投屏操作的切换过程所占用的时间,显示预加载画面。

可选地,上述由本地投屏状态切换至云端投屏状态的触发事件,包括:

所述第一终端设备所请求启动的指定云应用在目标云应用服务器上启动成功。

在指定云应用在目标云应用服务器上启动成功后,第一终端设备开始从目标云应用服务器上收流,此时第一终端设备的投屏的状态会从本地投屏状态切换至云端投屏状态。

本公开一可能的实施例中,上述方法,还包括如下步骤b10:

步骤b10、在按照所述第二方式投屏过程中,若发生了由云端投屏状态切换至本地投屏状态的触发事件,则停止按照所述第二方式进行投屏操作,切换至按照所述第一方式进行投屏操作。

可选地,上述由云端投屏状态切换至本地投屏状态的触发事件,包括:

所述第一终端设备所请求启动的指定云应用在所述目标云应用服务器上结束运行。

图5是本公开一示例性实施例示出的一种投屏的方法的流程示意图;参照图5所示的实施例,以vr头盔投屏至机顶盒为例,第一终端设备的客户端集成有投屏控制模块和流化apk(androidapplicationpackage,android应用程序包),在客户端启动后,如果是处于投屏开启的状态,则投屏控制模块启动应用画面的采集和编码,生成第一待投放视频流存储至缓存,并发送第一待投放视频流的获取地址至机顶盒,机顶盒根据该获取地址向投屏控制模块请求获取投放视频流,投屏控制模块向机顶盒推流;在流化apk检测到指定云应用在云应用服务器启动后,流化apk开始接收云应用服务器发送的目标云应用的视频流,流化apk通知投屏控制模块,投屏控制模块停止画面采集编码和推流工作,流化apk向机顶盒发送第二待投放视频流的获取地址,并通知云应用服务器生成第二待投放视频流,机顶盒根据该第二待投放视频流的获取地址向云应用服务器请求获取第二待投放视频流,云应用服务器向机顶盒进行第二待投放视频流的推流工作,在流化apk停止收流以后,继续通知投屏控制模块进行本地投屏,启动画面的采集和编码工作。

图6是本公开一示例性实施例示出的一种投屏的系统示意图;参照图6所示,该投屏的系统包括:第一终端设备10、第二终端设备20和云应用服务器30。

上述第一终端设备,用于在检测到投屏开启后,判断当前所满足的投屏状态;

如果当前满足本地投屏状态,则按照以下第一方式进行投屏:

对本地所生成的画面数据和音频数据进行采集和编码,生成第一待投放视频流;

通过与待进行投屏的第二终端设备之间建立的第一数据传输通道,将所述第一待投放视频流推送至所述第二终端设备;

如果当前满足云端投屏状态,则按照以下第二方式进行投屏:

触发目标云应用服务器生成第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备;

其中,在所述云端投屏状态下,所述第一终端设备所播放的指定云应用视频流是从所述目标云应用服务器获取得到的;

所述第二终端设备,用于对接收到的投放视频流进行解码播放;

所述云应用服务器用于响应于接收到的所述第一终端设备发送的指定云应用的启动请求,启动所述指定云应用,以及响应第一终端设备在云端投屏状态下的投屏触发操作生成该指定云应用的第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备。

本公开实施例中,上述的第二终端设备的数量可以是一个或者多个;在为多个的情况下,可以实现将第一终端设备上所呈现的视频流同时投送至多个终端设备进行显示。

本公开一可选的实施例这种,上述第一终端设备,还用于:在按照所述第一方式投屏过程中,若发生了由本地投屏状态切换至云端投屏状态的触发事件,则停止按照所述第一方式进行投屏的操作,切换至按照所述第二方式进行投屏的操作。

上述由本地投屏状态切换至云端投屏状态的触发事件,包括:第一终端设备所请求启动的指定云应用在目标云应用服务器上启动成功。

本公开一可选的实施例中,上述第一终端设备,还用于:在按照所述第二方式投屏过程中,若发生了由云端投屏状态切换至本地投屏状态的触发事件,则停止按照所述第二方式进行投屏操作,切换至按照所述第一方式进行投屏操作。

上述由云端投屏状态切换至本地投屏状态的触发事件,包括:第一终端设备所请求启动的指定云应用在所述目标云应用服务器上结束运行。

本公开实施例所提供的投屏的系统,按照上述方法实施例中所述的方案实现在第一终端设备上云游戏客户端启动后,将第一终端设备上所呈现的视频流同时投放至第二终端设备上进行播放。

图7是本公开一示例性实施例示出的一种投屏的装置的结构示意图;参照图7所示,该投屏的装置400应用于第一终端设备,该装置400,包括:

判断模块401,用于在检测到投屏开启后,判断当前所满足的投屏状态;

第一投屏模块402,用于如果当前满足本地投屏状态,则按照以下第一方式进行投屏:

对本地所生成的画面数据和音频数据进行采集和编码,生成第一待投放视频流;

通过与待进行投屏的第二终端设备之间建立的第一数据传输通道,将所述第一待投放视频流推送至所述第二终端设备,以使所述第二终端设备对接收到的视频流进行解码播放;

第二投屏模块403,用于如果当前满足云端投屏状态,则按照以下第二方式进行投屏:

触发目标云应用服务器生成第二待投放视频流,并通过与所述第二终端设备之间建立的第二数据传输通道,将所述第二待投放视频流推送至所述第二终端设备,以使所述第二终端设备对接收到的视频流进行解码播放;

其中,在所述云端投屏状态下,所述第一终端设备所播放的指定云应用视频流是从所述目标云应用服务器获取得到的。

可选地,上述装置400,还包括:

第一切换模块(图中未示出),用于在按照所述第一方式投屏过程中,若发生了由本地投屏状态切换至云端投屏状态的触发事件,则停止按照所述第一方式进行投屏的操作,切换至按照所述第二方式进行投屏的操作。

可选地,所述由本地投屏状态切换至云端投屏状态的触发事件,包括:

所述第一终端设备所请求启动的指定云应用在目标云应用服务器上启动成功。

可选地,上述装置400,还包括:

第二切换模块,用于在按照所述第二方式投屏过程中,若发生了由云端投屏状态切换至本地投屏状态的触发事件,则停止按照所述第二方式进行投屏操作,切换至按照所述第一方式进行投屏操作。

可选地,所述由云端投屏状态切换至本地投屏状态的触发事件,包括:

所述第一终端设备所请求启动的指定云应用在所述目标云应用服务器上结束运行。

本公开另一实施例中还提供了一种机器可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述的投屏方法的步骤。以实现在第一终端设备所播放的画面是本地生成的状态下,在投屏时第一终端设备对在本地生成的游戏画面数据和音频数据进行采集和编码生成第一待投放视频流,将该第一待投放视频流发送至第二终端设备;如果第一终端设备所播放的画面来源于云应用服务器,则由云应用服务器生成第二待投放视频流,将该第二待投放视频流发送至第二终端设备进行解码播放,本实施例相对于现有的投屏方式,对第一终端设备的带宽要求较低,并且降低了第一终端设备的功耗,能满足玩家的用户体验和投屏观看者的观看体验。

图7是本公开本公开实施例示出的一种电子设备的结构示意图。参照图7所示,该电子设备500,至少包括存储器(机器可读存储介质)502和处理器501;所述存储器502通过通信总线503和所述处理器501连接,用于存储所述处理器501可执行的指令代码;所述处理器501用于从所述存储器502读取和执行指令代码以实现上述任一实施例所述的投屏方法的步骤。以实现在第一终端设备所播放的画面是本地生成的状态下,在投屏时第一终端设备对在本地生成的游戏画面数据和音频数据进行采集和编码生成第一待投放视频流,将该第一待投放视频流发送至第二终端设备;如果第一终端设备所播放的画面来源于云应用服务器,则由云应用服务器生成第二待投放视频流,将该第二待投放视频流发送至第二终端设备进行解码播放,本实施例相对于现有的投屏方式,对第一终端设备的带宽要求较低,并且降低了第一终端设备的功耗,能满足玩家的用户体验和投屏观看者的观看体验。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(pda)、移动音频或视频播放器、游戏操纵台、全球定位系统(gps)接收机、或例如通用串行总线(usb)闪存驱动器的便携式存储设备,仅举几例。

适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如eprom、eeprom和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及cdrom和dvd-rom盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。

虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。

转载请注明原文地址: https://doc.8miu.com/read-150000.html

最新回复(0)