呈现预先录制的游戏进行视频用于游戏内玩家辅助的制作方法



1.本公开涉及用于呈现预先录制的游戏进行视频用于游戏内玩家辅助的系统和方法。


背景技术:



2.相关技术的描述
3.游戏行业的一个扩展领域是共享游戏进行视频和观看游戏进行。用户现在能够通过网站、社交媒体等记录和分享他们的游戏进行。此外,用户可以直播他们的游戏进行,以便其他人可以基本实时查看他们的游戏进行。
4.游戏行业当前的另一个趋势是向云游戏迈进。云游戏通过在可以保证视频游戏资源的数据中心中实现远程执行视频游戏,为最终用户提供了优势。远程执行的视频游戏生成的视频被流式传输到用户的设备,并且来自用户的输入被发送回数据中心。这使最终用户无需拥有特定硬件即可执行游戏本身。相反,最终用户只需要拥有足够的硬件来流式传输游戏进行,并且仍然可以享受高质量的游戏体验。此外,理论上,云游戏可以在任何有网络连接的地方进行游戏。
5.视频游戏行业的一个持续趋势是图形的复杂性和用以满足现代游戏引擎的需求的计算资源的可用性的提高。随着视频游戏的发展,它们的分辨率和帧速率不断提高,从而能够渲染非常逼真和详细的虚拟环境。此外,云游戏的受欢迎程度持续增长,向云执行视频游戏的转变使人们能够更好地获得高质量的游戏体验。
6.正是在这种背景下提出本公开的实施方案。


技术实现要素:



7.本公开的实施方式提供了用于呈现预先录制的游戏进行视频用于游戏内玩家辅助的系统和方法。
8.在一些实施方式中,提供了一种方法,包括以下操作:通过网络从执行视频游戏的各个会话的多个第一客户端设备接收在第一客户端设备处从视频游戏的各个会话生成的视频;对于每个视频,通过网络从第一客户端设备中的一个接收位置元数据,该位置元数据标识视频游戏的虚拟环境中的空间位置,在该空间位置发生视频描绘的游戏进行,该位置元数据与视频的视频帧相关并且标识给定视频帧所描绘的游戏进行的空间位置;在由第二客户端设备执行的视频游戏的会话期间,通过网络接收会话中发生的游戏进行的虚拟环境中的当前空间位置;使用当前空间位置选择视频中的一个或多个;通过网络在第二客户端设备处呈现所选视频。
9.在一些实施方式中,接收给定视频的位置元数据与通过网络接收给定视频基本上同时发生。
10.在一些实施方式中,给定视频和给定视频的位置元数据通过网络从生成给定视频的第一客户端设备同步流式传输。
11.在一些实施方式中,虚拟环境中的当前空间位置由虚拟环境中的虚拟角或虚拟对象的当前空间坐标定义。
12.在一些实施方式中,标识虚拟环境中的空间位置的位置元数据由虚拟环境中的虚拟角或虚拟对象随时间的空间坐标定义。
13.在一些实施方式中,位置元数据标识视频游戏的章节、关卡或场景。
14.在一些实施方式中,使用当前位置来选择视频中的一个或多个包括标识具有位置元数据的视频中的一个或多个,该位置元数据标识接近当前空间位置的空间位置。
15.在一些实施方式中,呈现所选视频包括显示所选视频的每个的预览图像。
16.在一些实施方式中,该方法还包括:接收针对回放所选视频中的一个的请求;响应于该针对回放的请求,将所选视频中的该一个流式传输到第二客户端设备。
17.在一些实施方式中,提供了一种非暂时性计算机可读介质,其上体现有程序指令,所述程序指令在由至少一个计算设备执行时使得所述至少一个计算设备执行方法,该方法包括以下操作:通过网络从执行视频游戏的各个会话的多个第一客户端设备接收在第一客户端设备处从视频游戏的各个会话生成的视频;对于每个视频,通过网络从第一客户端设备中的一个接收位置元数据,该位置元数据标识视频游戏的虚拟环境中的空间位置,在该空间位置发生视频描绘的游戏进行,该位置元数据与视频的视频帧相关并且标识给定视频帧所描绘的游戏进行的空间位置;在由第二客户端设备执行的视频游戏的会话期间,通过网络接收会话中发生的游戏进行的虚拟环境中的当前空间位置;使用当前空间位置选择视频中的一个或多个;通过网络在第二客户端设备处呈现所选视频。
18.通过结合附图以示例方式示出本公开原理进行的以下详细描述,本公开的其他方面和优点将变得显而易见。
附图说明
19.通过参考结合附图进行的以下描述可以最好地理解本公开及其另外的优点。
20.图1概念性地示出了根据本公开的实施方式的用于广播视频游戏的游戏进行视频以及存储和分析所述游戏进行视频以结合视频游戏的游戏进行进行回放的系统。
21.图2概念性地示出了根据本公开的实施方式的用于使用游戏进行视频流和相关联的元数据来生成有用信息并向玩家和游戏开发者提供新颖特征的过程。
22.图3概念性地示出了根据本公开的实施方式的与用户当前游戏进行相关的各种游戏进行视频。
23.图4概念性地示出了根据本公开的实施方式的虚拟环境中游戏进行视频的各种相交路径。
24.图5概念性地示出了根据本公开的实施方式的在虚拟环境中面向不同方向的用户,以及作为结果呈现的不同游戏进行视频。
25.图6概念性地示出了根据本公开的实施方式的基于用户的游戏进行路径的游戏进行视频的选择。
26.图7概念性地示出了根据本公开的实施方式在回放视频中使用控制器输入时间序列。
27.图8a示出了根据本公开的实施方式的用于载入经由云游戏站点可获得的游戏的
游戏文件的示例性系统。
28.图8b是概念性地示出根据本公开的实施方式的为将云视频游戏流式传输到客户端设备而执行的各种操作的流程图。
29.图9示出了根据本公开的实施方式的信息服务提供商架构的实施方案。
具体实施方式
30.在下列描述中,陈述了许多具体的细节以提供对本公开的深入理解。然而,对于本领域的技术人员将显而易见的是,可以在没有一些或所有这些具体细节的情况下实践本公开。在其他情况下,未详细描述众所周知的过程步骤,以免模糊本公开。
31.目前,玩家可以录制和分享他们的游戏进行视频,或者广播这些视频。流媒体服务使用户能够通过互联网直播他们的游戏进行视频,观众能够通过网站、游戏平台、移动应用或其他类型的内容平台访问和观看其他用户的游戏进行视频。但是,此类视频不提供有关正在玩的游戏的关卡、章节或部分的任何信息。这些视频可能对其他人有所帮助,因为它们提供有关游戏的通关或教程。然而,对于现有系统,需要以某种方式手动提供对此类视频进行编目所需的信息。也就是说,有人需要手动观看视频并确定用户在游戏中的哪个位置玩。即便如此,更具体的信息诸如给定玩家在虚拟环境中的确切坐标位置仍然未知。
32.事实上,游戏开发者或发行商当前面临的一个问题是,他们希望以高效的方式向用户提供帮助视频,但目前还做不到。就生成帮助视频而言,它们是通过非常手动的资源密集型过程生成的。此外,它们仅针对它们认为适合覆盖的游戏区域生成,并且可能不会覆盖许多用户实际难以玩的游戏区域。它们也限于它们选择产生的特定帮助视频,因此不会涵盖更广泛的用户将生成的游戏进行的许多不同风格或方法。
33.为了解决这些问题,本公开的实施方式提供了系统和方法,其中相关元数据被添加到游戏进行广播流中,使得可以使用游戏进行的知识来智能地收集各种游戏进行视频,例如哪个章节、关卡、(x,y,z)坐标等。例如,使用这些信息,系统可以智能地编目游戏进行视频,并创建地图或通关给定关卡。如果玩家在游戏的某个区域遇到问题,那么系统可以将玩家引导到之前录制的游戏同一区域的视频。
34.通过这种方式,收集广播或共享的所有通关的数据,并且游戏辅助的可用性不取决于游戏内容创建者是否标记了特定区域以制作附加文档,诸如帮助视频。如果有人在某个区域玩游戏,那么该区域就会有视频内容可供观看。
35.图1概念性地示出了根据本公开的实施方式的用于广播视频游戏的游戏进行视频以及存储和分析所述游戏进行视频以结合视频游戏的游戏进行进行回放的系统。在说明性实施方式中,用户100参与由客户端设备102执行的视频游戏106的游戏进行。应当理解,客户端设备102可以是能够执行视频游戏用于游戏进行的任何类型的计算设备,诸如游戏控制台、个人计算机、膝上型计算机、平板计算机、手机、移动设备等。从正在执行的视频游戏106生成的游戏进行视频115由客户端设备102渲染以呈现在显示器114上。在一些实施方式中,显示器114是与客户端设备分离的设备,诸如电视、监视器、头戴式显示器等。在一些实施方式中,显示器114与客户端设备102集成。应当理解,显示器114可以采用各种电子显示技术中的任何一种,诸如lcd、led、oled、amoled、qled、等离子等。
36.为了在本公开中便于描述,除非另有说明或从描述中显而易见,否则本公开中的“视频”或“游戏进行视频”可以包括或指代用于描绘视频游戏的图像和声音的运动图像数据和音频数据两者。
37.在一些实施方式中,游戏进行视频115通过网络122流式传输或广播(直播)以供其他用户观看。在说明性实施方式中,对游戏进行视频进行编码的视频流118通过网络122从客户端设备102传输到游戏进行处理系统124,更具体地,传输到游戏进行处理系统124中包括的广播服务器126。广播服务器126可以进一步处理视频流118并且广播实况游戏进行视频128a以供诸如用户130的其他用户观看,他们可以通过设备132观看游戏进行视频。在一些实施方式中,广播服务器126提供网站,通过该网站游戏进行视频可以直播并由观众访问。在一些实施方式中,广播服务器126被配置为通过专用接口提供这样的游戏进行视频,诸如通过专用游戏控制台的游戏平台、移动设备上的应用、视频共享站点、社交网络服务等。
38.广播服务器126为观众提供访问以观看其他游戏进行视频,诸如游戏进行视频128b,其可以是直播的或先前记录的游戏进行视频。此外,广播服务器126将游戏进行视频存储到视频存储设备134。
39.根据本公开的实施方式,来自视频游戏106的元数据120也与视频流118一起被流式传输。元数据120与由视频流118定义的游戏进行视频的时间序列或视频帧相关(或链接,或在一些实施方式中同步)。元数据120包括关于在游戏进行视频中发生的游戏进行的信息,诸如正在进行的关卡或章节、游戏进行的空间位置(诸如给定虚拟对象或角的空间位置)、游戏进行中的事件或动作等。应当理解,元数据与游戏进行视频的时间序列的相关性使得元数据能够用于了解在游戏进行视频中的每个特定时刻正在发生什么以及在哪里(时间上或空间上)发生事件。
40.在一些实施方式中,元数据通过视频游戏106的api 108来访问。在一些实施方式中,元数据由在客户端设备102的操作系统110上执行的应用112获得。在一些实施方式中,应用112是操作系统110的服务。在一些实施方式中,元数据120通过单独的数据信道流式传输到游戏进行处理系统124。而在其他实施方式中,元数据嵌入在视频流本身中,因为某些视频格式提供了额外的字段,这些字段可以被启用和用于元数据的传输。
41.如所指出的,广播服务器126被包括作为游戏进行处理系统124的一部分。视频流和元数据通过网络122传输到游戏进行处理系统124,并且在一些实施方式中,更具体地传输到广播服务器126。元数据120被存储到元数据存储设备136。
42.分析器138被配置为分析游戏进行视频及其对应的元数据。这样做时,分析器138可以为给定的游戏进行视频生成附加元数据,该元数据可以进一步表征游戏进行视频或提供关于游戏进行视频的附加信息,这又可以用于基于此类特性或信息启用游戏进行视频的过滤和搜索。在一些实施方式中,分析器138可以使用机器学习或人工智能过程来分析游戏进行视频及其相关联的元数据,以实现对给定游戏进行视频中正在发生的事情的更深入理解。
43.视频搜索服务器140被配置为公开搜索能力以使观看者/玩家查看存储的游戏进行视频。对游戏进行视频的搜索可以基于多种因素过滤或排名游戏进行视频,例如流行度、观看次数、订阅者、作者与观看者在社交网络/图中的关系(例如,优先考虑社交网络上用户好友列表中的视频)、播放速度等。
44.在一些实施方式中,为了向玩视频游戏的用户提供帮助或辅助的目的而搜索并呈现游戏进行视频。例如,客户端设备102的应用112可以被配置为访问视频搜索服务器140以获得与用户当前的视频游戏106的游戏进行相关的游戏进行视频。这方面的一个示例是提供游戏进行视频,该视频以来自与用户当前所在位置相同或相似的位置的游戏进行为特。例如但不限于,应用112可以获取用户在视频游戏中的当前位置(例如用户控制的虚拟角在视频游戏的虚拟环境中的位置),并使用该位置来访问视频搜索服务器142以搜索示出来自相同位置或接近用户位置的游戏进行的视频。以这种方式,系统可以向用户100提供内容,该内容定位于用户在视频游戏中所处的位置。
45.应当理解,虽然视频游戏中的位置可以被理解为视频游戏的虚拟环境中的空间位置,但是为了本公开的目的,视频游戏中的位置也可以是视频游戏背景中的时间位置或进度或故事情节位置。例如,视频游戏可能需要执行一系列任务或成就以供用户在视频游戏中取得进度。因此,这些任务的完成可以用来定义用户在视频游戏中取得的进度量。这样的进度也可以与视频游戏的故事情节中具体定义的关卡、章节、场景或其他片段相关。可以理解,这些种类的进度指示器中的任何一种都可以用来定义用户在视频游戏中的位置,如上所述,它可以用来提供定位到用户的内容。
46.在一些实施方式中,视频搜索的结果可以呈现给游戏中的用户。例如,在一些实施方式中,用户100可以暂停他们的游戏进行并请求观看相关的游戏进行视频,这可能是为了帮助用户他们的游戏进行,或者只是为了使用户能够查看正在游戏中的相同或相似位置处玩的其他用户的替代通关。在说明性实施方式中,如上所述执行搜索,并且在屏幕上显示所得到的相关游戏进行视频116a、116b和116c。在一些实施方式中,应用112被配置为在游戏屏幕上渲染覆盖物(例如仪表板)以呈现游戏进行视频结果,在一些实施方式中其可以包括得到的视频的预览图像。用户100可以选择视频116a、116b或116c中的一个(例如,选择视频的预览图像)以启动所选视频的回放。
47.虽然已将视频游戏的执行描述为发生在客户端设备102处,但应当理解,在其他实施方式中,视频游戏可以是云执行的。也就是说,视频游戏可以通过云游戏服务器/计算机来执行,游戏进行通过网络流式传输到客户端设备。因此,如上所述的客户端设备的其他功能可以云执行,诸如应用112的功能。
48.图2概念性地示出了根据本公开的实施方式的用于使用游戏进行视频流和相关联的元数据来生成有用信息并向玩家和游戏开发者提供新颖特征的过程。在说明性实施方式的左侧显示的是从正在执行的视频游戏生成的各种信息,包括视频流时间序列200、进度元数据202、事件元数据204、坐标向量时间序列206和控制器输入时间序列208。视频流时间序列200由具有标识游戏进行视频的视频帧的时序和序列的信息的流式传输的游戏进行视频组成,这使得与游戏进行视频相关的元数据或其他信息能够与游戏进行视频中的特定时间点或视频帧相关。在一些实施方式中,视频流时间序列200包括给定游戏进行视频中的视频帧的时间码或序列编号。
49.进度元数据202包括标识在给定游戏进行视频所示的游戏进行的给定时刻已经实现的视频游戏中的进度量的信息。例如但不限于,进度元数据202可以包括诸如关卡、章节、场景、部分、片段或正在玩视频游戏的故事情节中的哪个部分的其他标识符之类的信息。在一些实施方式中,进度元数据202可以包括来自游戏保存快照的数据,诸如来自游戏进行期
间发生的自动保存的数据。在一些实施方式中,进度元数据202可以包括其他进度指示符,诸如生或死结果。事件数据204包括标识在游戏进行期间发生的特定事件的信息。应当理解,这样的事件可以包括可能在视频游戏的背景中发生的各种事件或动作中的任何一个,诸如各种任务、成就、成果、获取虚拟对象、杀死敌人、玩家死亡、技能发展、移动、连击等。
50.坐标向量时间序列206包括在游戏进行期间时时刻刻标识用户在视频游戏的虚拟环境中的空间位置和方向的信息。这可以通过例如三维虚拟空间中的3d坐标以及例如由用户控制的虚拟角或对象在虚拟空间中的向量方向来定义。向量方向可以标识虚拟角或对象在虚拟空间中面对或移动的方向,并且可以进一步标识这种移动的速率或速度。控制器输入时间序列208包括标识馈送到视频游戏的控制器输入或命令的信息,这些输入或命令是在视频游戏的游戏进行期间通过用户交互生成的。
51.应当理解,由于视频流时间序列200、进度元数据202、事件元数据204、坐标向量时间序列206和控制器输入时间序列208中的每一个都与时序和/或游戏进行视频的视频帧相关,所以可以利用此信息来确定和分析游戏进行视频在游戏进行的每一帧或每一时刻发生的情况。分析过程210被配置为分析前述信息以确定各种信息并提供如当前描述的各种特征。
52.在一些实施方式中,分析过程210包括使用收集的数据构建游戏场地地图的时空(或时间空间)识别过程。例如,时空识别过程可以使用视频流时间序列200和坐标向量时间序列206来拼贴游戏世界地图,从而构建游戏场地的游戏内视图。这可能特别有用,因为空间识别可用于在没有游戏代码先验知识的情况下重建旧有或第三方游戏世界。在一些实施方式中,时空识别过程将游戏虚拟环境的特定视图映射到所述虚拟环境内的特定位置和观看方向(或视角)。在一些实施方式中,时空识别过程能够生成3d游戏场地地图,例如基于给定3d空间的所提供视图利用摄影测量类型技术或其他类型的3d映射技术生成。也就是说,该过程可以通过分析游戏进行视频的图像帧的内容并使用标识图像帧被渲染的视角的坐标向量时间序列来确定视频游戏虚拟环境的3d几何形状。
53.此外,分析过程210可以被配置为使用所提供的信息来分析玩家行为。例如但不限于,分析过程可以确定游戏的虚拟环境内的位置的空间流行度214。分析过程210可以随着时间分析来自许多用户的游戏进行视频,并且确定和跟踪访问虚拟环境的不同区域的用户的数量。通过这种方式,可以确定特定游戏区域的流行度。此类信息对于游戏玩家行为分析以及将与游戏相关的工作集中在热门区域非常有价值。例如,可以将热门区域定位为游戏内广告投放、集中开发工作(例如艺术家时间)、广播等。类似地,可以标识游戏中不太受欢迎的区域并进行改进,以增加他们的流行度。
54.在一些实施方式中,分析过程210可以被配置成为了游戏场地地图生成视觉标签216。举例来说,视觉标签可以是从游戏进行视频生成的缩略图或甚至是游戏进行视频剪辑,它们与游戏场地地图内的特定位置相关联。这样,查看游戏场地地图的用户可以看到来自游戏特定区域的图像。
55.如已经描述的,在一些实施方式中,分析过程210可以进一步启用游戏进行视频搜索和过滤(附图标记218),例如以提供通关视频以辅助玩家。
56.此外,分析过程210可以被配置为分析和确定玩家行为220。例如,可以分析给定的游戏进行视频以确定生成游戏进行视频的玩家的技能水平。由于玩家的技能水平可以与他
们的游戏进行视频相关联,因此技能水平可以用于过滤其他用户的游戏进行视频。例如,可以确定当前正在玩的用户的技能水平,然后可以将来自相似技能水平的玩家的视频提供给用户。作为玩家行为的另一个示例,可以标识在特定时间或空间位置的特定玩家动作。可以标识导致成功结果的动作与导致不成功结果的动作。此类信息可用于向玩家提供提示。
57.图3概念性地示出了根据本公开的实施方式的与用户当前游戏进行相关的各种游戏进行视频。附图标记300所示的条概念性地示出了用户在视频游戏的游戏进行期间的进度。沿着条从左向右移动代表用户在视频游戏的游戏进行的背景中的进度。可以理解,进度可以涉及故事情节的时间穿越、虚拟环境的空间穿越、和/或定义视频游戏的背景中的进度的其他类型的穿越。各种先前记录的游戏进行视频302、304和306也概念性地被显示和表示为条。应当理解,用户的游戏进行300和各种游戏进行视频302、304和306的竖直对齐的部分指示相似或相同的进度状态。
58.因此,在所示实施方式中,当用户的游戏进行已经推进到给定的进度状态308时,则这对应于游戏进行视频302中的时间点303以及游戏进行视频304中的时间点305,它们是各自游戏进行视频中达到同等进度状态或相似进度状态的时间点。例如,进度状态308可以由虚拟环境中的空间位置来定义,在这种情况下,游戏进行视频302和304的时间点303和305分别表示游戏进行视频中在相同空间位置处发生游戏进行的时间点。同样作为示例,进度状态308可以由视频游戏的故事情节背景中的时间位置或成就水平来定义,在这种情况下,游戏进行视频302和304的时间点303和305分别表示游戏进行视频中游戏进行获得故事情节背景内的相同或相似时间位置或成就水平的时间点。
59.如所指出的,系统可以提供这样的游戏进行视频以提供帮助视频以辅助用户进行他们的游戏进行。因此,当提供视频时,可以将回放配置为在对应于与用户的进度状态相同或相似的进度状态的时间点处开始。在这种情况下,回放将在游戏进行视频302中的时间点303或游戏进行视频304中的时间点305开始,从而在视频中向前跳到用于用户的相关部分。在一些实施方式中,我们可以将回放配置为在稍早于与用户的进度状态匹配的时间点(例如,预定义的量,诸如几秒之前)开始,以便在观看视频时为用户提供更早的背景。
60.如上所述,可以基于与用户当前进度的对应关系来搜索和过滤帮助视频。因此,在所示实施方式中,当用户的游戏进行300处于进度状态308时,游戏进行视频302和304可以作为帮助视频提供,而游戏进行视频306在进度方面不与进度状态308重叠,不作为帮助视频提供。然而,当用户的游戏进行300已经前进到进度状态310时,游戏进行视频306可以作为帮助视频提供,而游戏进行视频302将不被提供。
61.可用于搜索和过滤游戏进行视频以呈现给用户的另一个方面是游戏进行视频在相关时间点启动时的剩余时间量。继续参考图3所示的实施方式,当用户的游戏进行300处于进度状态308时,如果游戏进行视频302的回放在时间点303开始,那么在游戏进行视频302中有剩余的量312(时间或进度的量)。然而,如果游戏进行视频304的回放在时间点305开始,那么在游戏进行视频304中有剩余的量314。在一些实施方式中,当游戏进行在相关时间点开始时,剩余的时间量可用于过滤或优先化游戏进行视频以呈现给用户。因此,举例来说,游戏进行视频304可以优先于游戏进行视频302作为帮助视频,因为游戏进行视频304中剩余的量314大于游戏进行视频302中剩余的量312,因此,如果选择游戏进行视频304,能够使用户享受更长的回放。在一些实施方式中,如果游戏进行视频中剩余的量小于预定义的
量,则这样的游戏进行视频不会出现或呈现给用户,因为观看持续时间太短的视频部分不太可能有助于用户。
62.类似地,当用户的游戏进行已经推进到进度状态310时,如果游戏进行视频304的回放在时间点307开始,那么还有游戏进行视频的剩余量316要观看。然而,如果游戏进行视频306的回放在时间点309开始,则有剩余量318要观看,其远大于量316。因此,在一些实施方式中,游戏进行视频306优先于游戏进行视频304观看。
63.图4概念性地示出了根据本公开的实施方式的虚拟环境中游戏进行视频的各种相交路径。在视频游戏的游戏进行过程中,用户可能位于虚拟环境400中的位置p0处。在一些实施方式中,位置p0由虚拟环境400中的三维空间位置定义,其可以进一步由三维坐标(x0,y0,z0)标识。当位于位置p0时,先前记录的游戏进行视频v1、v2和v3可以呈现给用户,如已经描述的。这些游戏进行视频已从大部分现有录制的游戏进行视频中选择,因为它们是游戏进行发生在与视频中某个点的位置p0相同或接近位置的视频。
64.可以理解,视频游戏的玩家可以采用穿过虚拟环境400的不同路径,因此不同的游戏进行视频将显示穿越通过虚拟环境的不同路径。如说明性实施方式中所示,由游戏进行视频v1捕获的游戏进行在虚拟环境400中走过路径402。同样地,由游戏进行视频v2捕获的游戏进行走过路径404,而由游戏进行视频v3捕获的游戏进行走过路径406。这些游戏进行视频表示在位置p0处相交的游戏进行,或者与虚拟环境400中靠近位置p0的区域408相交的游戏进行。游戏进行视频v1、v2和v3已经基于它们具有与位置p0或邻近区域408相交的游戏进行而从现有游戏进行视频中被过滤。
65.当用户移动到具有3d坐标(x1,y1,z1)的新位置p1时,则基于用户的更新位置将一组不同的游戏进行视频呈现给用户。在说明性实施方式中,选择游戏进行视频v4、v5和v6以呈现给用户。由游戏进行视频v4、v5和v6捕获的游戏进行分别沿着在虚拟环境400中走过的路径410、412和414发生。这些路径与位置p1或在邻近或接近位置p1的区域416相交。
66.在当前描述的实施方式中,应当理解,基于在游戏进行视频内捕获的游戏进行所走过的位置和路径过滤和选择游戏进行视频以呈现给用户。如已经描述的,通过传输描述游戏进行视频中时刻发生游戏进行的位置的元数据,使得这种过滤和选择成为可能。因此,随着用户移动到虚拟环境400内的各个位置,呈现给用户的游戏进行视频是基于用户的当前位置动态过滤/打乱并进行更新。这可以提供一个动态的帮助/提示系统,其利用用户提供的现有游戏进行视频,并以与玩家当前游戏进行相关的方式向玩家提供这些视频。
67.值得注意的是,游戏进行视频并不是专门为了提供帮助/辅助视频的目的而提供的。然而,通过将其他人的此类回放映射到他们的视频游戏的对应空间/时间位置,它们可用于在视频游戏的类似进度点演示其他人的游戏进行以提供辅助。
68.在一些实施方式中,游戏进行视频可以跨多个视频拼接在一起,例如,以从正在玩游戏的用户生成的内容创建关卡试验。当用户只是在玩游戏时,通过收集与游戏进行视频相关的元数据,就可能确定在给定的游戏进行视频中正在显示什么以及正在发生什么,并智能地提供对其内容的访问。
69.图5概念性地示出了根据本公开的实施方式的在虚拟环境中面向不同方向的用户,以及作为结果呈现的不同游戏进行视频。在说明性实施方式中,视频游戏的虚拟环境500的用户视图由用户控制的虚拟角502的视图表示。在一些实施方式中,当用户朝不同
方向看时,可能会呈现不同的游戏进行视频。例如,当用户面向方向504时,向用户建议游戏进行视频v7,而当用户面向方向506时,建议游戏进行视频v8,而当用户面向方向508时,建议游戏进行视频v9。这些不同的游戏进行视频可以表示在视频游戏的虚拟环境500中反向工作的不同路径。因此,当用户朝给定方向看时,会呈现显示了在虚拟环境中沿该方向的路径走的玩家的游戏进行的游戏进行视频。
70.在一些实施方式中,当在用户视图中面临多个选项/路径,系统可以呈现与每个选项对应的视频。举例来说,用户可能面临不同的走廊以供选择,系统可以提取玩家走过每个走廊的视频。如所指出的,在一些实施方式中,根据用户面向的方向来呈现不同的视频,因此根据用户面向的走廊之一来显示不同的游戏进行视频。
71.图6概念性地示出了根据本公开的实施方式的基于用户的游戏进行路径的游戏进行视频的选择。在所示实施方式中,用户的游戏进行走过虚拟环境600,从位置p3移动到p4到p5到p6到p7。应当理解,在一些实施方式中,这些位置可以是虚拟空间中的空间位置。在其他实施方式中,位置可以是视频游戏背景内的逻辑位置,表示在指导游戏进行事件时的选择或其他类型的用户控制动作。当用户从位置p3走过虚拟环境600到位置p7时,用户的游戏进行定义了路径602。
72.在一些实施方式中,可以基于用户在视频游戏中走过的路径为用户过滤或选择游戏进行视频。更具体地,可以优先考虑或选择其中先前玩家所采用的游戏进行路径与当前用户所采用的当前路径相似的游戏进行视频以呈现给用户。在所示实施方式中,当用户已经到达位置p7时,视频v
10
、v
11
和v
12
已经至少部分地基于在那些游戏进行视频内走过的游戏进行路径而从可用的游戏进行视频中选择。因此,系统可以显示遵循类似路径或走过相同或类似位置的其他用户的视频。以这种方式,系统可以显示更接近当前用户的风格的其他用户的游戏进行。
73.在各种实施方式中,从表现出与当前正在玩的用户相似的风格的玩家中寻游戏进行视频的概念可以扩展为涵盖可以从与游戏进行视频相关的元数据确定的任何方面。例如但不限于,游戏进行的这些方面可以包括玩家采取的动作的顺序和种类、事件的顺序、移动的类型和执行的移动的模式、技能水平、控制器输入等。在一些实施方式中,可以确定当前用户的游戏进行与之前用户的游戏进行视频的相似度,并且可以利用相似度来选择或过滤游戏进行视频以呈现给当前用户。虽然已经讨论了过滤游戏进行视频以显示具有相似风格的其他玩家,但优先考虑与当前用户表现出不同风格的玩家的视频也可能是有益的,以便向当前用户展示其他游戏风格并帮助他们通过尝试不同的动作或游戏风格来提高他们的技能水平。
74.图7概念性地示出了根据本公开的实施方式在回放视频中使用控制器输入时间序列。在说明性实施方式中,玩家700在如附图标记704所示渲染的视频游戏的游戏进行过程中操作控制器设备702。如上所述,这样的游戏进行视频可以与对应的元数据一起存储。在一些实施方式中,从控制器设备702生成的控制器输入(例如按钮按压、操纵杆操纵等)可以构成映射到游戏进行视频的对应元数据的一部分。
75.当游戏进行视频被呈现给另一用户时,如附图标记706所示,游戏进行视频可以被进一步配置为包括显示原始玩家700的控制器输入的部分708,诸如覆盖物。即,玩家700对控制器设备702的操作产生的输入的指示符可以显示在部分708中,使得观看用户,诸如使
用游戏进行视频706作为帮助视频的当前玩家,也可以看到由玩家700输入的特定控制器输入。以这种方式,观看用户不仅能够看到在游戏进行视频706中发生的动作,而且还能够看到产生这些动作的控制器输入。在一些实施方式中,部分708中的控制器输入的显示被配置为向上或向下或左右滚动,显示与游戏进行视频的回放同步的控制器输入的原始序列。
76.在一些实施方式中,玩家输入可用于过滤。例如,显示高技能玩家的低技能玩家视频可能没有帮助,因为低技能玩家可能无法执行相同类型的输入/操纵.因此,与游戏进行视频相关联的玩家输入可用于过滤游戏进行视频。在一些实施方式中,可以利用机器学习过程来分析玩家输入并确定用户技能水平。因此,用户输入可以用于对玩家视频的技能水平进行排名,并且可以对活跃用户执行相同的操作。使用此信息,可以将适当的技能水平视频馈送给用户。
77.在一些实施方式中,可以在元数据中提供其他类型的信息,诸如可用于优先考虑游戏进行视频的关卡/章节、成功指示符、死亡、检查点等。例如,显示玩家在相对较短的时间内反复死亡的游戏进行视频可能不如观看更成功的视频(其中玩家在不死的情况下前进)有用。因此,在给定时间量内玩家死亡的数量可以用作优先考虑视频的因素。
78.在一些实施方式中,机器学习可以用于评估成功的玩家做了什么或拥有什么。例如,系统可以基于分析各种视频及其元数据来确定一个人应该拥有金钥匙。并且这些学习可以作为提示显示给用户,例如显示一条消息,表明此时大多数/全部成功的玩家拥有金钥匙才能继续。
79.在一些实施方式中,开发者可以提供适用于任何视频的提示的主时间线,以便当用户观看给定视频时显示这些提示。
80.在一些实施方式中,游戏进行视频可以显示在与当前游戏进行发生的设备分离的设备上,诸如通过移动设备或其他设备上的配套应用。
81.本公开的实施方式可被包括作为游戏引擎的一部分。广义地讲,游戏引擎是提供实现视频游戏的有效开发的特征的软件开发框架。游戏引擎可以包括具有可重用模块的软件库,以处理游戏功能的各个方面,包括例如但不限于图形渲染(例如,包括顶点处理、多边形处理、着、光照、纹理等)、声音、物理(包括碰撞处理)、动画、脚本化、人工智能、联网、流式传输、存储器管理、线程化、本地化支持、场景图、电影制作术等。
82.游戏引擎可以针对不同的硬件平台进行优化,诸如游戏控制台、移动设备、个人计算机等。例如但不限于,游戏引擎可以根据平台优化存储器使用(例如,如何优先考虑图形流水线中的各项任务等)。在一些实施方式中,硬件可以是某一特定处理实体的刀片版本,诸如游戏控制台。因此,可以将用户分配给特定的刀片,该刀片提供与控制台游戏已优化的相同硬件。
83.可以理解,还可以有游戏服务器逻辑来提供流式传输和/或其他服务(打包、编码、服务质量(qos)监控、带宽测试、访问社交网络/朋友等)
84.在一些实施方式中,云基础设施可以运行管理程序,其抽象化硬件并提供虚拟机框架,操作系统(os)可以在该虚拟机框架上加载。因此,堆栈可以包括在os上运行的应用/视频游戏,该os加载在由管理程序实例化的虚拟机(vm)上,该管理程序加载在底层硬件上。以这种方式,应用的执行不必耦合到特定硬件。
85.在一些实施方式中,应用/视频游戏可以在一个容器上执行,该容器在应用层进行
抽象化,将代码和依赖项打包在一起,从而实现与os或硬件平台无关的软件开发,并促进软件跨平台的可移植性。
86.在一些实施方式中,采用分布式游戏引擎,其中游戏引擎的不同部分可以由不同的计算实体处理。例如,游戏引擎的功能诸如物理引擎、渲染引擎(2d/3d图形)、声音、脚本化、动画、ai、联网、流式传输(编码)、存储器管理、线程化等可分为分布在许多不同计算中的不同的功能处理块和/或服务。应当理解,对于分布式游戏引擎,需要低延时通信以避免延时问题。为了保持所需的帧速率,计算和通信的总时间应满足某些约束。因此,根据是否有可能在更短的时间内完成该过程来划分某些任务可能有效或可能无效。
87.使用分布式游戏引擎的一个优点是可能利用弹性计算,其中计算资源可以根据需要放大或缩小。例如,在传统上在单个硬件服务器上执行的大型多玩家游戏中,在例如大约100名玩家之后,硬件资源变得有限,因此无法添加更多的玩家。游戏可能会让其他玩家排队,这意味着玩家必须等待才能加入游戏。然而,使用分布式游戏引擎,通过使用弹性云计算资源,可以添加更多的计算节点来满足需求,从而能够支持例如数千名玩家。游戏不再受特定硬件服务器的限制约束。
88.因此,云游戏引擎可以将功能分布到不同的处理实体。可以理解,不同的功能可以在不同的框架中执行。例如,某些功能(例如社交)可能更容易在容器中运行,而图形可能使用连接到gpu的vm更好地运行。
89.为了便于分布云游戏引擎的功能,分布/同步层可以管理作业的分布,例如发送出作业、接收回数据、标识执行哪些任务以及何时执行、处理排队,例如,如果作业完成得比需要的快。在一些实施方式中,如果需要,可以动态细分给定任务。例如,动画可以有照明,且如果照明特别复杂,照明可以细分为三个照明作业,这些作业被发送出去进行计算并在返回时重新组装。因此,如果游戏引擎功能需要更多工作,则可以对其进行细分。
90.云服务提供商提供指定表现关卡的计算,例如在每秒输入/输出操作数(“iops”)。因此,游戏提供商可以从云服务提供商指定vm、专用处理能力、存储器量等,并使用云服务提供商的系统实例化分布式云游戏引擎。
91.在一些实施方式中,库模块和更新处理程序可以是游戏引擎的一个或多个部件或模块。在一些实施方式中,库模块和更新处理程序可以是单独的部件,或者是集成的。在一些实施方式中,库模块和更新处理程序可以作为游戏引擎的补充来操作。在一些实施方式中,游戏引擎可以是分布式游戏引擎,如上所述。
92.如上所述,本公开的实施方式可应用于云游戏系统。云游戏系统的一个示例是now云游戏系统。在此类系统中,客户端设备可以是游戏控制台,诸如4游戏控制台,或者可以是另一个设备,诸如个人计算机、膝上型计算机、平板计算机、手机、移动设备等。
93.广义地讲,为了实现云游戏,当接收到针对游戏名称的用户请求时,由与云游戏站点相关联的数据中心内的一个或多个服务器执行若干操作。当云游戏站点接收到用户请求时,标识托管与所选择的游戏名称相关联的游戏的数据中心,并且将该请求发送到所标识的数据中心,以针对所选择的游戏名称实例化游戏。响应于该请求,数据中心处的服务器标识游戏代码,加载所标识的游戏代码并且初始化与游戏代码相关的文件,以准备将游戏内
容呈现给用户。与游戏相关联的游戏数据可包括通用游戏数据和用户特定的游戏数据。因此,初始化文件可以包括标识、加载和初始化通用游戏数据和用户特定的游戏数据。初始化通用游戏数据可包括初始化图形引擎、安装图形数据、初始化声音文件,安装原图等。初始化用户特定数据可包括定位、传输和安装用户数据、用户历史记录、游戏历史记录等。
94.在加载和初始化通用游戏数据时,可以提供“启动”屏幕以在客户端设备处渲染。可以设计一种启动画面来提供正在加载的游戏的代表性图像,以允许用户预览正在加载的游戏的类型。一旦加载了通用游戏数据,就可以渲染某些初始内容,并且可呈现选择/导航屏幕以供用户选择和定制。在选择/导航屏幕处提供的用户选择输入可包括游戏等级选择、一个或多个游戏图标选择、游戏模式选择、游戏奖励、和可能需要上传额外游戏内容的其他用户相关数据。在一些实施方案中,通过将游戏内容从游戏云系统流式传输到用户的计算设备来使游戏内容可用于查看和交互。在一些实施方式中,在加载用户特定数据之后,游戏内容可用于进行游戏。
95.图8a示出了用于为可通过云游戏站点获得的游戏加载游戏文件的示例性系统。所述系统包括多个客户端设备800,所述多个客户端设备通过网络802通信地连接到云游戏站点804,所述网络可以包括lan、有线网络、无线网络、蜂窝网络(例如,4g、5g等)、或任何其他类型的数据网络,包括互联网。当从客户端设备800接收到访问云游戏站点804的请求时,云游戏站点804访问存储在用户数据存储区808中的用户账户信息806,以标识与发起请求的客户端设备相关联的用户。在一些实施方案中,云游戏站点还可以验证所标识的用户,以便确定该用户被授权查看/玩的所有游戏。在用户账户标识/验证之后,云游戏站点访问游戏名称数据存储区810以针对发起请求的用户账户标识在游戏云站点处可用的游戏名称。游戏名称数据存储区810继而与游戏数据库812进行交互以获得针对云游戏站点可用的所有游戏的游戏名称。当推出新的游戏时,将用游戏代码更新游戏数据库812,并且将为游戏名称数据存储区810提供新推出的游戏的游戏名称信息。当发起请求时,发起请求的客户端设备可以向或可以不向云游戏站点注册。如果发起请求的客户端设备的用户不是注册用户,则云游戏站点可将该用户标识为新用户,并且选择适合新用户的游戏名称(例如,默认的一组游戏名称)。将所标识的游戏名称返回给客户端设备以呈现在显示屏800-a上,如图8a所示。
96.检测在客户端设备上渲染的游戏名称中的一个游戏名称处的用户交互,并且将信号发送到云游戏站点。该信号包括检测到用户交互的游戏名称信息以及在游戏名称处注册的用户交互。响应于从客户端设备接收的信号,云游戏站点主动确定托管游戏的数据中心,并且向所标识的数据中心发送信号以加载与检测到用户交互的游戏名称相关联的游戏。在一些实施方案中,可能有一个以上的数据中心正在托管游戏。在此类实施方案中,云游戏站点可以确定发起请求的客户端设备的地理位置,并且标识在地理上靠近客户端设备的数据中心,并且发信号通知该数据中心来预加载游戏。可以使用客户端设备内的全球定位系统(gps)机制、客户端的ip地址、客户端的查验(ping)信息等来确定用户的地理位置。当然,检测用户的地理位置的前述方式可以是示例性的,并且可以使用其他类型的机制或工具来确定用户的地理位置。标识靠近客户端设备的数据中心可以使用户与游戏交互期间的延时最小化。在一些实施方案中,所标识的数据中心可能不具有托管游戏所需的带宽/容量或者可能被过度使用。在这些实施方案中,云游戏站点可以标识在地理上靠近客户端设备的第二
数据中心。游戏的加载包括加载游戏代码并且执行游戏的实例。
97.响应于从云游戏站点接收到信号,标识的数据中心可以选择数据中心处的服务器以实例化服务器上的游戏。基于可用的硬件/软件能力和游戏要求来选择服务器。服务器可以包括多个游戏控制台,并且服务器可以确定使用多个游戏控制台中的哪一个游戏控制台来加载游戏。游戏控制台可以类似于独立的游戏控制台,或者可以是机架式服务器或刀片服务器。刀片服务器继而可以包括多个服务器刀片,其中每个刀片具有用于实例化单个专用应用(诸如游戏)所需的电路。当然,上述游戏控制台是示例性的,不应被视为是限制性的。其他类型的游戏机(包括游戏站等)以及其他形式的刀片服务器也可以用于托管所标识的游戏。
98.一旦标识出游戏控制台,游戏的通用游戏相关代码就被加载到游戏控制台上,并且通过网络经由云游戏站点向客户端设备返回信号,该信号标识在其上实例化游戏的游戏控制台。因此,加载的游戏可供用户使用。
99.图8b是概念性地示出根据本公开的实施方式的为将云视频游戏流式传输到客户端设备而执行的各种操作的流程图。游戏系统818执行视频游戏并且生成原始(未压缩的)视频820和音频822。视频820和音频822被捕获和编码以用于流式传输目的,如在所示的图中的附图标记824处所指示。编码可用于视频和音频流的压缩,以减少带宽使用并且优化游戏体验。编码格式的示例包括h.265/mpeg-h、h.264/mpeg-4、h.263/mpeg-4、h.262/mpeg-2、wmv、vp6/7/8/9等。
100.经编码的音频826和经编码的视频828被进一步分包为网络数据包,如附图标记832处所指示,以用于通过网络(诸如互联网)进行传输的目的。网络数据包编码过程也可以采用数据加密过程,从而提供增强的数据安全性。在所示的实施方式中,如附图标记840所指示,生成音频数据包834和视频数据包836以用于通过网络进行传输。
101.游戏系统818另外生成触觉反馈数据830,该触觉反馈数据也被分包为网络数据包以用于网络传输。在所示的实施方式中,生成触觉反馈数据包838以用于通过网络进行传输,如在附图标记840处进一步指示。
102.在共同定义云游戏服务/系统的一个或多个服务器上执行前述生成原始视频和音频以及触觉反馈数据、对视频和音频进行编码并且对经编码的音频/视频和触觉反馈数据进行分包以进行传输的操作。如附图标记840处所指示,音频、视频和触觉反馈数据包通过网络(诸如和/或包括互联网)进行传输。如附图标记842处所指示,音频数据包834、视频数据包836和触觉反馈数据包838由客户端设备解码/重组,以在客户端设备处定义经编码的音频846、经编码的视频848和触觉反馈数据850。如果数据已经加密,则也将对网路数据包解密。然后,如附图标记844处所指示,由客户端设备对经编码的音频846和经编码的视频848进行解码,以生成客户端侧原始音频和视频数据以在显示设备852上渲染。可以处理/传送触觉反馈数据850以在控制器设备856或可通过其渲染触觉效果的其他接口设备处产生触觉反馈效果。触觉效果的一个示例是控制器设备856的振动或隆隆声。
103.应当理解,视频游戏对用户输入进行响应,并且因此可以执行与上述用于用户输入的传输和处理的程序流程类似但是在从客户端设备到服务器的相反方向上的程序流程。如图所示,用户操作控制器设备856可生成输入数据858。该输入数据858在客户端设备处进行分包,以通过网络传输到云游戏系统。输入数据包860被云游戏服务器拆包并且重组以在
服务器侧定义输入数据862。输入数据862被馈送到游戏系统818,所述游戏系统处理输入数据862以更新视频游戏的游戏状态。
104.在音频数据包834、视频数据包836和触觉反馈数据包838的传输(附图标记840)期间,可以监测通过网络的数据传输以确保云游戏流的服务质量。例如,可以如附图标记864所指示监测网络状况,包括上游和下游网络带宽两者,并且可以响应于可用带宽的变化来调整游戏流式传输。即,可以基于当前网络状况来控制网络数据包的编码和解码,如附图标记866所指示。
105.图9示出了信息服务提供商架构的实施方案。信息服务提供商(isp)970向地理上分散且经由网络986连接的用户982提供大量信息服务。isp可以只提供一种类型的服务,诸如股票价格更新,或可以提供各种类型的服务,诸如广播媒体、新闻、体育、游戏等。另外,每个isp所提供的服务都是动态的,即,可以在任何时间点添加或移除服务。因此,向特定个人提供特定类型的服务的isp可能会随时间变化。例如,当用户在她的家乡时,可以由靠近该用户的isp为用户提供服务,并且当用户前往不同城市时,可以由不同的isp为用户提供服务。当地isp将把所需的信息和数据传输到新的isp,使得用户信息“跟随”用户到新的城市,从而使数据更接近用户并且更易于访问。在另一个实施方案中,可以在为用户管理信息的主isp和在主isp的控制下直接与用户对接的服务器isp之间建立主-从关系。在另一个实施方案中,当客户端在世界范围内移动时,数据从一个isp传输到另一个isp,以使处在更好位置为用户提供服务的isp成为提供这些服务的isp。
106.isp 970包括应用服务提供商(asp)972,其通过网络(例如,包括但不限于任何有线或无线网络、lan、wan、wifi、宽带、电缆、光纤、卫星、蜂窝(例如4g、5g等)、互联网等)向客户提供基于计算机的服务。使用asp模型提供的软件有时还被称为按需软件或软件即服务(saas)。提供对特定应用程序(诸如客户关系管理)的访问的简单形式是使用标准协议(诸如http)。该应用软件驻留在供应商的系统上,并且由用户使用html通过web浏览器进行访问、通过由供应商提供的专用客户端软件进行访问或通过其他远程接口(诸如瘦客户端)进行访问。
107.在广阔地理区域上递送的服务常常使用云计算。云计算是一种计算方式,其中动态可扩展和通常虚拟化的资源通过互联网作为服务提供。用户不需要成为支持他们的“云”中技术基础设施方面的专家。云计算可以分为不同的服务,诸如基础设施即服务(iaas)、平台即服务(paas)和软件即服务(saas)。云计算服务常常在线提供从web浏览器访问的共同业务应用,而软件和数据存储在服务器上。基于计算机网络图中互联网的描绘方式,术语云被用作互联网的隐喻(例如,使用服务器、存储设备和逻辑),并且是对它所隐藏的复杂基础设施的抽象概念。
108.此外,isp 970包括游戏处理服务器(gps)974,所述gps被游戏客户端用来玩单玩家和多玩家视频游戏。在互联网上玩的大多数视频游戏都是通过与游戏服务器的连接来运行的。通常,游戏使用专用的服务器应用,所述服务器应用从玩家收集数据并将其分发给其他玩家。这比对等布置更有效且高效,但它需要单独的服务器来托管服务器应用。在另一个实施方案中,gps在玩家之间建立通信,并且玩家的相应的游戏进行设备在不依赖于集中式gps的情况下交换信息。
109.专用gps是独立于客户端运行的服务器。这样的服务器通常在位于数据中心内的
专用硬件上运行,从而提供更多的带宽和专用的处理能力。对于大多数基于pc的多玩家游戏,专用服务器是托管游戏服务器的优选方法。大型多玩家在线游戏在专用服务器上运行,所述服务器通常由拥有游戏名称的软件公司托管,从而允许它们控制和更新内容。
110.广播处理服务器(bps)976将音频或视频信号分发给观众。向很小范围的观众广播有时称为窄播。广播分发的最后一站是信号如何到达听众或观察者,并且它可能像广播电台或电视台一样从空中传播到天线和接收器,或可能通过有线电视或有线广播(或“无线电缆”)通过工作站或直接从网络传播。互联网也可以将无线电或电视带给接收者,尤其是通过多播允许共享信号和带宽。历史上,广播已经由地理区域界定,诸如国家广播或区域广播。但是,随着快速互联网的普及,不按地理条件来定义广播,因为内容可以到达世界上的几乎任何国家。
111.存储服务提供商(ssp)978提供计算机存储空间和相关的管理服务。ssp还提供周期性备份和存档。通过提供存储即服务,用户可以根据需要订购更多存储设备。另一个主要优点是ssp包括备份服务,并且如果计算机的硬盘驱动器发生故障,用户将不会丢失其所有数据。此外,多个ssp可以具有用户数据的全部或部分副本,从而允许用户以有效的方式访问数据,而与用户所在的位置或用于访问数据的设备无关。例如,用户可以在家用计算机以及移动电话中(当用户移动时)访问个人文件。
112.通信提供商980向用户提供连接。一种通信提供商是互联网服务提供商(isp),其提供对互联网的访问。isp使用适合于传递互联网协议数据报的数据传输技术来连接其客户,诸如拨号、dsl、电缆调制解调器、光纤、无线或专用高速互连。通信提供商还可以提供消息传递服务,诸如、即时消息传递和sms短信。另一种类型的通信提供商是网络服务提供商(nsp),其通过提供对互联网的直接主干访问来出售带宽或网络接入。网络服务提供商可以包括电信公司、数据运营商、无线通信提供商、互联网服务提供商、提供高速互联网接入的有线电视运营商等。
113.数据交换988将isp 970内部的几个模块互连,并通过网络986将这些模块连接到用户982。数据交换988可以覆盖isp 970的所有模块都非常靠近的小区域,或者当不同的模块在地理上分散时可以覆盖大的地理区域。例如,数据交换988可以包括数据中心的机柜内的快速千兆以太网(或更快的千兆以太网),或洲际虚拟区域网络(vlan)。
114.用户982使用客户端设备984访问远程服务,所述客户端设备至少包括cpu、存储器、显示器和i/o。客户端设备可以是pc、移动电话、笔记本计算机、平板计算机、游戏系统、pda等。在一个实施方案中,isp 970识别客户端使用的设备类型并且调整所采用的通信方法。在其他情况下,客户端设备使用标准通信方法(诸如html)来访问isp 970。
115.本公开的实施方案可以用包括手持式设备、微处理器系统、基于微处理器的或可编程的消费电子产品、小型计算机、大型计算机等的各种计算机系统配置来实践。本公开也可以在分布式计算环境中实践,其中由通过有线或无线网络链接的远程处理设备执行任务。
116.在一些实施方案中,可使用无线技术来促进通信。此类技术可包括例如5g无线通信技术。5g是第五代蜂窝网络技术。5g网络是数字蜂窝网络,其中提供商覆盖的服务区域被划分成被称为小区的小地理区域。代表声音和图像的模拟信号在电话中被数字化、由模数转换器转换并作为比特流传输。通过从其他小区中重复使用的频率池中由收发器分配的频
率信道,小区中的所有5g无线设备通过无线电波与小区中的本地天线阵列和小功率自动收发器(发射器和接收器)通信。本地天线通过高带宽光纤或无线回程连接与电话网络和互联网连接。与在其他小区网络中一样,从一个小区跨到另一小区的移动设备会自动转到新的小区。应当理解,5g网络只是通信网络的示例类型,并且本发明的实施方案可以利用更早一代的无线或有线通信,以及5g之后的更新一代的有线或无线技术。
117.考虑到上述实施方案,应理解,本公开可以采用涉及存储在计算机系统中的数据的各种计算机实现的操作。这些操作是需要对物理量的物理操纵的那些操作。形成本公开的一部分的本文描述的任何操作都是有用的机器操作。本公开还涉及用于执行这些操作的设备或装置。可以针对所需目的专门构造所述装置,或者所述装置可以是由存储在计算机中的计算机程序选择性地激活或配置的通用计算机。具体地,各种通用机器可以与根据本文的教导编写的计算机程序一起使用,或者构造更专门的装置来执行所需的操作可能更方便。
118.本公开还可以实施为计算机可读介质上的计算机可读代码。另选地,可以使用上述数据交换互连从服务器下载计算机可读代码。计算机可读介质是可以存储数据的任何数据存储设备,该数据随后可以由计算机系统读取。计算机可读介质的示例包括硬盘驱动器、网络附接存储设备(nas)、只读存储器、随机存取存储器、cd-rom、cd-r、cd-rw、磁带以及其他光学和非光学数据存储设备。所述计算机可读介质可以包括分布在网络耦合的计算机系统上的计算机可读有形介质,使得以分布式方式存储和执行计算机可读代码。
119.尽管以具体的顺序描述了方法操作,但应理解,可在操作之间执行其他内务操作,或者可以调整操作,使得它们在略微不同的时间发生,或者可以分布在允许以与处理相关联的各种间隔发生处理操作的系统中,只要覆盖操作的处理以期望的方式执行即可。
120.虽然出于清楚理解的目的相当详细地描述了前述公开内容,但显而易见的是,可在所附权利要求的范围内实践某些改变和修改。因此,本实施方案将被认为是说明性的而非限制性的,并且本公开不限于本文给出的细节,而是可在所描述的实施方案的范围和等效范围内进行修改。

技术特征:


1.一种方法,所述方法包括:通过网络从执行视频游戏的各个会话的多个第一客户端设备接收在所述第一客户端设备处从所述视频游戏的所述各个会话生成的视频;对于每个视频,通过所述网络从所述第一客户端设备中的一个接收位置元数据,所述位置元数据标识所述视频游戏的虚拟环境中的空间位置,在所述空间位置发生所述视频描绘的游戏进行,所述位置元数据与所述视频的视频帧相关并且标识给定视频帧所描绘的所述游戏进行的所述空间位置;在由第二客户端设备执行的所述视频游戏的会话期间,通过所述网络接收所述会话中发生的游戏进行的所述虚拟环境中的当前空间位置;使用所述当前空间位置选择所述视频中的一个或多个;通过所述网络在所述第二客户端设备处呈现所选视频。2.根据权利要求1所述的方法,其中接收给定视频的所述位置元数据与通过所述网络接收所述给定视频基本上同时发生。3.根据权利要求2所述的方法,其中所述给定视频和所述给定视频的所述位置元数据通过所述网络从生成所述给定视频的所述第一客户端设备同步流式传输。4.根据权利要求1所述的方法,其中所述虚拟环境中的所述当前空间位置由所述虚拟环境中的虚拟角或虚拟对象的当前空间坐标定义。5.根据权利要求1所述的方法,其中标识所述虚拟环境中的空间位置的所述位置元数据由所述虚拟环境中的虚拟角或虚拟对象随时间的空间坐标定义。6.根据权利要求1所述的方法,其中所述位置元数据标识所述视频游戏的章节、关卡或场景。7.根据权利要求1所述的方法,其中使用所述当前位置来选择所述视频中的一个或多个包括标识具有位置元数据的所述视频中的一个或多个,所述位置元数据标识接近所述当前空间位置的空间位置。8.根据权利要求1所述的方法,其中呈现所选视频包括显示所选视频的每个的预览图像。9.根据权利要求1所述的方法,其还包括:接收针对回放所选视频中的一个的请求;响应于所述针对回放的请求,将所选视频中的所述一个流式传输到所述第二客户端设备。10.一种上面体现有程序指令的非暂时性计算机可读介质,所述程序指令在由至少一个计算设备执行时使所述至少一个计算设备执行包括以下操作的方法:通过网络从执行视频游戏的各个会话的多个第一客户端设备接收在所述第一客户端设备处从所述视频游戏的所述各个会话生成的视频;对于每个视频,通过所述网络从所述第一客户端设备中的一个接收位置元数据,所述位置元数据标识所述视频游戏的虚拟环境中的空间位置,在所述空间位置发生所述视频描绘的游戏进行,所述位置元数据与所述视频的视频帧相关并且标识给定视频帧所描绘的所述游戏进行的所述空间位置;在由第二客户端设备执行的所述视频游戏的会话期间,通过所述网络接收所述会话中
发生的游戏进行的所述虚拟环境中的当前空间位置;使用所述当前空间位置选择所述视频中的一个或多个;通过所述网络在所述第二客户端设备处呈现所选视频。11.根据权利要求10所述的非暂时性计算机可读介质,其中接收给定视频的所述位置元数据与通过所述网络接收所述给定视频基本上同时发生。12.根据权利要求11所述的非暂时性计算机可读介质,其中所述给定视频和所述给定视频的所述位置元数据通过所述网络从生成所述给定视频的所述第一客户端设备同步流式传输。13.根据权利要求10所述的非暂时性计算机可读介质,其中所述虚拟环境中的所述当前空间位置由所述虚拟环境中的虚拟角或虚拟对象的当前空间坐标定义。14.根据权利要求10所述的非暂时性计算机可读介质,其中标识所述虚拟环境中的空间位置的所述位置元数据由所述虚拟环境中的虚拟角或虚拟对象随时间的空间坐标定义。15.根据权利要求10所述的非暂时性计算机可读介质,其中所述位置元数据标识所述视频游戏的章节、关卡或场景。16.根据权利要求10所述的非暂时性计算机可读介质,其中使用所述当前位置来选择所述视频中的一个或多个包括标识具有位置元数据的所述视频中的一个或多个,所述位置元数据标识接近所述当前空间位置的空间位置。17.根据权利要求10所述的非暂时性计算机可读介质,其中呈现所选视频包括显示所选视频的每个的预览图像。18.根据权利要求10所述的非暂时性计算机可读介质,其还包括:接收针对回放所选视频中的一个的请求;响应于所述针对回放的请求,将所选视频中的所述一个流式传输到所述第二客户端设备。

技术总结


一种方法,包括:通过网络从执行视频游戏的各个会话的多个第一客户端设备接收在第一客户端设备处从各个会话生成的视频;对于每个视频,通过网络从第一客户端设备中的一个接收位置元数据,该位置元数据标识视频游戏的虚拟环境中的空间位置,在该空间位置发生视频描绘的游戏进行,该位置元数据与视频的视频帧相关并且标识给定视频帧所描绘的游戏进行的空间位置;在由第二客户端设备执行的视频游戏的会话期间,通过网络接收会话中发生的游戏进行的虚拟环境中的当前空间位置;使用当前空间位置选择视频中的一个或多个;通过网络在第二客户端设备处呈现所选视频。端设备处呈现所选视频。端设备处呈现所选视频。


技术研发人员:

M.斯塔里奇 R.伊普

受保护的技术使用者:

索尼互动娱乐股份有限公司

技术研发日:

2021.03.05

技术公布日:

2022/10/4

本文发布于:2024-09-20 22:34:42,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/6629.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:游戏   视频   所述   用户
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议