CN112386906B - 媒体资源播放方法和装置、存储介质及电子设备 - Google Patents
媒体资源播放方法和装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN112386906B CN112386906B CN202011304033.7A CN202011304033A CN112386906B CN 112386906 B CN112386906 B CN 112386906B CN 202011304033 A CN202011304033 A CN 202011304033A CN 112386906 B CN112386906 B CN 112386906B
- Authority
- CN
- China
- Prior art keywords
- picture frame
- playing
- key
- speed value
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/358—Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种云技术场景下的媒体资源播放方法和装置、存储介质及电子设备,具体的,还涉及数据库、云安全等技术。其中,该方法包括:响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令;从动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,关键画面帧中的受控虚拟角色正在执行目标动作;根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度;按照播放速度播放动画媒体资源。本发明解决了由于媒体资源播放过程中需要等待网络延迟所导致的播放画面卡顿的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种媒体资源播放方法和装置、存储介质及电子设备。
背景技术
在很多网络应用场景中,往往都会采用客户端向服务器进行实时媒体资源播放的机制。例如以网络游戏为例,在玩家A触发客户端中所显示的用于控制虚拟角色a执行目标动作的控制按键的情况下,客户端会将该按键的按键信息发送给服务器,以使服务器将虚拟角色a执行目标动作的内容,及时同步给网络游戏中的其他玩家。
目前在相关技术中,客户端在发送上述按键信息后,通常还需要等待接收服务器返回的对该按键信息的确认响应,再播放虚拟角色a执行目标动作的动画。也就是说,在客户端中触发控制操作到播放动画的过程中,由于网络环境的波动将无法避免网络延迟的问题:去程延迟,回程延迟。使得客户端中所展示的画面出现延迟现象,从而导致动画播放卡顿的问题,使得用户体验变差。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种媒体资源播放方法和装置、存储介质及电子设备,以至少解决由于媒体资源播放过程中需要等待网络延迟所导致的播放画面卡顿的技术问题。
根据本发明实施例的一个方面,提供了一种媒体资源播放方法,包括:响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,上述动画媒体资源中包括用于展示上述受控虚拟角色执行上述目标动作的全过程的连续多帧画面;从上述动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,上述关键画面帧中的上述受控虚拟角色正在执行上述目标动作;根据上述关键画面帧所在的上述关键播放位置及上述客户端所在网络环境的网络延时,确定上述动画媒体资源的播放速度;按照上述播放速度播放上述动画媒体资源。
根据本发明实施例的另一方面,还提供了一种媒体资源播放装置,包括:获取单元,用于响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,上述动画媒体资源中包括用于展示上述受控虚拟角色执行上述目标动作的全过程的连续多帧画面;第一确定单元,用于从上述动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,上述关键画面帧中的上述受控虚拟角色正在执行上述目标动作;第二确定单元,用于根据上述关键画面帧所在的上述关键播放位置及上述客户端所在网络环境的网络延时,确定上述动画媒体资源的播放速度;
播放单元,用于按照上述播放速度播放上述动画媒体资源。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述媒体资源播放方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过上述计算机程序执行上述的媒体资源播放方法。
在本发明实施例中,响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,上述动画媒体资源中包括用于展示上述受控虚拟角色执行上述目标动作的全过程的连续多帧画面;从上述动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,上述关键画面帧中的上述受控虚拟角色正在执行上述目标动作;根据上述关键画面帧所在的上述关键播放位置及上述客户端所在网络环境的网络延时,确定上述动画媒体资源的播放速度;按照上述播放速度播放上述动画媒体资源,通过在操作后,无需等服务器的确认响应,直接开始播放动画,但按照慢速播放,直至播放到关键帧,进而在保证媒体资源执行逻辑正常的情况下,仍可同步执行媒体资源播放以及服务器认证,达到了降低网络延迟对播放媒体资源的影响的目的,从而实现了提高媒体资源的播放流畅度的技术效果,进而解决了由于媒体资源播放过程中需要等待网络延迟所导致的播放画面卡顿的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的媒体资源播放方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的媒体资源播放方法的流程图的示意图;
图3是根据本发明实施例的一种可选的媒体资源播放方法的示意图;
图4是根据本发明实施例的另一种可选的媒体资源播放方法的示意图;
图5是根据本发明实施例的另一种可选的媒体资源播放方法的示意图;
图6是根据本发明实施例的另一种可选的媒体资源播放方法的示意图;
图7是根据本发明实施例的另一种可选的媒体资源播放方法的示意图;
图8是根据本发明实施例的一种可选的媒体资源播放装置的示意图;
图9是根据本发明实施例的另一种可选的媒体资源播放装置的示意图;
图10是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
云计算(cloud computing)指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing)、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。
随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
数据库(Database),简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
数据库管理系统(Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML(Extensible Markup Language,简称可扩展标记语言);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如SQL(结构化查询语言(Structured Query Language)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。
云安全(Cloud Security)是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1.云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2.安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3.云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
根据本发明实施例的一个方面,提供了一种媒体资源播放方法,可选地,作为一种可选的实施方式,上述媒体资源播放方法可以但不限于应用于如图1所示的环境中。
根据本发明实施例的一个方面,提供了一种媒体资源播放方法,可选地,作为一种可选的实施方式,上述媒体资源播放方法可以但不限于应用于如图1所示的硬件环境中的媒体资源播放系统中,其中,该媒体资源播放系统可以包括但不限于用户设备102、网络110、服务器112。用户设备102中运行有使目标用户账号登录的(帧同步游戏应用)客户端(如图1所示界面为对战类游戏应用客户端,目标用户账号控制虚拟角色A,以及与目标用户账号非同一阵营的虚拟角色B)。上述用户设备102中包括显示器108,处理器106及存储器104。显示器108用于呈现上述对战类游戏应用客户端中的游戏场景,还用于提供人机交互接口接收对人机交互界面执行的人机交互操作,以触发控制操作;处理器106用于响应控制操作,控制虚拟角色A执行对应的动作。存储器104用于存储上述帧同步游戏应用客户端所控制的虚拟角色A的属性信息、上述虚拟角色A所持有的道具的属性数据,以及媒体资源,其中,媒体资源包括与受控虚拟角色A所要执行对应动作匹配的动画媒体资源。
此外,服务器112中包括数据库114及处理引擎116,数据库114中用于存储帧同步游戏应用的关键数据。处理引擎116用于携带有控制操作的同步指令,执行检验操作。
具体过程如以下步骤:
步骤S102-S106,在用户设备102中的游戏应用客户端上运行一局游戏任务的过程中,获取控制操作,其中,该控制操作用于指示游戏应用客户端控制的虚拟角色A执行对应动作。获取并在显示器108上播放与控制操作对应的动画媒体资源,在此同时,将携带有控制操作的操作同步指令通过网络110发送至服务器,具体的,获取并在显示器108上播放与控制操作对应的动画媒体资源包括:获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,进而从动画媒体资源中确定出关键画面帧所在的关键播放位置,并根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度,从而按照播放速度在显示器108上播放动画媒体资源;
步骤S108-S114,服务器112接收操作同步指令,并执行验证操作。进一步,在由服务器对控制操作执行验证操作,且验证通过的情况下,生成验证结果,并存储至数据库114中,同时将验证结果通过网络110返回用户设备102,以使用户设备102更新播放速度,以在显示器108上继续播放动画媒体资源。
可选地,在本实施例中,上述终端设备可以是配置有目标客户端的终端设备,可以包括但不限于以下至少之一:手机(如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视等。目标客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端等。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络。上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器。上述仅是一种示例,本实施例中对此不作任何限定。
可选地,作为一种可选的实施方式,如图2所示,上述媒体资源播放方法包括:
S202,响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,动画媒体资源中包括用于展示受控虚拟角色执行目标动作的全过程的连续多帧画面;
S204,从动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,关键画面帧中的受控虚拟角色正在执行目标动作;
S206,根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度;
S208,按照播放速度播放动画媒体资源。
可选地,在本实施例中,上述媒体资源播放方法可以但不限于应用于帧同步游戏应用中,其中,在该帧同步游戏应用中,客户端发送游戏动作(或者客户端直接通过P2P技术发送),客户端根据收到的所有游戏动作来做游戏运算和显示。可选的,游戏往往是一帧一帧渲染在屏幕上的,一般称之为渲染帧,渲染真是不稳定的,如果一帧计算的东西太多或者画面太复杂,这一帧计算的东西太多或画面太复杂,这一帧的时间可能会比较长,同一款游戏在不同的CPI、显卡上,渲染帧也是不尽相同的。二帧同步的帧是指逻辑帧,非渲染帧。例如以2台手机为例,假设上述2台手机需要同步,则意味着上述2台手机的数据是一致的,进而可以但不限于通过保证上述2台手机的起始状态一直、执行操作的时间一致、执行的操作一致,以使得上述2台手机的执行结果一致。再者,假设将游戏固定位1秒20个逻辑帧,即没50ms执行一次逻辑帧,上述2台手机都将在第5帧的时候执行A的移动操作,都将在第12帧的时候执行B的攻击操作,这样上述2台手机无时无刻不保持着一致,即可以但不限于为帧同步。
可选的,上述帧同步游戏应用的数据处理主要依据客户端,服务器往往起到一个转发以及安全验证的作用,但服务器需接受数据,并对该数据进行安全验证,再发送回客户端,在上述过程中,就会产生一个无法避免的网络延迟(例如去程延迟、回程延迟),而动画媒体资源的播放需要在上述过程结束后才能播放,进而动画媒体资源的播放流畅度自然也会被上述无法避免的网络延迟影响。但在本实施例中,利用在服务器执行接收数据、安全验证以及发送数据的同时,即播放动画媒体资源,并基于网络环境的网络延时,调整动画媒体资源,以达到降低动画媒体资源的播放与服务器的验证执行之间的负面牵制的技术目的,从而实现了提高动画媒体资源的播放流畅度的技术效果。
可选地,在本实施例中,该上述媒体资源播放方法还可以但不限于应用于对战类游戏应用中,其中,该游戏应用可以为多人在线战术竞技游戏(Multiplayer OnlineBattle Arena简称为MOBA)应用。上述游戏应用的类型可以包括但不限于以下至少之一:二维(Two Dimension,简称2D)游戏应用、三维(Three Dimension,简称3D)游戏应用、虚拟现实(Virtual Reality,简称VR)游戏应用、增强现实(Augmented Reality,简称AR)游戏应用、混合现实(Mixed Reality,简称MR)游戏应用。以上只是一种示例,本实施例对此不作任何限定。
此外,上述游戏应用客户端控制的虚拟角色可以但不限于为登录该游戏应用客户端的当前玩家所控制的角色对象,这里游戏应用可以为第三人称射击游戏(Third PersonShooting Game,简称TPS)应用,如除当前玩家所控制的虚拟角色之外的第三方角色对象的视角来运行该射击游戏应用,还可以为第一人称射击游戏(First Person Shooting Game,简称FPS)应用,如以当前玩家所控制的虚拟角色的视角来运行该射击游戏应用。
可选地,在本实施例中,上述控制操作可以但不限于为在客户端的人机交互屏幕上触发的控制操作,该控制操作用于控制当前客户端匹配的一个或多个虚拟角色执行目标动作。此外,上述虚拟角色所要执行的目标动作可以但不限于包括以下至少之一:移动操作、攻击操作、防御操作、道具切换操作、道具拾取操作、道具丢弃操作、释放操作等。
进一步举例说明,可选的例如图3所示,获取客户端上的方向轮盘上触发的控制操作,其中,控制操作用于控制虚拟角色A朝向虚线箭头的指向方向,执行移动操作。
可选地,在本实施例中,同时执行受控虚拟角色所要执行的目标动作匹配的动画媒体资源的获取,以及向服务器发送操作同步指令,其中,动画媒体资源可以但不限于存储在客户端的存储器,或服务器的数据库中。
进一步举例说明,可选的基于图3所示场景,继续以图4为例说明,在获取到客户端上的方向轮盘上触发的控制操作的情况下,同时执行动画媒体资源402的获取,以及向服务器404发送操作同步指令,其中,动画媒体资源402中包括用于展示受控虚拟角色A执行目标动作的全过程的连续多帧画面,图4中的动画媒体资源402仅为示例,对动画媒体资源402的画面帧数不做任何限定。
可选地,在本实施例中,动画媒体资源中包括M帧连续的画面,其中,该M帧连续的画面中包括一帧或N帧关键画面帧,M为大于等于2的整数,N为小于M的正整数,从用户侧来说,关键画面帧表现了目标动作的执行画面,从技术侧说,关键画面帧用于表示目标动作是否执行有效,例如在关键画面帧之前的连续的画面都已播放完成的情况下,判断目标动作是否生效,即需判断是否播放该关键画面帧,若播放该关键画面帧,则确定目标动作执行生效,若不播放该关键画面帧,则确定目标动作执行生效,进而从动画媒体资源中确定出关键画面帧所在的关键播放位置,相当于从动画媒体资源中确定目标动作是否生效。
进一步举例说明,可选的例如图5中的图5(a)所示,假设动画媒体资源502用于表示虚拟角色A的执行射击动作(操作),且动画媒体资源502包括10帧(一个圆圈表示一帧,从左至右顺序播放)连续的画面,其中,黑色圆圈表示动画媒体资源502的关键画面帧,此时播放动画媒体资源502的10帧连续的画面中第1帧(箭头所指处)的画面,可理解为播放虚拟角色A执行射击动作前的预备动作(例如抬枪、瞄准等);
再者,可选的基于图5(a)所示场景,继续以图5中的图(5b)所示,此时播放动画媒体资源502的10帧连续的画面中第7帧(箭头所指处)的画面,即播放关键画面帧,可理解为播放虚拟角色A执行射击动作(例如射出子弹等)。
通过本申请提供的实施例,响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,动画媒体资源中包括用于展示受控虚拟角色执行目标动作的全过程的连续多帧画面;从动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,关键画面帧中的受控虚拟角色正在执行目标动作;根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度;按照播放速度播放动画媒体资源,通过在操作后,无需等服务器的确认响应,直接开始播放动画,但按照慢速播放,直至播放到关键帧,进而在保证媒体资源执行逻辑正常的情况下,仍可同步执行媒体资源播放以及服务器认证,达到了降低网络延迟对播放媒体资源的影响的目的,从而实现了提高媒体资源的播放流畅度的技术效果。
作为一种可选的方案,根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度包括:
S1,根据关键画面帧所在关键播放位置,确定动画媒体资源中首帧画面帧播放到关键画面帧的播放时长;
S2,根据播放时长与网络延时,将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值,其中,第二速度值小于第一速度值;
S3,确定从首帧画面帧到关键画面帧之间的画面帧按照第二速度值播放,在关键画面帧之后的画面帧按照第一速度值继续播放。
需要说明的是,根据关键画面帧所在关键播放位置,确定动画媒体资源中首帧画面帧播放到关键画面帧的播放时长;根据播放时长与网络延时,将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值,其中,第二速度值小于第一速度值;确定从首帧画面帧到关键画面帧之间的画面帧按照第二速度值播放,在关键画面帧之后的画面帧按照第一速度值继续播放。
可选地,在本实施例中,通过根据播放时长与网络延时调慢播放速度,以保证在用户侧,关键画面帧的播放不受网络延迟的影响,或受网络延迟的影响程度降到最低。
通过本申请提供的实施例,根据关键画面帧所在关键播放位置,确定动画媒体资源中首帧画面帧播放到关键画面帧的播放时长;根据播放时长与网络延时,将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值,其中,第二速度值小于第一速度值;确定从首帧画面帧到关键画面帧之间的画面帧按照第二速度值播放,在关键画面帧之后的画面帧按照第一速度值继续播放,进而达到了降低网络延迟对关键画面帧的播放影响的技术目的,从而实现了提高关键画面帧的播放平滑性的技术效果。
作为一种可选的方案,根据播放时长与网络延时,将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值包括:
S1,获取播放时长与网络延时的加权求和结果;
S2,获取播放时长与加权求和结果的比值,作为第二速度值;
S3,将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值。
可选地,在本实施例中,为使得服务器响应操作同步指令不太过影响动画媒体资源的播放流畅度,可在等待服务器响应操作同步指令的过程中,放慢动画媒体资源的播放速度,而播放速度的放慢程度,则取决于关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,例如图5(b)所示,在播放关键画面帧之前还有6帧画面,则为了达到在收到服务器响应操作同步指令的回应后,再播放关键画面帧的目的,可放慢上述6帧画面的播放速度。
进一步举例说明,动画时长=时间/采样*帧数,在本实施例中,假设动画时长=1000/30*15=500ms,且Shot Point在第7帧1000/30*7=233ms,其中,Shot Point意思就是射击点,会在这一帧产生一个子弹,这个时间节点是一个动画的关键节点,也是玩家主观上用来判断是不是卡顿的一个条件。比如玩家会感觉到为什么按键过去了这么久角色还不响应我的操作,为什么还不发射子弹等负面影响;
进一步假设现在网络延迟有400毫秒,正常动画速度是1(默认游戏中的动画播放速度都是1)。那么从按键按下起,到创建子弹,需要400+233毫秒。那么如果从按键按下开始立即播放射击动作,则求NewSpeed=233/(400+233)=0.36。也就是说在按键按下开始算起,按0.36的速度播放动画,可以正好匹配到动画第7帧创建子弹。
通过本申请提供的实施例,获取播放时长与网络延时的加权求和结果;获取播放时长与加权求和结果的比值,作为第二速度值;将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值,进而达到了在收到服务器响应操作同步指令的回应后,再播放关键画面帧的目的,从而实现了降低网络延迟对玩家体验的影响的效果。
作为一种可选的方案,在按照播放速度播放动画媒体资源之前,还包括:
S1,获取服务器响应于操作同步指令返回的响应信息;
S2,在响应信息指示控制操作为合法操作的情况下,确定允许按照第二速度值播放首帧画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧;
S3,将受控虚拟角色执行目标动作后得到的动作结果发送给服务器。
需要说明的是,虽然在帧同步场景下,服务器往往作为一个转发设备,用于转发消息或数据,但对于一游戏应用来说,公平的游戏场景也可以提高玩家的粘性,而服务器可以利用响应操作同步指令而返回至客户端的响应信息,以告知客户端当前控制操作是否为合法操作,并在该控制操作为合法操作的情况下,允许客户端按照第二速度值播放首帧画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧,换言之,在该控制操作为合法操作的情况下,允许目标动作生效。
可选地,在本实施例中,若在接收到服务器响应操作同步指令回复的响应信息,且该响应信息指示控制操作不合法的情况下,可以但不限基于画面流畅度的考虑,继续播放关键画面帧以及关键画面帧之后的全部画面,但仍判定目标动作失效,例如射出子弹,但不会对游戏中的任何虚拟角色造成伤害,还可以但不限于不播放关键画面帧以及关键画面帧之后的全部画面,直接判定目标动作失效。此外,在验证信息指示控制操作不合法的情况下,还可以但不限于发送非法提示信息至对应的客户端,其中,该非法提示信息用于提示控制操作非法,或直接对该对应的客户端执行惩罚操作,例如封号、降级等。
通过本申请提供的实施例,获取服务器响应于操作同步指令返回的响应信息;在响应信息指示控制操作为合法操作的情况下,确定允许按照第二速度值播放首帧画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧;将受控虚拟角色执行目标动作后得到的动作结果发送给服务器,进而达到了在保证动画媒体资源的流畅度的同时,还可保留服务器对控制操作的验证操作的技术目的,从而实现了提高游戏环境的公平性的技术效果。
作为一种可选的方案,在获取服务器响应于操作同步指令返回的响应信息之后,还包括:
在响应信息指示控制操作为非法操作的情况下,按照第一速度值播放首帧画面帧到关键画面帧之间的画面帧,以及关键画面帧之后的画面帧。
在本实施例中,在响应信息指示控制操作为非法操作的情况下,按照第一速度值播放首帧画面帧到关键画面帧之间的画面帧,以及关键画面帧之后的画面帧。
进一步举例说明,可选的基于图5(a)所示场景,继续以图6为例说明,假设在响应信息指示控制操作为非法操作的情况下,播放动画媒体资源502中除关键画面帧外的全部画面帧对应的画面,且确定目标动作失效。
需要说明的是,服务器的验证过程是必要的,因为要对用户的控制操作的合法性进行验证,以维护游戏的公平环境,但服务器的验证结果多数都是通过,换言之,在大多数的玩家来说,服务器的验证都是相对多余的存在,而该多余的存在,却是导致网络延迟的直接原因,进而影响了玩家的游戏体验,在本实施例中,考虑了服务器验证通过以及不通过的两种可能,但无论是哪种可能,对于玩家侧来说,所观看到的动画媒体资源都是流畅的,即使服务器验证不通过,但仍可以通过不播放关键帧画面,但播放除关键帧画面外的其他连续画面,使得既无效了非法的目标动作,还保留了流畅的游戏画面。
通过本申请提供的实施例,在响应信息指示控制操作为非法操作的情况下,按照第一速度值播放首帧画面帧到关键画面帧之间的画面帧,以及关键画面帧之后的画面帧,进而达到了兼顾游戏公平环境的维护以及保证游戏画面的流畅度的技术目的,从而实现了提高玩家的游戏体验的技术效果。
作为一种可选的方案,在按照播放速度播放动画媒体资源时,还包括:
S1,获取服务器响应于操作同步指令返回的响应信息;
S2,在响应信息指示控制操作为非法操作的情况下,确定当前播放画面帧;按照第二速度值继续播放从当前播放画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧。
需要说明的是,获取服务器响应于操作同步指令返回的响应信息;在响应信息指示控制操作为非法操作的情况下,确定当前播放画面帧;按照第二速度值继续播放从当前播放画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧。可选的,第一速度值可以但不限于大于第二速度值,或第二速度值可以但不限于大于第一速度值。
可选地,在本实施例中,因已获取到服务器响应于操作同步指令返回的响应信息,进而动画媒体资源的播放不再受网络延迟的影响,进而可将动画媒体资源的播放速度提高,在此场景下,第一速度值大于第二速度值。
可选地,在本实施例中,因已获取到服务器响应于操作同步指令返回的响应信息,且响应信息指示控制操作为非法操作,进而为了惩罚或留出向触发该非法操作的客户端发送非法提示信息或惩罚指令的时间,可将动画媒体资源的播放速度降低,在此场景下,第一速度值小于第二速度值。
通过本申请提供的实施例,获取服务器响应于操作同步指令返回的响应信息;在响应信息指示控制操作为非法操作的情况下,确定当前播放画面帧;按照第二速度值继续播放从当前播放画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧,进而达到了基于不同应用场景灵活调整媒体资源的播放速度的技术目的,从而实现了提高媒体资源的播放灵活性的技术效果。
为方便理解,以具体的实施场景作为上述媒体资源播放方法的一种可选的方案,可选的例如图7所示,具体步骤如下:图7所示方案分为客户端702以及服务器704两部分完成,首先如步骤S702,基于客户端702部分,玩家按下技能按钮以触发控制操作;步骤S704利用客户端702的读取功能,读取当前客户端702的平均网络延迟;步骤S706读取与上述控制操作对应的动画数据,例如动画时长、动画关键点(帧)等;步骤S708,结合当前网络延迟以及上述动画数据计算动画播放速度;步骤S710,按照计算好动画播放速度的播放与上述动画数据对应的动画,于此同时客户端702向服务器704发送上述控制操作的相关信息,以供服务器704处理上述控制操作的逻辑,并在处理完成后,向客户端702广播该控制操作的逻辑,如步骤S712;此外,若此时网络延迟有很大变化客户端702可以但不限于重新计算当前动画的动画播放速度,如步骤S714;再者,如步骤S716,在客户端702收到服务器704的确认后再开始执行真正的逻辑运算,需要说明的是,此前的动画播放都算是渲染部分,真正的逻辑运算并未开始。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述媒体资源播放方法的媒体资源播放装置。如图8所示,该装置包括:
获取单元802,用于响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,动画媒体资源中包括用于展示受控虚拟角色执行目标动作的全过程的连续多帧画面;
第一确定单元804,用于从动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,关键画面帧中的受控虚拟角色正在执行目标动作;
第二确定单元806,用于根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度;
播放单元808,用于按照播放速度播放动画媒体资源。
可选地,在本实施例中,上述媒体资源播放装置可以但不限于应用于帧同步游戏应用中,其中,在该帧同步游戏应用中,客户端发送游戏动作(或者客户端直接通过P2P技术发送),客户端根据收到的所有游戏动作来做游戏运算和显示。可选的,游戏往往是一帧一帧渲染在屏幕上的,一般称之为渲染帧,渲染真是不稳定的,如果一帧计算的东西太多或者画面太复杂,这一帧计算的东西太多或画面太复杂,这一帧的时间可能会比较长,同一款游戏在不同的CPI、显卡上,渲染帧也是不尽相同的。二帧同步的帧是指逻辑帧,非渲染帧。例如以2台手机为例,假设上述2台手机需要同步,则意味着上述2台手机的数据是一致的,进而可以但不限于通过保证上述2台手机的起始状态一直、执行操作的时间一致、执行的操作一致,以使得上述2台手机的执行结果一致。再者,假设将游戏固定位1秒20个逻辑帧,即没50ms执行一次逻辑帧,上述2台手机都将在第5帧的时候执行A的移动操作,都将在第12帧的时候执行B的攻击操作,这样上述2台手机无时无刻不保持着一致,即可以但不限于为帧同步。
可选的,上述帧同步游戏应用的数据处理主要依据客户端,服务器往往起到一个转发以及安全验证的作用,但服务器需接受数据,并对该数据进行安全验证,再发送回客户端,在上述过程中,就会产生一个无法避免的网络延迟(例如去程延迟、回程延迟),而动画媒体资源的播放需要在上述过程结束后才能播放,进而动画媒体资源的播放流畅度自然也会被上述无法避免的网络延迟影响。但在本实施例中,利用在服务器执行接收数据、安全验证以及发送数据的同时,即播放动画媒体资源,并基于网络环境的网络延时,调整动画媒体资源,以达到降低动画媒体资源的播放与服务器的验证执行之间的负面牵制的技术目的,从而实现了提高动画媒体资源的播放流畅度的技术效果。
可选地,在本实施例中,该上述媒体资源播放装置还可以但不限于应用于对战类游戏应用中,其中,该游戏应用可以为多人在线战术竞技游戏(Multiplayer OnlineBattle Arena简称为MOBA)应用。上述游戏应用的类型可以包括但不限于以下至少之一:二维(Two Dimension,简称2D)游戏应用、三维(Three Dimension,简称3D)游戏应用、虚拟现实(Virtual Reality,简称VR)游戏应用、增强现实(Augmented Reality,简称AR)游戏应用、混合现实(Mixed Reality,简称MR)游戏应用。以上只是一种示例,本实施例对此不作任何限定。
此外,上述游戏应用客户端控制的虚拟角色可以但不限于为登录该游戏应用客户端的当前玩家所控制的角色对象,这里游戏应用可以为第三人称射击游戏(Third PersonShooting Game,简称TPS)应用,如除当前玩家所控制的虚拟角色之外的第三方角色对象的视角来运行该射击游戏应用,还可以为第一人称射击游戏(First Person Shooting Game,简称FPS)应用,如以当前玩家所控制的虚拟角色的视角来运行该射击游戏应用。
可选地,在本实施例中,上述控制操作可以但不限于为在客户端的人机交互屏幕上触发的控制操作,该控制操作用于控制当前客户端匹配的一个或多个虚拟角色执行目标动作。此外,上述虚拟角色所要执行的目标动作可以但不限于包括以下至少之一:移动操作、攻击操作、防御操作、道具切换操作、道具拾取操作、道具丢弃操作、释放操作等。
可选地,在本实施例中,同时执行受控虚拟角色所要执行的目标动作匹配的动画媒体资源的获取,以及向服务器发送操作同步指令,其中,动画媒体资源可以但不限于存储在客户端的存储器,或服务器的数据库中。
可选地,在本实施例中,动画媒体资源中包括M帧连续的画面,其中,该M帧连续的画面中包括一帧或N帧关键画面帧,M为大于等于2的整数,N为小于M的正整数,从用户侧来说,关键画面帧表现了目标动作的执行画面,从技术侧说,关键画面帧用于表示目标动作是否执行有效,例如在关键画面帧之前的连续的画面都已播放完成的情况下,判断目标动作是否生效,即需判断是否播放该关键画面帧,若播放该关键画面帧,则确定目标动作执行生效,若不播放该关键画面帧,则确定目标动作执行生效,进而从动画媒体资源中确定出关键画面帧所在的关键播放位置,相当于从动画媒体资源中确定目标动作是否生效。
本方案中的实施例,可以但不限于参照上述方法实施例,本实施例中对此不作任何限定。
通过本申请提供的实施例,响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,动画媒体资源中包括用于展示受控虚拟角色执行目标动作的全过程的连续多帧画面;从动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,关键画面帧中的受控虚拟角色正在执行目标动作;根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度;按照播放速度播放动画媒体资源,通过在操作后,无需等服务器的确认响应,直接开始播放动画,但按照慢速播放,直至播放到关键帧,进而在保证媒体资源执行逻辑正常的情况下,仍可同步执行媒体资源播放以及服务器认证,达到了降低网络延迟对播放媒体资源的影响的目的,从而实现了提高媒体资源的播放流畅度的技术效果。
作为一种可选的方案,如图9所示,第二确定单元806包括:
第一确定模块902,用于根据关键画面帧所在关键播放位置,确定动画媒体资源中首帧画面帧播放到关键画面帧的播放时长;
调整模块904,用于根据播放时长与网络延时,将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值,其中,第二速度值小于第一速度值;
第二确定模块906,用于确定从首帧画面帧到关键画面帧之间的画面帧按照第二速度值播放,在关键画面帧之后的画面帧按照第一速度值继续播放。
本方案中的实施例,可以但不限于参照上述方法实施例,本实施例中对此不作任何限定。
作为一种可选的方案,调整模块904包括:
第一获取子模块,用于获取播放时长与网络延时的加权求和结果;
第二获取子模块,用于获取播放时长与加权求和结果的比值,作为第二速度值;
调整子模块,用于将首帧画面帧到关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值。
本方案中的实施例,可以但不限于参照上述方法实施例,本实施例中对此不作任何限定。
作为一种可选的方案,还包括:
第一获取模块,用于在按照播放速度播放动画媒体资源之前,获取服务器响应于操作同步指令返回的响应信息;
第一确定模块,用于在按照播放速度播放动画媒体资源之前,在响应信息指示控制操作为合法操作的情况下,确定允许按照第二速度值播放首帧画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧;
发送模块,用于在按照播放速度播放动画媒体资源之前,将受控虚拟角色执行目标动作后得到的动作结果发送给服务器。
本方案中的实施例,可以但不限于参照上述方法实施例,本实施例中对此不作任何限定。
作为一种可选的方案,还包括:
播放模块,用于在获取服务器响应于操作同步指令返回的响应信息之后,在响应信息指示控制操作为非法操作的情况下,按照第一速度值播放首帧画面帧到关键画面帧之间的画面帧,以及关键画面帧之后的画面帧。
本方案中的实施例,可以但不限于参照上述方法实施例,本实施例中对此不作任何限定。
作为一种可选的方案,还包括:
第二获取模块,用于在按照播放速度播放动画媒体资源时,获取服务器响应于操作同步指令返回的响应信息;
第二确定模块,用于在按照播放速度播放动画媒体资源时,在响应信息指示控制操作为非法操作的情况下,确定当前播放画面帧;按照第二速度值继续播放从当前播放画面帧到关键画面帧之间的画面帧,并按照第一速度值继续播放关键画面帧之后的画面帧。
本方案中的实施例,可以但不限于参照上述方法实施例,本实施例中对此不作任何限定。
根据本发明实施例的又一个方面,还提供了一种用于实施上述媒体资源播放方法的电子设备,如图10所示,该电子设备包括存储器1002和处理器1004,该存储器1002中存储有计算机程序,该处理器1004被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,动画媒体资源中包括用于展示受控虚拟角色执行目标动作的全过程的连续多帧画面;
S2,从动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,关键画面帧中的受控虚拟角色正在执行目标动作;
S3,根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度;
S4,按照播放速度播放动画媒体资源。
可选地,本领域普通技术人员可以理解,图10所示的结构仅为示意,电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图10中所示更多或者更少的组件(如网络接口等),或者具有与图10所示不同的配置。
其中,存储器1002可用于存储软件程序以及模块,如本发明实施例中的媒体资源播放方法和装置对应的程序指令/模块,处理器1004通过运行存储在存储器1002内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的媒体资源播放方法。存储器1002可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1002可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1002具体可以但不限于用于存储误控制操作、动画媒体资源以及播放速度等信息。作为一种示例,如图10所示,上述存储器1002中可以但不限于包括上述媒体资源播放装置中的获取单元802、第一确定单元804、第二确定单元806及播放单元808。此外,还可以包括但不限于上述媒体资源播放装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1006用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1006包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1006为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1008,用于显示上述控制操作、动画媒体资源以及播放速度等信息;和连接总线1010,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(Peer To Peer,简称P2P)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述媒体资源播放方法其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,动画媒体资源中包括用于展示受控虚拟角色执行目标动作的全过程的连续多帧画面;
S2,从动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,关键画面帧中的受控虚拟角色正在执行目标动作;
S3,根据关键画面帧所在的关键播放位置及客户端所在网络环境的网络延时,确定动画媒体资源的播放速度;
S4,按照播放速度播放动画媒体资源。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种媒体资源播放方法,其特征在于,包括:
响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,所述动画媒体资源中包括用于展示所述受控虚拟角色执行所述目标动作的全过程的连续多帧画面;
从所述动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,所述关键画面帧中的所述受控虚拟角色正在执行所述目标动作;
根据所述关键画面帧所在的所述关键播放位置及所述客户端所在网络环境的网络延时,确定所述动画媒体资源在所述客户端播放时的播放速度的第一速度值和第二速度值;
按照所述第二速度值播放所述关键画面帧之前的画面帧,并且按照第一速度值播放所述关键画面帧之后的画面帧,其中,所述第二速度值小于所述第一速度值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述关键画面帧所在的所述关键播放位置及所述客户端所在网络环境的网络延时,确定所述动画媒体资源的播放速度包括:
根据所述关键画面帧所在所述关键播放位置,确定所述动画媒体资源中首帧画面帧播放到所述关键画面帧的播放时长;
根据所述播放时长与所述网络延时,将所述首帧画面帧到所述关键画面帧之间的画面帧的播放速度从所述第一速度值调整到所述第二速度值;确定从所述首帧画面帧到所述关键画面帧之间的画面帧按照所述第二速度值播放,在所述关键画面帧之后的画面帧按照所述第一速度值继续播放。
3.根据权利要求2所述的方法,其特征在于,所述根据所述播放时长与所述网络延时,将所述首帧画面帧到所述关键画面帧之间的画面帧的播放速度从第一速度值调整到第二速度值包括:
获取所述播放时长与所述网络延时的加权求和结果;
获取所述播放时长与所述加权求和结果的比值,作为所述第二速度值;
将所述首帧画面帧到所述关键画面帧之间的画面帧的播放速度从所述第一速度值调整到所述第二速度值。
4.根据权利要求2所述的方法,其特征在于,在所述按照所述播放速度播放所述动画媒体资源之前,还包括:
获取所述服务器响应于所述操作同步指令返回的响应信息;
在所述响应信息指示所述控制操作为合法操作的情况下,确定允许按照所述第二速度值播放所述首帧画面帧到所述关键画面帧之间的画面帧,并按照所述第一速度值继续播放所述关键画面帧之后的画面帧;
将所述受控虚拟角色执行所述目标动作后得到的动作结果发送给所述服务器。
5.根据权利要求4所述的方法,其特征在于,在所述获取所述服务器响应于所述操作同步指令返回的响应信息之后,还包括:
在所述响应信息指示所述控制操作为非法操作的情况下,按照所述第一速度值播放所述首帧画面帧到所述关键画面帧之间的画面帧,以及所述关键画面帧之后的画面帧。
6.根据权利要求2所述的方法,其特征在于,在所述按照所述播放速度播放所述动画媒体资源时,还包括:
获取所述服务器响应于所述操作同步指令返回的响应信息;
在所述响应信息指示所述控制操作为非法操作的情况下,确定当前播放画面帧;按照所述第二速度值继续播放从所述当前播放画面帧到所述关键画面帧之间的画面帧,并按照所述第一速度值继续播放所述关键画面帧之后的画面帧。
7.一种媒体资源播放装置,其特征在于,包括:
获取单元,用于响应于在客户端中触发的控制操作,获取受控虚拟角色所要执行的目标动作匹配的动画媒体资源,同时向服务器发送操作同步指令,其中,所述动画媒体资源中包括用于展示所述受控虚拟角色执行所述目标动作的全过程的连续多帧画面;
第一确定单元,用于从所述动画媒体资源中确定出关键画面帧所在的关键播放位置,其中,所述关键画面帧中的所述受控虚拟角色正在执行所述目标动作;
第二确定单元,用于根据所述关键画面帧所在的所述关键播放位置及所述客户端所在网络环境的网络延时,确定所述动画媒体资源在所述客户端播放时的播放速度的第一速度值和第二速度值;
播放单元,用于按照所述第二速度值播放所述关键画面帧之前的画面帧,并且按照第一速度值播放所述关键画面帧之后的画面帧,其中,所述第二速度值小于所述第一速度值。
8.根据权利要求7所述的装置,其特征在于,所述第二确定单元包括:
第一确定模块,用于根据所述关键画面帧所在所述关键播放位置,确定所述动画媒体资源中首帧画面帧播放到所述关键画面帧的播放时长;
调整模块,用于根据所述播放时长与所述网络延时,将所述首帧画面帧到所述关键画面帧之间的画面帧的播放速度从所述第一速度值调整到所述第二速度值,其中,所述第二速度值小于所述第一速度值;
第二确定模块,用于确定从所述首帧画面帧到所述关键画面帧之间的画面帧按照所述第二速度值播放,在所述关键画面帧之后的画面帧按照所述第一速度值继续播放。
9.根据权利要求8所述的装置,其特征在于,所述调整模块包括:
第一获取子模块,用于获取所述播放时长与所述网络延时的加权求和结果;
第二获取子模块,用于获取所述播放时长与所述加权求和结果的比值,作为所述第二速度值;
调整子模块,用于将所述首帧画面帧到所述关键画面帧之间的画面帧的播放速度从所述第一速度值调整到所述第二速度值。
10.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行所述权利要求1至6任一项中所述的方法。
11.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011304033.7A CN112386906B (zh) | 2020-11-19 | 2020-11-19 | 媒体资源播放方法和装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011304033.7A CN112386906B (zh) | 2020-11-19 | 2020-11-19 | 媒体资源播放方法和装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112386906A CN112386906A (zh) | 2021-02-23 |
CN112386906B true CN112386906B (zh) | 2022-04-26 |
Family
ID=74605938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011304033.7A Active CN112386906B (zh) | 2020-11-19 | 2020-11-19 | 媒体资源播放方法和装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112386906B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113031874B (zh) * | 2021-03-26 | 2022-05-13 | 网易(杭州)网络有限公司 | 基于Kubernetes集群的缓存处理方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108619720A (zh) * | 2018-04-11 | 2018-10-09 | 腾讯科技(深圳)有限公司 | 动画的播放方法和装置、存储介质、电子装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9734798B2 (en) * | 2015-03-17 | 2017-08-15 | Dreamworks Animation Llc | Timing-based scheduling for computer-generated animation |
CN106730836B (zh) * | 2016-12-22 | 2019-12-13 | Tcl集团股份有限公司 | 一种减少arpg游戏网络延时的方法及系统 |
CN107302707A (zh) * | 2017-05-18 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 场景动画的播放方法、装置及系统 |
CN109529355A (zh) * | 2018-12-24 | 2019-03-29 | 网易(杭州)网络有限公司 | 虚拟现实场景的信息同步方法、装置、处理器及服务器 |
CN110935172B (zh) * | 2019-12-30 | 2021-03-16 | 腾讯科技(深圳)有限公司 | 虚拟对象处理方法、装置、系统及其存储介质 |
-
2020
- 2020-11-19 CN CN202011304033.7A patent/CN112386906B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108619720A (zh) * | 2018-04-11 | 2018-10-09 | 腾讯科技(深圳)有限公司 | 动画的播放方法和装置、存储介质、电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112386906A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111767503B (zh) | 一种游戏数据处理方法、装置、计算机及可读存储介质 | |
CN107423015B (zh) | 游戏内容的同步显示方法和装置 | |
CN112999653B (zh) | 一种云游戏处理方法、装置、设备及介质 | |
CN109731330B (zh) | 画面的显示方法和装置、存储介质、电子装置 | |
WO2008131657A1 (fr) | Procédé, système et dispositif pour changer des images de rôle dans un jeu en réseau | |
CN116322915A (zh) | 从游戏交互中自动分离辱骂玩家 | |
CN110830735A (zh) | 一种视频生成方法、装置、计算机设备和存储介质 | |
WO2023279917A1 (zh) | 弹幕显示方法、弹幕发送方法、装置、计算机设备、计算机可读存储介质及计算机程序产品 | |
CN111314714B (zh) | 一种游戏直播方法和装置 | |
CN111298430A (zh) | 虚拟道具控制方法和装置、存储介质及电子装置 | |
CN104135506A (zh) | 网络数据负载均衡设计系统及方法 | |
CN112386906B (zh) | 媒体资源播放方法和装置、存储介质及电子设备 | |
CN112169340A (zh) | 一种数据的同步验证方法、系统、计算设备及存储介质 | |
CN113521743A (zh) | 游戏同步方法、装置、终端、服务器和存储介质 | |
CN110580257A (zh) | 数据共享方法、服务器及介质 | |
CN109873876B (zh) | 一种分布式虚拟环境的交互和计算负载均衡分配的方法 | |
CN114404959A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN113244609A (zh) | 多画面的显示方法和装置、存储介质及电子设备 | |
CN113274727A (zh) | 直播交互方法、装置和存储介质及电子设备 | |
CN111800491A (zh) | 一种数据传输方法、系统、计算设备及存储介质 | |
CN111359214A (zh) | 虚拟道具控制方法和装置、存储介质及电子装置 | |
CN112156475B (zh) | 一种业务数据处理方法、装置、电子设备及存储介质 | |
CN113813599B (zh) | 虚拟角色的控制方法和装置、存储介质及电子设备 | |
CN113244615B (zh) | 聊天面板的显示控制方法和装置、存储介质及电子设备 | |
CN111905361B (zh) | 游戏服务系统、游戏处理方法、存储介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40037949 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |