动画分发服务器、动画播放装置、控制方法、程序、及记录介质的制作方法

文档序号:7790433阅读:164来源:国知局
动画分发服务器、动画播放装置、控制方法、程序、及记录介质的制作方法
【专利摘要】本发明是使用决定即将进行绘制的画面的视点信息,利用至少2阶段的绘制处理而绘制分发画面。该绘制处理是在后段的绘制处理中,参照前段的绘制处理中生成的深度映射图,实施分发画面的绘制。动画分发服务器是在第1画面的后段的绘制处理的执行中选择深度映射图用于编码判断,对于设定的每一区块,参照对于较第1画面之前绘制的第2画面所生成的深度映射图,判断是否执行帧间编码。动画分发服务器是在第1画面的后段的绘制处理结束后,根据该判断的结果进行编码,并将编码动画数据发送至外部装置。而且,该判断的结果是在第1画面的编码动画数据生成结束之前,发送至外部装置。
【专利说明】动画分发服务器、动画播放装置、控制方法、程序、及记录介质
【技术领域】
[0001]本发明涉及一种动画分发服务器、动画播放装置、控制方法、程序、及记录介质,尤其涉及一种编码动画数据流(StreaminR)分发技术。
【背景技术】
[0002]可连接网络的个人计算机(PC)等用户端设备正不断普及。因这种设备普及,因特网中的网络人口不断增加。近年来,对于网络用户的利用因特网的各种服务不断开展,也提供有游戏等娱乐服务。
[0003]作为针对网络用户的服务之一,存在MMORPG (Massively Multiplayer OnlineRole-Playing Game,大型多人在线角色扮演游戏)等多人同时参加型的网络游戏。在多人同时参加型网络游戏中,可通过将用户所使用的用户端设备连接在提供游戏的服务器设备,而进行与使用连接在该服务器设备的用户端设备的用户的对战游戏或协力游戏。
[0004]在普通性多人参加型网络游戏中,用户端设备在与服务器设备之间进行游戏绘制所必需的数据收发。用户端设备使用所接收的绘制所需的数据执行绘制处理,且将生成的游戏画面提示给连接在用户端设备的显示装置,由此,对用户提供游戏画面。而且,通过用户操作输入接口而输入的信息是发送至服务器设备,从而用于服务器设备中的运算处理、或传输至连接在服务器设备的其他用户端设备。
[0005]然而,在利用此种用户端设备进行绘制处理的网络游戏中,存在用户必需使用具有充分绘制性能的PC或专用游戏机的游戏。因此,导致网络游戏(I内容)的用户数量依赖于内容所要求的用户端设备的性能。高性能的设备必然高价,且能够拥有该设备的用户也有限。即,例如提供美丽的图形的游戏等要求较高绘制性能的游戏将难以增加用户数量。
[0006]对此,近年来,也提供有不依赖于用户端设备的绘制性能等处理能力,而用户可进行游戏的游戏。在如专利文献I这样的游戏中,服务器设备获取用户端设备中实施的操作信息,对用户端设备提供利用该信息执行绘制处理所得的游戏画面。
[0007][【背景技术】文献]
[0008][专利文献]
[0009][专利文献I]国际公开第2009/138878号说明书。

【发明内容】

[0010][发明所要解决的问题]
[0011]在如所述专利文献I那样的游戏中,服务器设备对用户端设备所提供的游戏画面为了削减发送的信息量,而以经编码的动画数据的方式提供。虽然也依赖于所采用的编码方式,但在例如MPEG(Moving Picture Experts Group,动态图像专家组)标准那样的普通动画编码方式中,对于将I帧图像分割而成的各区块,进行不伴有动态补偿的帧内编码(帧内编码)、或伴有帧间预测的动态补偿的帧间编码(帧间编码)。在各个编码方式中存在压缩效率良好的被摄体,一般而言,生成对各区块分别进行帧内编码及帧间编码的区块(iblock、pblock),使压缩效率高的区块包含在编码数据。
[0012]帧内编码是将压缩对象的区块的图像未经加工地应用DCT (Discrete CosineTransform,离散余弦转换)转换及运行长度编码等进行压缩。另一方面,帧间编码是生成压缩对象的区块的图像与自前一帧的图像撷取的与该区块对应的参照图像的差值图像,且应用DCT转换及运行长度编码等进行压缩。因此,在帧间编码中,包含对前一帧的图像,确定与压缩对象的区块的图像的相关性最高的区域的处理。由于此种相关性最高的区域的检测的处理是对于前一帧的图像,一面使评价区域移动,一面计算与压缩对象区块的图像的相似度及距离,进行分析,故而存在分析处理需要时间的情况。
[0013]尤其,在绘制内容相应于用户的输入而交互地变化的游戏等中,要求即时性、即对于输入的高速响应,从而限制动画编码处理所需的时间。在此种情形时,要求高速地进行对于各区块的编码处理、以及进行帧内编码及帧间编码中的哪一个编码的判断处理。然而,至今尚未揭示有关于高速且有效地将绘制的画面进行动画编码的具体方法。
[0014]本发明是鉴于所述问题研制而成,其目的在于提供一种高速且有效地将通过绘制处理而获得的画面进行动画编码的动画分发服务器、动画播放装置、控制方法、程序、及记录介质。
[0015][解决问题的技术构件]
[0016]为实现所述目的,本发明的动画分发服务器具备以下构成。
[0017]其特征在于具有:获取构件,依序获取用以决定即将进行绘制的画面的视点信息;绘制构件,使用由获取构件获取的视点信息,通过至少2阶段的绘制处理而绘制分发画面,且在前段的绘制处理中,生成将在后段的绘制处理中进行参照的包含深度映射图的特定频道的中间值映射图,在后段的绘制处理中参照该中间值映射图,绘制分发画面;分割构件,在针对第1画面的后段的绘制处理的执行期间,获取对于第1画面而生成的中间值映射图中的深度映射图,且将所述深度映射图分割成多个区块;确定构件,对于多个区块的各区块,确定较第1画面之前绘制的第2画面的深度映射图中的与该区块对应的区域;编码构件,在第1画面的后段的绘制处理结束后,对于多个区块中的与由确定构件确定的对应的区域的相似度不小于阈值的区块,在第1画面的该区块的图像与第2画面的对应的区域的图像之间执行帧间编码,且对于所述多个区块中与由确定构件确定的对应的区域的相似度小于阈值的区块,对第1画面的该区块的图像执行帧内编码,由此,生成编码动画数据;及发送构件,对外部装置发送数据;且发送构件在利用编码构件的第1画面的各区块的编码动画数据的生成结束前,对于多个区块中的与对应的区域的相似度不小于阈值的区块,将确定该区块及对于该区块的对应的区域的确定信息发送至外部装置,在利用编码构件的第1画面的各区块的编码动画数据的生成结束后,将该编码动画数据发送至外部装置。
[0018]为实现所述目的,本发明的动画播放装置具备以下构成。
[0019]其是自动画分发服务器依序获取1帧的画面经编码的编码动画数据,并将其解码进行播放者,其特征在于具有:第1接收构件,接收对于第1画面经编码的第1编码动画数据,确定经帧间编码的区块及用于该区块解码的参照数据的确定信息;解码预处理构件,基于由第1接收构件接收的确定信息,自将第1编码动画数据之前所获取的第2编码动画数据解码所得的第2画面生成用于第1编码动画数据解码的关于经帧间编码的各区块的参照数据;第2接收构件,在确定信息接收后,自动画分发服务器接收第I编码动画数据;及解码构件,使用通过解码预处理构件而生成的关于经帧间编码的各区块的参照数据,将由第2接收构件接收的第I编码动画数据解码进行播放。
[0020][发明的效果]
[0021]通过此种构成,根据本发明,可高速且有效地将通过绘制处理而获得的画面进行动画编码。
[0022]根据参照随附的附图的以下的说明可明确本发明的其他特征及优点。另外,在随附的附图中,对相同或同样的构成标注相同参照编号。
【专利附图】

【附图说明】
[0023]随附的附图是包含在说明书,且构成该说明书的一部分,表示本发明的实施方式,且与其记述一并用于说明本发明的原理。
[0024]图1是表示本发明的实施方式I的动画分发系统的系统构成的图。
[0025]图2是表示本发明的实施方式的PC100的功能构成的框图。
[0026]图3是表示本发明的实施方式的动画分发服务器200的功能构成的框图。
[0027]图4是例示本发明的实施方式的动画分发服务器200的动画分发处理的流程图。
[0028]图5是例示本发明的实施方式的绘制目标的数据结构的图。
[0029]图6是例示本发明的实施方式的动画分发服务器200的编码处理的流程图。
[0030]图7是例示本发明的实施方式的PC100的动画播放处理的流程图。
[0031]图8是例示本发明的实施方式的PC100的解码预处理的流程图。
[0032]图9是例示本发明的实施方式的动画分发系统的整体处理的流程图。
[0033]图10是用以说明本发明的实施方式的被认为相关性最高的区域的推断方法的图。
[0034]图11是表示本发明的实施方式2的动画分发系统的系统构成的图。
[0035]图12是表示本发明的实施方式2的中央服务器的功能构成的框图。
[0036]图13是例示本发明的实施方式2的PC100的开始时处理的流程图。
[0037]图14是例示本发明的实施方式2的中央服务器1100的提供服务器决定处理的流程图。
【具体实施方式】
[0038][实施方式I]
[0039]以下,参照附图,对本发明的例示性实施方式进行详细说明。另外,以下说明的一实施方式是对本发明应用于作为动画分发系统的一例的动画播放装置即PC100、及分发动画的动画分发服务器200的示例进行说明。
[0040]《动画分发系统的构成》
[0041]图1是表示本发明的实施方式的动画分发系统的系统构成的图。
[0042]如图所示,PC100与动画分发服务器200是经由因特网等网络300而连接。在本实施方式中,PCioo作为动画分发内容的一例是以编码动画数据接收动画分发服务器200中执行的游戏内容的游戏画面。在本实施方式中,动画分发服务器200接收在PC100中实施的操作(用户输入),并逐帧地绘制与该操作对应的游戏画面。接着,动画分发服务器200将编码绘制的游戏画面所得的编码动画数据分发至PC100。而且,若PC100自动画分发服务器200接收编码动画数据,则将该编码动画数据解码进行播放,由此,可对用户提供游戏画面。
[0043]另外,在本实施方式中,作为动画分发内容的一例,对提供通过在网络300上的动画分发服务器200中执行的游戏程序而绘制的游戏画面的内容进行说明,但本发明的实施并不限于此。动画分发服务器200若为通过绘制处理而绘制提供至分发对象的动画分发内容的1帧,且分发通过对于各帧进行的编码处理而获得的编码动画数据的构成即可。而且,1帧的画面绘制不一定必需在动画分发服务器200中执行,例如也可利用外部的绘制服务器而执行。
[0044]而且,本实施方式是使用PC100作为连接在动画分发服务器200的用户端设备进行说明,但本发明的实施并不限于此。例如与动画分发服务器200连接的用户端设备只要是家庭用游戏机、掌上型游戏机、手机、PDA(Personal Digital Assistant,个人数码助理)、輸入板等可将从动画分发服务器200接收的编码动画数据解码进行播放的设备即可。
[0045]< PC100 的构成>
[0046]图2是表示本发明的实施方式的PC100的功能构成的框图。
[0047]CPU101是控制PC100所具有的各区块的运行。具体而言,CPU101通过将例如存储在R0M102的动画播放处理的运行程序读出,且在RAM103展开执行,而控制各区块的运行。
[0048]R0M102是例如可重写的非挥发性存储器。R0M102是不仅存储动画播放处理等的运行程序,而且存储PC100所具有的各区块运行所需的常数等信息。
[0049]RAM103是挥发性存储器。RAM103不仅用作运行程序的展开区域,而且也用作暂时存储在PC100所具有的各区块的运行中所输出的中间数据等的存储区域。
[0050]解码部104是对于下述通信部105所接收的编码动画数据进行解码处理,生成1帧的游戏画面。而且,解码部104是在进行对于编码动画数据的解码处理之前,进行准备用于该解码处理的参照数据的解码预处理。对于解码部104中执行的解码预处理及解码处理,将在下述动画播放处理中进行详细叙述。
[0051]通信部105是PC100所具有的通信接口。通信部105是进行在与经由网络300而连接的动画分发服务器200等其他设备之间的数据收发。在数据发送时,通信部105将数据转换成与网络300或发送对象的设备之间所规定的数据传输格式,进行向发送对象的设备的数据发送。而且,在数据接收时,通信部105将经由网络300而接收的数据转换成在PC100中可读取的任意数据格式,存储在例如RAM103。
[0052]另外,本实施方式是对PC100与动画分发服务器200经由网络300连接的情况进行说明,但应容易地想像也可是例如PC100与动画分发服务器200直接由电缆连接的方式。
[0053]显示部106是连接在例如IXD监控器等PC100的显示装置。显示部106是进行将输入的游戏画面显示在显示区域的显示控制。另外,显示部106可以是如便携式PC那样内置在PC100的显示装置,也可以是使用电缆而外部连接在PC100的显示装置。
[0054]操作输入部107是例如鼠标、键盘、游戏板等PC100所具有的用户接口。操作输入部107若检测到通过用户而实施用户接口的操作,则对CPU101输出与该操作对应的控制讯号。
[0055]<动画分发服务器200的构成>[0056]图3是表示本发明的实施方式的动画分发服务器200的功能构成的框图。
[0057]服务器CPU201是控制动画分发服务器200所具有的各区块的运行。具体而言,
[0058]服务器CPU201是通过将例如存储在服务器R0M202的动画分发处理的运行程序读出,且在服务器RAM203中展开执行,而控制各区块的运行。
[0059]服务器R0M202是例如可重写的非挥发性存储器。服务器R0M202不仅存储动画分发处理等的运行程序,而且也存储动画分发服务器200所具有的各区块的运行中所需的常
数等信息。
[0060]服务器RAM203是挥发性存储器。服务器RAM203不仅用作运行程序的展开区域,而且也用作暂时存储动画分发服务器200所具有的各区块的运行中输出的中间数据等的存储区域。
[0061]服务器GPUCgraphics processing unit,图形处理单元)204是进行显示在PC100的显示部106的游戏画面的生成。在服务器GPU204中连接有服务器VRAM (videorandomaccess memory,视频随机存取存储器)205。服务器GPU204是若自服务器CPU201接收到绘制命令及用于游戏画面的绘制的相机的位置及方向的信息(视点信息),则例如自下述服务器记录介质207中将该绘制命令的绘制目标读出,并存储在GPU存储器。在服务器GPU204在对连接的服务器VRAM205进行绘制的情形时,当进行绘制目标的向快闪存储器的展开之后,将该展开后的绘制目标写入至服务器VRAM205。
[0062]另外,本实施方式的服务器GPU204是在与游戏画面的生成相关的绘制处理中,使用所谓的延迟渲染(Deferred Rendering)的方法。
[0063]以往的绘制方法是依序选择游戏画面中所含的各个绘制目标,且对该绘制目标进行
[0064]1.顶点着色器(vertex shader)的移动.旋转处理
[0065]2.几何着色器(geometry shader)的顶点处理
[0066]3.像素着色器(pixel shader)的包含像素单位的阴影处理的效果处理
[0067]而绘制。S卩,所述以往的绘制方法是对于各绘制目标具有阴影处理一绘制的流程的所谓的Forward Rendering0Forward Rendering是对各目标进行依次处理,故而,因像素而存在如下实例,即,在绘制I个目标后,因位于更靠近相机的位置(较该目标更位于近前)的另一目标的绘制,而覆写绘制内容。在此情形时,对于由之后绘制的目标遮蔽的先前绘制的目标的一部分的区域,导致应用的阴影处理变得浪费。而且,例如存在于进行绘制的场景的光源等是对于存在于场景的目标而言共享,但Forward Rendering难以将绘制I个目标时的共享的计算内容再利用于另一目标绘制。因此,在进行特别复杂的阴影处理的游戏画面的绘制中,Forward Rendering并非有效。
[0068]与此相对,Deferred Rendering是与Forward Rendering不同地先进行用于阴影处理的几何计算,随后集中地进行对于所有绘制目标的阴影处理。即,进行具有几何绘制—阴影处理一绘制的流程的2阶段绘制处理。Deferred Rendering是在前段的绘制中,不进行光照而与用于阴影处理的参数一并进行几何绘制处理,生成表示阴影处理中使用的中间值的多个中间值映射图(散射映射图、深度映射图、法线映射图、反射映射图、扩散映射图等)。接着,在后段的绘制处理中,一面利用生成的多个中间值映射图,一面绘制应用光源进行了阴影处理的画面。[0069]服务器编码部206是进行对于通过服务器GPU204而生成在服务器VRAM205的游戏画面的编码处理。服务器编码部206是将编码对象的游戏画面分割成区块,并将各区块进行帧内编码(帧内编码)或帧间编码(帧间编码)。编码处理的详细情况在下文叙述,在本实施方式中,服务器编码部206在YCbCr的每一色频中对各区块进行离散余弦转换(DCT)后,通过运行长度编码进行压缩。另外,本实施方式是对作为进行对于游戏画面的编码处理的区块,单独存在服务器编码部206进行说明,但编码处理也可由服务器GPU204执行。
[0070]服务器记录介质207是例如HDD (hard disk drive,硬盘驱动器)等可装卸地连接在动画分发服务器200的记录装置。本实施方式是在服务器记录介质207记录有用于画面绘制处理的各绘制目标的数据及配置在画面中呈现的三维场景的光源信息等。
[0071]服务器通信部208是动画分发服务器200所具有的通信接口。在本实施方式中,服务器通信部208进行在与经由网络300而连接的PC100等其他设备之间的数据收发。另外,服务器通信部208是与通信部105同样地,进行符合通信标准的数据格式转换。
[0072]《动画分发处理》
[0073]就具有此种构成的本实施方式的动画分发系统的动画分发服务器200中所执行的动画分发处理,使用图4的流程图,说明具体的处理。与该流程图对应的处理可通过服务器CPU201将例如存储在服务器R0M202的对应的处理程序读出,并在服务器RAM203中展开地执行而实现。另外 ,本动画分发处理是作为例如在服务器CPU201检测到自PC100接收到动画分发服务器200所提供的游戏内容的提供请求时开始,且在游戏的每一帧中反复地执行的情况进行说明。
[0074]另外,在本实施方式中,动画分发服务器200是作为将使用Deferred Rendering的方法绘制三维场景的游戏画面以编码动画数据的方式提供至PC100的情况进行说明。然而,如上所述,动画分发服务器200所分发的内容并不限于此,只要是提供至少进行2阶段绘制处理而绘制三维场景的画面的任意内容即可。
[0075]在S401中,服务器CPU201更新下一个绘制的游戏画面的视点信息。具体而言,月艮务器CPU201参照例如服务器通信部208所接收的在PC100中由用户实施的游戏的操作输入的信息,更新下一个绘制的游戏画面的视点信息。可产生视点信息的更新的用户的操作是例如相当于视点位置及方向的变更操作、或用户的操作对象的角色移动等。另外,用于游戏画面绘制的视点信息更新并非仅由PC100中实施的用户操作更新,也可例如根据游戏的进行状况而变更。
[0076]在S402中,服务器CPU201对于与S401中更新的视点信息对应的游戏画面,使服务器GPU204执行前段的绘制处理,生成将在后段的绘制处理中使用的各种中间值映射图。具体而言,服务器CPU201确定所绘制的游戏画面中包含的绘制目标,按照绘制顺序,将各绘制目标的数据传输至服务器GPU204。服务器GPU204将所传送的绘制目标数据存储在GPU存储器。绘制目标数据是例如图5所示的构成,且本实施方式是与目标识别ID建立关联地包含模型数据(或顶点数据及连线数据)、纹理数据、及位置.旋转信息。另外,纹理数据不仅包含应用(贴附)在三维模型的表现该三维模型模式等的普通图像纹理(贴花纹理),也包含用于该三维模型的阴影处理及质感表现的各种映射图。
[0077]服务器GPU204依照关于接收绘制命令的绘制目标的位置?旋转信息的参数,使存储在GPU存储器的模型数据移动及旋转后,不应用光源效果(阴影处理、遮光)而进行向服务器VRAM205的绘制。此时,在服务器VRAM205生成与最终对PClOO提供的游戏画面对应的多种类中间值映射图。该多种类中间值映射图是在下述后段绘制处理中的阴影处理中所参照的映射图,在本实施方式中至少包含
[0078]?散射映射图(Albedo map)
[0079]?深度映射图(Depth map)
[0080]?法线映射图(Normal map)
[0081].反射映射图(Specular map)
[0082]?扩散映射图(Diffuse map)。
[0083]另外,除深度映射图以外的中间值映射图是通过根据进行绘制的游戏画面的视点信息,转换包含在进行绘制的游戏画面中的所有绘制目标数据的各数据中所含的对应的纹理数据及模型数据的各多边形信息等而生成。即,Forward Rendering是对于各绘制目标,考虑该绘制目标的纹理数据逐个地执行阴影处理,与此相对,Deferred Rendering的前段绘制处理可通过生成将进行绘制的游戏画面的整体作为I个绘制目标而捕获的中间值映射图,而在后段绘制处理中将游戏画面的整体作为对象进行阴影处理,从而可减少重复运算 ο
[0084]另外,对于深度映射图,在中间值映射图的生成中,在各绘制目标绘制时,以像素单位考虑绘制目标的如后关系引起的遮蔽(occlusion),利用以往的方法生成。
[0085]这样一来,若前段绘制处理结束,则服务器CPU201并行地执行S403至S408的处理及S409至S412的处理。
[0086]在S403中,服务器CPU201将前段绘制处理中生成的中间值映射图与识别正绘制的帧(当前帧)的帧ID及S401中更新的视点信息(绘制视点信息)建立关联地存储在服务器RAM203。本实施方式的动画分发服务器200是对于提供至PC100的编码动画数据的各帧,将用于所绘制的游戏画面生成的深度映射图存储在服务器RAM203,且保持到至少下一帧的编码处理结束为止。
[0087]在S404中,服务器CPU201选择多种类中间值映射图中的深度映射图用于编码判断,并将其分割成特定的像素数(例如16pixeLX 16pixel)的区块。如上所述,中间值映射图分别是与最终提供至PC100的游戏画面对应。因此,在本实施方式中,为了判断在所提供的游戏画面的各区块动画编码中是否执行帧间预测,而使用多种类中间值映射图中的深度映射图。
[0088]在S405中,服务器CPU201对于深度映射图的各区块,自当前帧的前I个帧(前一帧)的游戏画面的前段绘制处理中生成的深度映射图,确定认为相关性最高的区域。
[0089]首先,服务器CPU201确定绘制在对象区块四角的坐标的绘制目标(区块确定目标)的三维坐标。具体而言,服务器CPU201自深度缓冲器获取对象区块四角的坐标各自中的深度值。其次,服务器CPU201自绘制视点信息与对象区块四角的坐标,确定朝向区块确定目标的方向。接着,服务器CPU201自绘制视点信息、所确定的朝向区块确定目标的方向及深度值,确定区块确定目标的三维坐标。
[0090]其次,服务器CPU201使用用于前一帧游戏画面绘制的视点信息(过去视点信息),将区块确定目标的三维坐标转换成前一帧游戏画面中的屏幕坐标。由此,可确定前一帧游戏画面中被认为相关性最高的区域的四角的坐标。即,在本实施方式中,如图10所示,可将表现有与对象区块相同的绘制目标的区域、即作为相关性较高的绘制内容的可能性较高的区域逆转换成三维场景而确定。
[0091]在S406中,服务器CPU201对于S305中推断的被认为相关性最高的区域,计算相关度。具体而言,服务器CPU201自服务器RAM203读出前一帧的前段绘制处理中生成的深度映射图(过去深度映射图)。接着,服务器CPU201自该过去深度映射图撷取推断认为相关性最高的区域的图像,对该图像乘以例如自过去视点信息与绘制视点信息生成的转换矩阵,由此,生成与对象区块相同像素数的参照图像。接着,服务器CPU201例如通过计算图像间的欧几里得距离,而计算该参照图像与对象区块图像的相关度。
[0092]另外,本实施方式的动画分发服务器200是在下述编码处理中执行帧间编码的情形时,使用自当前帧的前1个帧获取的参照数据,将当前帧图像与参照数据的差值图像进行编码。因此,以编码判断也对于当前帧的前1个的帧实施的情况进行说明,但在帧间编码中所参照的过去帧并不限于当前帧的前1个帧,可使用当前帧之前的帧。 [0093]在S407中,服务器CPU201决定对于用于编码判断的深度映射图的各区块执行帧内编码抑或执行帧间编码(编码判断)。具体而言,服务器CPU201判断对于被认为与各区块相关性最高的过去深度映射图的区域所计算的相似度(例如欧几里得距离的倒数)是否为预先设定的阈值以上。接着,服务器CPU201对于与被认为相关性最高的区域的相似度不小于阈值的区块决定执行帧间编码,且对于相似度小于阈值的区块决定执行帧内编码。
[0094]在S408中,服务器CPU201对于用于编码判断的深度映射图的各区块中的决定执行帧间编码的区块,计算自过去深度映射图的被认为相关性最高的区域的运动向量。接着,服务器CPU201与确定决定进行该帧间编码的区块的确定信息建立关联地,将关于该区块的运动向量信息传输至服务器通信部208,并作为预处理信息对PC100发送。
[0095]另外,本步骤中计算的运动向量因来自前一帧的视点的移动方向,而不一定成为二维的运动向量。即,在例如视点移动至接近或远离特定绘制目标的方向的情形时,除二维向量以外,也可包含扩大/缩小的倍率信息。而且,在例如视点在滚动方向旋转的情形时,除二维向量以外,也可包含旋转用矩阵。而且,在例如视点在间距方向或横摆方向旋转的情形时,也可不使用二维向量而使用三维向量作为运动向量。另外,确定用作参照数据的前一帧画面的区域的信息并不限于此,只要是例如直接指定区域的顶点坐标的信息等可确定区域的?目息,也可以是任何格式。
[0096]另一方面,服务器CPU201在与S403至5408的处理并行地执行的处理中,在S409中,使服务器GPU204执行对于与S401中更新的视点信息对应的游戏画面的后段绘制处理,生成最终提供至PC100的游戏画面(提供游戏画面)。具体而言,服务器CPU201确定适用于对于进行绘制的游戏画面的三维场景的光源,并将该光源的属性及强度等信息传输至服务器GPU204。服务器GPU204使用前段的绘制处理中生成的各种中间值映射图,一面集中各种光源进行阴影处理(光源效果的应用),一面再次绘制游戏画面中所含的绘制目标,使提供游戏画面生成在服务器VRAM205的帧缓冲器。
[0097]在S410中,服务器CPU201判断S407的处理即对于当前帧的编码判断处理是否结束。服务器CPU201在判断编码判断处理结束的情形时,将处理转移至S411,在判断未结束的情形时,使处理重复进行本步骤的处理。
[0098]在S411中,服务器CPU201将提供游戏画面与S404中的区块分割同样地进行区块分割,并执行编码处理,生成编码动画数据。
[0099]<编码处理>
[0100]此处,参照图6,对于本实施方式的动画分发服务器200中执行的编码处理进行详细说明。
[0101]在S601中,服务器CPU201选择提供游戏画面的区块中的未编码的区块。
[0102]在S602中,服务器CPU201参照对于需要编码判断的深度映射图进行的编码判断处理的结果,判断是否对于选择区块执行帧间编码。服务器CPU201在判断对于选择区块执行帧间编码的情形时,将处理转移至S603,在判断不执行帧间编码的情形时,将处理转移至S605。
[0103]在S603中,服务器CPU201自当前帧的前I个帧中所绘制的游戏画面(前一帧画面)内与选择区块对应的区域的图像,生成用于帧间编码的参照图像(参照数据)。具体而言,月艮务器CPU201首先例如自服务器RAM203读出前一帧中提供至PC100的游戏画面(过去游戏画面)。接着,服务器CPU201自过去游戏画面撷取对于选择区块确定的与相关性最高区域对应的区域的图像作为参照图像。
[0104]在S604中,服务器CPU201生成选择区块图像与参照图像的差值作为差值图像,并设定为编码对象图像。具体而言,服务器CPU201通过自选择区块图像的各像素值减去参照图像的对应的像素的像素值,而生成差值图像(pblock)。
[0105]另一方面,在S602中判断不执行帧间编码的情形时,服务器CPU201在S605中,将选择区块的图像设定为编码对象图像。
[0106]在S606中,服务器CPU201将编码对象图像传输至服务器编码部206,执行DCT处理而转换成频域的数据。而且,服务器CPU201通过使服务器编码部206将由转换所得的频域的数据进行运行长度编码,而生成选择区块的编码数据。
[0107]在S607中,服务器CPU201判断是否对于所绘制的游戏画面的所有区块执行了S602至S606的处理。服务器CPU201在判断存在尚未执行处理的区块的情形时,使处理返回至S601,在判断不存在尚未执行处理的区块的情形时,结束本编码处理。
[0108]服务器CPU201在自所绘制的游戏画面生成编码动画数据后,在S412中将该编码动画数据传输至服务器通信部208,并对PC100进行发送,从而结束当前帧的动画分发处理。
[0109]这样一来,在本实施方式的动画分发服务器200中,可利用通过多阶段绘制处理进行对PC100提供的游戏画面的生成,而在进行最终游戏画面绘制的后段绘制处理中,使用前段绘制处理中生成的深度映射图,通过坐标转换推断被认为与编码区块相关性最高的区域。因此,在进行最终游戏画面绘制后,可不决定编码方法而转移至编码处理,故而,可缩短游戏画面对PC100进行提供所需的时间。而且,无需在总循环式中计算相关度而确定被认为相关性最高的区域,从而可减少后段绘制处理中对于所有编码区块的相关运算的运算量。
[0110]《动画播放处理》
[0111]其次,对于本实施方式在PC100中执行的动画播放处理,使用图7的流程图,说明其具体的处理。与该流程图对应的处理可通过CPUlOl将例如存储在R0M102的对应的处理程序读出,且在RAM103中展开执行而实现。另外,本动画播放处理是以例如在PC100中执行接收动画分发服务器200所提供的游戏内容的应用程序时开始,且在游戏的每一帧中反复地执行的情况进行说明。
[0112]在S701中,CPU101判断通信部105是否自动画分发服务器200接收到预处理信息。CPU101在判断自动画分发服务器200接收到预处理信息的情形时,将处理转移至S702,在判断未接收到预处理信息的情形时,重复进行本步骤的处理。
[0113]在S702中,CPU101参照预处理信息,执行准备当前帧的游戏画面解码所需的参照数据的解码预处理。
[0114]<解码预处理>
[0115]此处,使用图8的流程图,对本实施方式的PC100中执行的解码预处理进行详细说明。
[0116]在S801中,CPU101选择当前帧中所接收的游戏画面的区块中未实施使用的编码方式判定的区块。
[0117]在S802中,CPU101参照预处理信息,判断是否对于选择区块实施帧间编码。具体而言,CPU101判断确定选择区块的信息是否包含在预处理信息中。CPU101在判断对于选择区块实施帧间编码的情形时,将处理转移至S803,在判断未实施帧间编码的情形时,将处理转移至S804。
[0118]在S803中,CPU101自当前帧的前1个帧中所解码的游戏画面(前一帧画面)撷取用于对于选择区块的解码的参照图像(参照数据)。具体而言,CPU101参照预处理信息中所包含的对于选择区块建立关联的运动向量,确定前一帧画面中选择区块解码中所参照的区域,并撷取该区域图像作为参照图像。
[0119]在S804中,CPU101判断是否对于当前帧中所接收的游戏画面的所有区块执行了S802至S803的处理。服务器CPU201在判断存在尚未执行处理的区块的情形时,使处理返回至S801,在判断不存在尚未执行处理的区块的情形时,结束本解码预处理。
[0120]这样一来,在本实施方式的PC100中,可通过参照在编码动画数据之前所接收的预处理信息,而在编码动画数据的接收后所进行的解码处理之前,准备解码处理中使用的参照数据。
[0121]在S703中,CPU101判断通信部105是否自动画分发服务器200接收到编码动画数据。CPU101在判断自动画分发服务器200接收到编码动画数据的情形时,将处理转移至S704,在判断未接收到编码动画数据的情形时,重复进行本步骤的处理。
[0122]在S704中,CPU101将接收的编码动画数据传输至解码部104,执行解码处理,生成游戏画面。具体而言,解码部104通过对于编码动画数据的各区块进行运行长度编码数据行解码、逆DCT处理,而生成当前帧的游戏画面的区块数据。而且,对于进行了帧间编码的区块,通过与所述解码预处理中生成的参照数据相加,而使解码部104生成当前帧的游戏画面。
[0123]在S705中,CPU101将S704中生成的当前帧的游戏画面传输至显示部106,并使其显示在对应的显示区域,从而结束当前帧的动画播放处理。
[0124]这样一来,本实施方式的动画分发系统中的动画分发服务器200可在编码动画数据生成结束而进行分发之前,将编码方法信息传递至作为动画播放装置的PC100。S卩,可在编码动画数据接收前,准备参照图像作为预处理,故而,可缩短自接收编码动画数据后所进行的解码处理。即,与参照所接收的编码动画数据中所含的运动向量,自前一帧图像生成用于经帧间编码的区块解码的参照图像的以往方法相比,本实施方式的动画分发方法可缩短至经解码的动画图像播放为止所需的时间。
[0125]S卩,作为动画分发系统整体,成为图9所示那样的处理流程,从而可通过应用本发明,而实现动画分发服务器200中的动画编码处理有效化、及PC100中的动画解码处理有效
化两者。
[0126]另外,所述动画分发处理是以对于当前帧画面的所有区块进行编码判断之后,将预处理信息发送至PCioo的情况进行了说明,但可容易地想像预处理信息的发送时序并不限于此。即,也可在获得是否对于各区块执行帧间编码的判断结果的情形时,不等待获得对于所有区块的判断结果,服务器CPU201便可每次均将该区块的预处理信息发送至PC100。而且,在此情形时,若PC100的CPUlOl接收预处理信息,则生成该预处理信息中所确定的区块的参照图像,由此,可期待动画播放处理中的进一步有效化。
[0127]如以上所说明,本实施方式的动画分发服务器可将通过绘制处理而获得的画面高速且有效地进行动画编码。具体而言,动画分发服务器使用决定即将进行绘制的画面的视点信息,通过至少2阶段绘制处理而绘制分发画面。该绘制处理是在后段绘制处理中,参照前段绘制处理中生成的深度映射图,实施分发画面的绘制。动画分发服务器是在第I画面的后段绘制处理的执行中选择深度映射图用于编码判断,且对于设定的每一区块,参照对于较第I画面之前绘制的第2画面所生成的深度映射图,判断是否执行帧间编码。动画分发服务器在第I画面的后段绘制处理结束后,根据该判断的结果进行编码,并将编码动画数据发送至外部装置。而且,该判断的结果是在第I画面的编码动画数据生成结束之前发送至外部装置。
[0128][实施方式2]
[0129]而且,实际上在如上所述那样进行经由通信的游戏内容提供的情形时,在提供所需的基础建设配备中需要特定的成本。其原因在于:假定伴随提供内容的动画分发服务器200的故障或连接终端数增加而出现提供品质下降等风险,就耐故障性及耐响应性的观点而言,将设置多个动画分发服务器200。而且,一般而言,对于用户端设备延迟最少即响应较佳的服务器以传输路径的观点而言,考虑地理上最近的服务器。因此,尤其在进行全球性内容提供的情形时,可考虑将提供服务器配备在多个国家,进而若考虑到时区的存在,则将多个服务器配备在I个国家作为数据中心。即,由于基础建设配备可设想巨大的成本,故而,就现实性而言,设计为数据中心的提供以多个内容共享数据中心的资源,而并非对于每一内容进行。
[0130]另一方面,不仅此种服务的利用,网络利用集中的时间带在各国也存在相同的倾向。具体而言,日本的网络利用的通信量峰值存在于19点至23点之间。即,认为即便如上所述,考虑时区地配置数据中心,也在通信量增大的时间带中,存在于该时区的用户端设备集中于地理上最近的数据中心。
[0131]本实施方式是说明根据对于提供的内容所请求的即时性及内容是否进行如实施方式I那样的至少2阶段绘制处理,较佳地进行数据中心间的负载平衡的方法。
[0132]《动画分发系统的构成》
[0133]图11是表示本实施方式的动画分发系统的系统构成的图。另外,在本实施方式的动画分发系统中,PC100及动画分发服务器200各自的构成是设为与所述实施方式1相同,并省略说明。
[0134]本实施方式的动画分发系统包含中央服务器1100。中央服务器1100是经由网络300而至少与PC100可通信地连接。中央服务器1100在PC100各自提供内容时决定应连接的动画分发服务器200,并将该服务器的信息提供至对应的PC100。而且,本实施方式是说明中央服务器1100作为应连接的数据中心,将确定1个动画分发服务器200的信息提供至PC100,但本发明的实施并不限于此。例如,在数据中心包含多个动画分发服务器200而构成的情形时,中央服务器1100可以是提供确定其中1个动画分发服务器200的信息的构成,也可以是提供仅确定数据中心(综合管理存在于同一位置的动画分发服务器200的单位)的信息的构成。在后者的情形时,例如在数据中心中,具备分配对于内容提供请求进行提供的中心内的适当的动画分发服务器200,且使其连接在对应的PC100的管理装置即可。
[0135]<中央服务器1100的构成>
[0136]图12是表示本实施方式的中央服务器1100的功能构成的框图。
[0137]中央CPU1101是控制中央服务器1100所具有的各区块的运行。具体而言,中央CPU1101通过将存储在中央R0M1102中的各区块的运行程序读出,且在中央RAM1103中展开执行,而控制各区块运行。
[0138]中央R0M1102例如是可重写的非挥发性存储器。中央R0M1102不仅存储中央服务器1100所具有的各区块的运行程序,而且存储各区块运行所需的参数等。而且,在本实施方式中,中央R0M1102分别对于可由网络300上的动画分发服务器200提供的多个游戏内容,至少存储
[0139].对于内容所请求的对于用户操作输入的响应性能的信息
[0140].在内容绘制中是否使用Deferred Rendering的信息
[0141]作为管理信息。中央RAM1103是挥发性存储器。中央RAM1103不仅用作各区块的运行程序的展开区域,也用作暂时存储在各区块运行中输出的中间数据等的存储区域。
[0142]中央通信部1104是中央服务器1100所具有的通信接口。中央通信部1104在与经由网络300而连接的PC100等其他设备之间进行数据收发。与通信部105及服务器通信部208同样地,中央通信部1104进行数据收发时所必需的数据转换等。
[0143]《开始时处理》
[0144]以下,参照图13的流程图,对开始游戏内容的提供请求时,本实施方式的PC100中所执行的开始时处理进行详细说明。另外,本开始时处理是以例如在PC100中执行可接收多个游戏内容的服务提供的入口应用程序(portal app 1 ication)时开始的情况进行说明。
[0145]在S1301中,CPU101对中央服务器1100请求用以连接在正提供游戏内容的动画分发服务器200的信息即连接对象信息。连接对象信息可以是例如正进行服务提供的动画分发服务器200的IP地址表,也可以是中央服务器1100预先保持在中央R0M1102的信息。
[0146]在S1302中,CPU101根据连接对象信息的提供请求,参照所接收的连接对象信息,对存在于网络300上的多个动画分发服务器200分别执行连接测试。在连接测试中,CPU 101测量在与对象的动画分发服务器200的通信中产生的通信延迟量,且与该服务器的识别信息建立关联地将通信延迟量的信息作为清单存储在RAM103。CPU101是若对于连接对象信息中所含的动画分发服务器200,通信延迟量的测量结束,则将处理转移至S1303。[0147]在S1303中,CPU101判断是否实施了开始提供请求的游戏内容的选择。具体而言,CPU101利用是否自操作输入部107接收到通过用户选择所期望提供的游戏内容而输出的控制讯号进行判断。CPU101在判断实施了开始提供请求的游戏内容的选择的情形时,将处理转移至S1304,在判断未实施开始提供请求的游戏内容的选择的情形时,重复进行本步骤的处理。
[0148]在S1304中,CPU101将指定提供请求的游戏内容的信息、及S1302中生成的每一动画分发服务器200的通信延迟量的清单发送至中央服务器1100。
[0149]在S1305中,CPU101判断是否自中央服务器1100接收到指定进行游戏内容提供的动画分发服务器200的服务器指定信息。服务器指定信息是通过在中央服务器1100中执行下述提供服务器决定处理而生成。CPU101在判断接收到指定信息的情形时,将处理转移至S1306,在判断未接收到指定信息的情形时,重复进行本步骤的处理。
[0150]在S1306中,CPU101可通过对由服务器指定信息指定的动画分发服务器200发送所选择的游戏内容的提供请求,而使动画分发服务器200开始动画分发处理。
[0151]《提供服务器决定处理》
[0152]其次,参照图14的流程图,详细说明本实施方式的中央服务器1100中执行的决定提供PC100中指定的游戏内容的动画分发服务器200的提供服务器决定处理。另外,本提供服务器决定处理是以中央服务器1100启动时开始的情况进行说明。
[0153]在S1401中,中央CPU1101判断是否自网络300上的PC100接收到指定提供请求的游戏内容的信息(内容指定信息)、及该PC100与各动画分发服务器200的通信延迟量的清单。中央CPU1101在判断接收到内容指定信息及通信延迟量清单的情形时,将其等与识别发送该信息的PC100 (对象PC)的信息一并存储在中央RAM1103,并将处理转移至S1402。识别发送信息的PC100的信息例如可以是该PC的IP地址。而且,中央CPU1101在判断未接收到内容指定信息及通信延迟量清单的情形时,重复进行本步骤的处理。
[0154]在S1402中,中央CPU1101判断通过内容指定信息而指定的内容(指定内容)是否指定为对于用户的操作输入请求响应较高的即时性较高的内容。具体而言,中央CPU1101参照存储在中央R0M1102的管理信息,判断指定内容是否指定为即时性较高的内容。中央CPU1101在判断指定内容指定为即时性较高的内容的情形时,将处理转移至S1403,在判断未指定的情形时,将处理转移至S1406。
[0155]在S1403中,中央CPU1101参照管理信息,判断指定内容是否为使用DeferredRendering绘制分发画面的内容。中央CPU1101在判断指定内容为使用DeferredRendering绘制分发画面的内容的情形时,将处理转移至S1405,在判断为不使用DeferredRendering而绘制分发画面的内容的情形时,将处理转移至S1404。
[0156]在S1404中,中央CPU1101参照所接收的通信延迟量清单,选择与对象PC的数据通信中通信延迟量低于特定的阈值(第1阈值)的1个动画分发服务器200。接着,中央CPU1101将确定所选择的动画分发服务器200的信息作为指定信息发送至对象PC,且使处理返回至S1401。
[0157]另一方面,在S1403中判断指定内容为使用Deferred Rendering绘制分发画面的内容的情形时,中央CPU1101在S1405中,参照所接收的通信延迟量清单,选择通信延迟量低于特定的阈值(第2阈值)且高于第1阈值的1个动画分发服务器200。其原因在于:在影响画面的生成中使用有Deferred Rendering的情形时,如实施方式I中所说明,可通过利用前段绘制处理中生成的深度缓冲器,而缩短编码及解码所需的处理时间。即,即便为请求即时性的内容,也在进行至少2阶段绘制处理,生成分发画面的情形时预测处理缩短,故而,可相较进行I阶段绘制处理的内容,容许通信延迟量。中央CPU1101将确定以此方式选择的动画分发服务器200的信息作为指定信息发送至对象PC,从而使处理返回至S1401。
[0158]而且,在S1402中判断指定内容并未指定为即时性较高的内容的情形时,中央CPU1101在S1406中,参照所接收的通信延迟量清单,选择通信延迟量低于特定的阈值(第3阈值)且大于第2阈值的I个动画分发服务器200。接着,中央CPU1101将确定所选择的动画分发服务器200的信息作为指定信息发送至对象PC,从而使处理返回至S1401。
[0159]另外,第I阈值及第2阈值是以满足对内容请求的即时性的方式决定,而且,第3阈值是基于可容许的通信延迟量而决定。3个阈值可以是由每一内容所规定者,也可以是不取决于内容而共用地规定的阈值。而且,3个阈值也可以是根据对象PC所存在的地理位置而规定的阈值。
[0160]这样一来,本实施方式的动画分发系统可根据与服务器的通信延迟量、及对内容请求的即时性,决定提供PC100中所选择的内容的动画分发服务器200。而且,进而,可通过根据内容是否为利用至少2阶段绘制处理生成分发画面的内容,选择较佳的动画分发服务器200,而效率良好地进行负载平衡。
[0161]另外,本实施方式是以根据与服务器的通信延迟量及由内容请求的即时性,决定提供内容的服务器的情况进行说明,但本发明的实施并不限于此。例如,也可以是根据发送内容提供请求的用户端设备及服务器的地理性位置进行缩小范围等进而组合复合条件,进行动画分发服务器200决定的构成。
[0162]本发明并不受所述实施方式限制,可在不脱离本发明的精神及范围的情况下进行各种变更及变形。因此,为了公开本发明的范围,而随附以下技术方案。
[0163]本申请要求了 2012年4月12日提交的、申请号为2012-091357的日本专利申请的优先权,其全部内容通过引用结合在本申请中。
【权利要求】
1.一种动画分发服务器,其特征在于具有:获取构件,依序获取用以决定即将进行绘制的画面的视点信息;绘制构件,使用由所述获取构件获取的所述视点信息,通过至少2阶段的绘制处理而绘制分发画面,且在前段的绘制处理中,生成将在后段的绘制处理中进行参照的包含深度映射图的特定频道的中间值映射图,并且在所述后段的绘制处理中参照该中间值映射图,绘制所述分发画面;分割构件,在针对第1画面的所述后段的绘制处理的执行期间,获取对于所述第1画面而生成的所述中间值映射图中的深度映射图,且将所述深度映射图分割成多个区块;确定构件,对于所述多个区块的各区块,确定所述第1画面之前绘制的第2画面的深度映射图中的与该区块对应的区域;编码构件,在所述第1画面的所述后段的绘制处理结束后,对于所述多个区块中与由所述确定构件确定的所述对应的区域的相似度不小于阈值的区块,在所述第1画面的该区块的图像与所述第2画面 的所述对应的区域的图像之间执行帧间编码,且对于所述多个区块中与由所述确定构件确定的所述对应的区域的相似度小于阈值的区块,对所述第1画面的该区块的图像执行帧内编码,由此,生成编码动画数据;以及发送构件,对外部装置发送数据;所述发送构件:在利用所述编码构件的所述第1画面的各区块的编码动画数据的生成结束前,对于所述多个区块中与所述对应的区域的相似度不小于阈值的区块,将确定该区块及对于该区块的所述对应的区域的确定信息发送至所述外部装置,且在利用所述编码构件的所述第1画面的各区块的编码动画数据的生成结束后,将该编码动画数据发送至所述外部装置。
2.根据权利要求1所述的动画分发服务器,其特征在于:所述确定构件包含:第1计算构件,对于所述多个区块的各区块,基于用于所述第1画面绘制的第1视点信息与对于所述第1画面而生成的深度映射图,计算出在该区块的顶点所绘制的绘制目标的三维坐标;及转换构件,对于所述多个区块的各区块,使用用于所述第2画面绘制的第2视点信息,将通过所述第1计算构件计算出的三维坐标转换成所述第2画面中的屏幕坐标,确定所述对应的区域。
3.根据权利要求1或2所述的动画分发服务器,其特征在于:所述确定信息是三维向量。
4.一种动画播放装置,自动画分发服务器依序获取1帧的画面经编码的编码动画数据,并将其解码进行播放,其特征在于具有:第1接收构件,接收对于第1画面经编码的第1编码动画数据确定经帧间编码的区块及用于该区块解码的参照数据的确定信息;解码预处理构件,基于由所述第1接收构件接收的所述确定信息,自将所述第1编码动画数据之前所获取的第2编码动画数据解码所得的第2画面,生成用于所述第1编码动画数据解码的关于经所述帧间编码的各区块的所述参照数据;第2接收构件,在所述确定信息接收后,自所述动画分发服务器接收所述第1编码动画数据;以及解码构件,使用通过所述解码预处理构件而生成的关于经所述帧间编码的各区块的所述参照数据,将由所述第2接收构件接收的所述第1编码动画数据解码进行播放。
5.根据权利要求4所述的动画播放装置,其特征在于:利用所述第1接收构件的所述确定信息的接收是在利用所述第2接收构件的所述第1编码动画数据的接收之前进行。
6.—种动画分发服务器的控制方法,其特征在于具有:获取步骤,动画分发服务器的获取构件依序获取用以决定即将进行绘制的画面的视点信息;绘制步骤,所述动画分发服务器的绘制构件使用所述获取步骤中获取的所述视点信息,通过至少2阶段的绘制处理而绘制分发画面,且在前段的绘制处理中,生成将在后段的绘制处理中进行参照的包含深`度映射图的特定频道的中间值映射图,并且在所述后段的绘制处理中参照该中间值映射图,绘制所述分发画面;分割步骤,所述动画分发服务器的分割构件在针对第1画面的所述后段的绘制处理的执行期间,获取对于所述第1画面而生成的所述中间值映射图中的深度映射图,且将所述深度映射图分割成多个区块;确定步骤,所述动画分发服务器的确定构件对于所述多个区块的各区块,确定所述第1画面之前绘制的第2画面深度映射图中与该区块对应的区域;编码步骤,所述动画分发服务器的编码构件在所述第1画面的所述后段的绘制处理结束后,对于所述多个区块中与由所述确定构件确定的所述对应的区域的相似度不小于阈值的区块,在所述第1画面的该区块图像与所述第2画面的所述对应的区域的图像之间执行帧间编码,且对于所述多个区块中与由所述确定构件确定的所述对应的区域的相似度小于阈值的区块,对所述第1画面的该区块图像执行帧内编码,由此,生成编码动画数据 '及发送步骤,所述动画分发服务器的发送构件对外部装置发送数据;所述发送构件是在所述发送步骤中,在所述编码步骤中所述第1画面的各区块的编码动画数据生成结束前,对于所述多个区块中与所述对应的区域的相似度不小于阈值的区块,将确定该区块及对于该区块的所述对应的区域的确定信息发送至所述外部装置,且在所述编码步骤中所述第1画面的各区块的编码动画数据生成结束后,将该编码动画数据发送至所述外部装置。
7.—种动画播放装置的控制方法,自动画分发服务器依序获取1帧的画面经编码的编码动画数据,并将其解码进行播放,其特征在于具有:第1接收步骤,所述动画播放装置的第1接收构件接收对于第1画面经编码的第1编码动画数据,确定经帧间编码的区块及用于该区块解码的参照数据的确定信息;解码预处理步骤,所述动画播放装置的解码预处理构件基于所述第1接收步骤中接收的所述确定信息,自将所述第1编码动画数据之前所获取的第2编码动画数据解码所得的第2画面,生成用于所述第1编码动画数据解码的关于经所述帧间编码的各区块的所述参照数据; 第2接收步骤,所述动画播放装置的第2接收构件自所述动画分发服务器接收所述第I编码动画数据 '及 解码步骤,所述动画播放装置的解码构件使用所述解码预处理步骤中生成的关于经所述帧间编码的各区块的所述参照数据,将所述第2接收步骤中接收的所述第I编码动画数据解码进行播放。
8.一种程序,用以使计算机作为根据权利要求1至3中任一项所述的动画分发服务器的各构件发挥功能。
9.一种程序,用以使计算机作为根据权利要求4或5所述的动画播放装置的各构件发挥功能。
10.一种计算机可读取的记录介质,记录有根据权利要求8或9项所述的程序。
11.一种动画分发系统,具有发送所绘制的I帧的分发画面经编码的编码动画数据的动画分发服务器、及依序获取该编码动画数据并将其解码进行播放的动画播放装置, 其特征在于: 所述动画分发服务器具有: 获取构件,依序获取用以决定即将进行绘制的画面的视点信息; 绘制构件,使用由所述获取构件获取的所述视点信息,通过至少2阶段的绘制处理而绘制所述分发画面,且在前段的绘制处理中,生成将在后段的绘制处理中进行参照的包含深度映射图的特定频道的中间值映射图,并且在所述后段的绘制处理中参照该中间值映射图,绘制所述分发画面; 分割构件,在针对第I画面的所述后段的绘制处理的执行期间,获取对于所述第I画面而生成的所述中间值映射图中的深度映射图,且将所述深度映射图分割成多个区块; 确定构件,对于所述多个区块的各区块,确定所述第I画面之前绘制的第2画面的深度映射图中与该区块对应的区域; 编码构件,在所述第I画面的所述后段的绘制处理结束后,对于所述多个区块中与由所述确定构件确定的所述对应的区域的相似度不小于阈值的区块,在所述第I画面的该区块图像与所述第2画面的所述对应的区域的图像之间执行帧间编码,且对于所述多个区块中与由所述确定构件确定的所述对应的区域的相似度小于阈值的区块,对所述第I画面的该区块图像执行帧内编码,由此,生成第I编码动画数据;及发送构件,其对所述动画播放装置发送数据; 所述动画播放装置包括: 第I接收构件,接收对于所述第I编码动画数据,确定经帧间编码的区块及用于该区块解码的参照数据的确定信息; 解码预处理构件,基于由所述第I接收构件接收的所述确定信息,自将相较所述第I编码动画数据之前自所述动画分发服务器获取的第2编码动画数据解码所得的所述第2画面,生成用于所述第I编码动画数据解码的关于经所述帧间编码的各区块的所述参照数据; 第2接收构件,在所述确定信息接收后,自所述动画分发服务器接收所述第I编码动画数据 '及解码构件,使用通过所述解码预处理构件而生成的关于经所述帧间编码的各区块的所述参照数据,将由所述第2接收构件接收的所述第1编码动画数据解码进行播放;所述发送构件是在所述编码构件对所述第1画面的各区块的编码结束前,对于所述多个区块中与所述对应的区域的相似度不小于阈值的区块,将确定该区块及对于该区块的所述对应的区域的确定信息发送至所述动画播放装置,且在所述编码构件对所述第1画面的各区块的编码结束后,将所述第1编码动画数据发送至所述动画分发服务器。
12.根据权利要求11所述的动画分发系统,其特征在于:所述动画分发服务器可生成多个不同种类内容的所述分发画面,所述动画分发系统包含多个所述动画分发服务器、及决定对所述动画播放装置发送所述分发画面的1个所述动画分发服务器的选择装置,所述选择装置具有:信息接收构件,自所述动画播放装置,接收关于所述多个动画分发服务器的各个动画分发服务器的通信延迟量信息、及指定要求提供的内容的指定内容信息;决定构件,基于所述通信延迟量信息及所述指定内容信息,决定所述1个动画分发服务器;及通知构件,将确定通过所述决定构件而决定的所述1个动画分发服务器的信息发送至所述动画播放装置;所述决定构件是在所述指定内容是规定所要求的响应性较高的内容的情形时,将通信延迟量小于第1阈值的所述动画分发服务器决定为所述1个动画分发服务器,在所述指定内容不是规定所要求的响应性较高的内容的情形时,将通信延迟量大于所述第1阈值的所述动画分发服务器决定为所述1个动画分发服务器,且所述第1及第2接收构件自由所述通知构件通知的所述1个动画分发服务器接收所述确定信息或所述第1编码动画数据。
13.根据权利要求12所述的动画分发系统,其特征在于:所述决定构件在所述指定内容为规定所要求的响应性较高的内容的情形时,如果是通过所述至少2阶段的绘制处理而绘制所述分发画面的内容时,将通信延迟量小于所述第1阈值且大于第2阈值的所述动画分发服务器决定为所述1个动画分发服务器,且如果不是通过所述至少2阶段的绘制处理而绘制所述分发画面的内容时,将通信延迟量小于所述第2阈值的所述动画分发服务器决定为所述1个动画分发服务器。
【文档编号】H04N13/00GK103650001SQ201380001039
【公开日】2014年3月19日 申请日期:2013年4月4日 优先权日:2012年4月12日
【发明者】岩崎哲史 申请人:史克威尔·艾尼克斯控股公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1