CN110381370A - 一种动画处理方法、装置、终端及存储介质 - Google Patents
一种动画处理方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN110381370A CN110381370A CN201910660416.9A CN201910660416A CN110381370A CN 110381370 A CN110381370 A CN 110381370A CN 201910660416 A CN201910660416 A CN 201910660416A CN 110381370 A CN110381370 A CN 110381370A
- Authority
- CN
- China
- Prior art keywords
- animation
- sub
- image
- decoding
- target
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44012—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440218—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
Abstract
本申请实施例提供一种动画处理方法、装置、终端及存储介质,其中的方法可包括:获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息;根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象;根据所述动画对象列表生成所述目标动画的控制信息;按照所述控制信息控制播放所述第一子动画和所述第二子动画。本申请可实现对目标动画中的多个子动画之间的较精准衔接,保证目标动画的整体播放效果,提升用户体验。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种动画处理方法、一种动画处理装置、一种终端及一种计算机存储介质。
背景技术
随着计算机技术的发展,动画处理技术也在不断提升;所谓动画处理是指对动画所需的多个图像进行加载、解码、渲染显示等一系列处理来实现动画播放的过程。现有技术中,动画处理过程是基于终端系统提供的动画组件(例如iOS系统的UIImageView组件)来进行,但实践中发现,现有的动画处理方案存在较多的问题,尤其突出的问题是通常仅支持整个动画的播放,当一个动画包含多段子动画,无法在动画处理过程中很好的支持多段子动画的衔接,动画播放效果较差。
发明内容
本申请实施例提供一种动画处理方法、装置、终端及存储介质,可实现对目标动画中的多个子动画之间的较精准衔接,保证目标动画的整体播放效果,提升用户体验。
一方面,本申请实施例提供一种动画处理方法,包括:
获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息;
根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象;
根据所述动画对象列表生成所述目标动画的控制信息;
按照所述控制信息控制播放所述第一子动画和所述第二子动画。
另一方面,本申请实施例提供一种动画处理装置,包括:
资源获取单元,用于获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息;
动画管理单元,用于根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象;根据所述动画对象列表生成所述目标动画的控制信息;以及按照所述控制信息控制播放所述第一子动画和所述第二子动画。
再一方面,本申请实施例提供一种终端,包括:
处理器,适于实现一条或一条以上指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行上述的动画处理方法。
再一方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行上述的动画处理方法。
本申请实施例中,通过同一个素材资源对目标动画包括的第一子动画和第二子动画进行配置,可保证每个子动画的配置统一性;另外,根据素材资源构建目标动画的动画对象列表,该动画对象列表中包括第一子动画对应的动画对象和第二子动画对应的动画对象,依据该动画对象列表生成控制信息,按照该控制信息来控制第一子动画和第二子动画按照各自对应的动画对象中存储的播放属性(如播放次数、播放时长)进行播放,既能获得每个子动画各自较好的播放效果,又可实现了对目标动画中的多个子动画之间的较精准衔接,保证目标动画的整体播放效果,提升用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1示出了本申请一个示例性实施例提供的一种动画处理装置的结构图;
图2示出了本申请一个示例性实施例提供的一种动画处理方法的流程图;
图3示出了本申请一个示例性实施例提供的一种图像序列的示意图;
图4示出了本申请一个示例性实施例提供的异步预解码的流程图;
图5示出了本申请一个示例性实施例提供的解码任务队列的示意图;
图6a示出了现有技术在进行动画处理的过程中终端的内存性能的示意图;
图6b示出了本申请一个示例性实施例提供的在进行动画处理的过程中终端的内存性能的示意图;
图7示出了本申请一个示例性实施例提供的针对一个图像进行渲染显示的流程图;
图8示出了本申请一个示例性实施例提供的动画处理场景的示意图;
图9示出了本申请一个示例性实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
动画顾名思义,就是会活动的影像,动画是由一系列图像来实现的,通过将这一系列用于描绘人、物的表情、动作、变化等的图像画面连贯展示,给视觉造成连续变化,从而形成动画。动画的类型有很多,可以包括但不限于平面动画(又称二维动画)、三维动画、虚拟现实动画、数码动画等等。动画形式也有很多,可包括但不限于形状补间动画、位置补间动画、引导线动画、帧动画(Frame By Frame)等等。动画处理是指对动画所需的多个图像进行加载、解码、渲染等一系列处理来实现动画播放的过程。动画对象是动画播放的基础,动画对象用于存储动画的播放属性,即用于存储动画播放必不可少的一些属性信息。在一种实施方式中,若一个动画不包含子动画,那么该动画对应一个动画对象;该动画对象包含动画播放所涉及的播放属性,该播放属性包括但不限于:动画所需的所有图像(或所有图像的路径列表)、动画的图像更新速率、播放次数、播放时长等。在另一种实施方式中,若一个动画包括多个子动画,那么每个子动画对应一个动画对象,该动画对象用于存储对应的子动画的播放属性;此时动画对应一个动画对象列表,该动画对象列表中包含每个子动画对应的动画对象。此时动画对象存储的子动画的播放属性还可包括:子动画的播放顺序;例如:一个动画包括子动画A和子动画B,那么子动画A对应一个动画对象,子动画B对应一个动画对象,若子动画A先于子动画B播放,那么子动画A对应的动画对象中存储的播放属性还包括子动画A的播放顺序例如是1,而子动画B对应的动画对象存储的播放属性中还包括子动画B的播放顺序例如是2。动画对象可以采用终端系统自带的结构表示,例如iOS系统中的动画对象可以表示为UIImageView对象;动画对象也可以采用其他结构表示,例如采用Dictionary表示。
本申请相关技术中提及,现有技术的动画处理方案是基于终端系统自带的动画组件来进行的;以基于iOS系统的动画组件播放一个动画为例,现有的动画处理流程主要包括以下步骤:
1、创建动画对象(即UIImageView对象),设置该动画对象的大小和位置,并将设置好的动画对象添加到终端系统的视图(view)树上;
2、将动画所需的图像序列中的每个图像加载到终端的内存;具体可以将每个图像分别对应一个UIImage对象的形式,以UIImage对象的形式加载到终端的内存中;
3、将步骤2中加载的所有UIImage对象以数组的形式赋值给动画对象(UIImageView对象),同时指定动画时长;
4、调用终端系统的UIImageView组件的startAnimating方法,开始播放动画对象。
从上述动画处理流程可以看出,现有的动画处理方案存在的问题如下:①按照整个动画时长来控制动画对象的播放,那么当一个动画包括多个子动画时,无法获知各个子动画的播放进度,从而无法很好的支持多个子动画的衔接。②在主线程(MainThread)中执行动画播放的流程时,同时在该主线程中对动画所需的所有图像进行解码,这样可能会由于解码过程耗时过多而导致动画启动有明显的延迟,造成动画界面的卡顿;③将动画所需的所有图像解码后并保存在内存中,会导致内存负荷激增,如果动画使用的是较多分辨率较高的图像,可能会导致内存占用过高,影响终端内存性能,影响用户体验。
为了解决现有技术的问题,本申请实施例提出一种解决方法,具体提供一个动画处理装置,由该动画处理装置来执行动画处理流程,而不再依赖于终端系统自带的动画组件。图1示出了本申请一个示例性实施例提供的一种动画处理装置的结构图;该装置主要包括:
资源获取单元101,用于获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息;
动画管理单元102,用于根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象;根据所述动画对象列表生成所述目标动画的控制信息;以及按照所述控制信息控制播放所述第一子动画和所述第二子动画。
图像数据管理单元103,用于在播放所述第一子动画和所述第二子动画的过程中,在工作线程中对所述第一子动画所需的图像序列和所述第二子动画所需的图像序列进行异步预解码;
渲染单元104,用于渲染所述图像序列中的各图像的解码数据。
其中,资源获取单元101、动画管理单元102和渲染单元104可以同在主线程中工作,资源获取单元101、动画管理单元102和渲染单元104在主线程中协同工作来实现目标动画的播放流程;图像数据管理单元103在单独的工作线程中工作;由图像数据管理单元103在工作线程中负责对目标动画所使用到的图像进行异步预解码,为主线程中的目标动画的播放提供解码数据;主线程与工作线程异步、并行执行,这样可有效提升整个装置对动画处理的效率。
动画处理装置可以是终端中的一个计算机程序(例如动画处理装置可以是一个能够进行动画处理的APP(Application,应用程序)客户端),运行动画处理装置可执行动画处理方法,并在执行动画处理方法的过程中来解决现有技术中存在的问题,具体解决问题的过程可参见本申请的后续实施例。
图2示出了本申请一个示例性实施例提供的一种动画处理方法的流程图;该方法可以由图1所示的动画处理装置执行;该方法包括以下步骤S201-S204:
S201,获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息。
素材资源可以存储于终端的存储空间中,那么当需要对目标动画进行处理时,图像获取单元101可以从终端的存储空间中获取目标动画的素材资源。素材资源也可以存储于互联网中,那么当需要对目标动画进行处理时,图像获取单元101可以从互联网中下载素材资源。其中,所述目标动画所需的图像信息包括所述第一子动画所需的图像序列及所述第二子动画所需的图像序列;图3示出了本申请一个示例性实施例提供的一种图像序列的示意图;图像序列一可以是第一子动画所需的图像序列;图像序列二可以是第二子动画所需的图像序列。如图3所示,所述图像序列包括多个图像的索引和路径。其中,图像的索引可用于唯一标识一个图像,通过图像的索引可以查找到相应的图像。另外,图像的索引还可用于表示在动画播放的过程中该图像的显示顺序;索引的值越小,图像的显示顺序越优先;索引的值越大,图像的显示顺序越延后;例如:索引11的值小于索引12的值,那么索引11所表示的图像在动画播放的过程中更优先被渲染显示。图像的路径用于标识图像的存储位置,该存储位置可以是终端的存储空间,也可以是互联网的某个位置;通过图像的路径可以访问并下载图像的原数据。所谓图像的原数据是指未经预解码的图像数据,例如:JPG(JointPhotographic Experts Group,一种图像格式)数据、PNG(Portable Network Graphics,便携式网络图形)数据。所谓图像的解码数据是指按照解码规则对图像的原数据进行解码得到的数据,例如:对JPG数据进行解码得到的BMP(Bitmap,位图图像)数据,对PNG数据进行解码得到的BMP数据。
所述目标动画的配置信息包括用于指示所述第一子动画与所述第二子动画的播放顺序的指示信息、所述第一子动画的配置描述信息及所述第二子动画的配置描述信息;所述配置描述信息包括以下至少一种:图像更新速率的描述信息、播放次数的描述信息、播放时长的描述信息。其中,图像更新速率是指一秒钟内刷新显示的图像的数量,例如:图像更新速率为30fps(Frames Per Second,每秒传输帧数),表示一秒钟内刷新显示30个图像。播放次数可以根据实际需要设定;例如:设第一子动画的播放次数为1,表示第一子动画仅被播放一次,不会被重复播放;设第一子动画的播放次数为2,表示第一子动画共被播放两次。此处需要说明的是,第一子动画被播放一次,是指第一子动画所需的图像序列中的所有图像按序被显示一轮。所述目标动画的配置信息是根据实际需要预先设定的内容,例如:可根据实际需要将一个动画划分为几个子动画,并指定子动画的播放顺序,同时还可以配置每个子动画播放次数,每个子动画的播放时长或者整个动画的播放时长等内容。本申请实施例可以采用在同一个素材资源中配置目标动画中的多个子动画的信息的配置方式,这使得目标动画中各子动画能够保持信息一致性,更利于对目标动画的整体进度的控制。
S202,根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象。
动画管理单元102根据所述素材资源构建所述目标动画的动画对象列表的过程包括:首先,根据所述素材资源中所述第一子动画所需的图像序列及所述第一子动画的配置描述信息映射生成第一动画对象,所述第一动画对象用于存储所述第一子动画的播放属性;其次,根据所述素材资源中所述第二子动画所需的图像序列及所述第二子动画的配置描述信息映射生成第二动画对象,所述第二动画对象用于存储所述第二子动画的播放属性;再次,将所述第一动画对象及所述第二动画对象添加至所述目标动画的动画对象列表中。可以理解的是,如果目标动画还包括第三子动画、第四子动画等等,那么目标动画的动画对象列表中还包括第二子动画对应的动画对象、第四子动画对象对应的动画对象,以此类推。
其中,所述第一动画对象包括第一子动画的播放属性,所述播放属性包括第一子动画所需的图像序列(如图3所示的图像序列一),还包括以下至少一种:第一子动画的播放顺序、第一子动画在播放过程中的图像更新速率、第一子动画的播放次数及第一子动画的播放时长。同理,所述第二动画对象也包含第二子动画的播放属性,所述播放属性包括第二子动画所需的图像序列(如图3所示的图像序列二),还包括以下至少一种:第二子动画的播放顺序、第二子动画在播放过程中的图像更新速率、第二子动画的播放次数及第二子动画的播放时长。
S203,根据所述动画对象列表生成所述目标动画的控制信息。
所述控制信息至少用于控制如下内容:①在播放第一子动画或第二子动画的过程中,控制何时更新图像;②控制何时结束第一子动画或第二子动画的播放流程;③控制何时从一个子动画的播放流程切换至另一个子动画的播放流程。步骤S202-S203中,动画管理单元102对素材资源进行解析,映射生成动画对象列表后,就可以根据动画对象列表中各动画对象存储的子动画的播放属性生成整个目标动画的控制信息,以用来控制目标动画的整体播放流程。
S204,按照所述控制信息控制播放所述第一子动画和所述第二子动画。在得到控制信息之后,动画管理单元102就可以利用控制信息控制播放第一子动画和第二子动画了。该控制过程涉及动画管理单元102、图像数据管理单元103和渲染单元104之间的交互,具体交互流程是:在播放第一子动画或者第二子动画的过程中,动画管理单元102将第一子动画所需的图像序列一或第二子动画所需的图像序列二通过线程间通信传递给图像数据管理单元103,由图像数据管理单元103在工作线程中对图像进行异步预解码;所述异步预解码是指异步提前解码所需的图像;例如:在播放第一子动画的过程中,当前正在播放(即渲染显示)第n(n为正整数)个图像,那么异步预解码则可并行地、提前将第n+1个图像进行解码并缓存,这样当需要播放n+1个图像时,则可从缓存中直接获得该n+1个图像进行渲染显示,这样能够有效提升动画的播放效率,避免动画播放过程中出现卡顿或延迟。动画管理单元102按需获取图像的解码数据并传递给渲染单元104,由渲染单元104按需渲染图像的解码数据并显示在终端的界面中。通过上述的交互过程,动画管理单元102能够有效地控制目标动画的整体播放流程,获得较佳的动画播放效果。
在一个实施例中,所述控制信息包括切换控制条件,所述切换控制条件包括在先播放的子动画达到播放次数或在先播放的子动画的播放时长达到切换时长;那么,动画管理单元102所执行的按照所述控制信息控制播放所述第一子动画和所述第二子动画的过程具体包括:设所述第一子动画的播放顺序先于所述第二子动画的播放顺序,则先播放所述第一子动画;当所述第一子动画的播放满足所述切换控制条件时,结束所述第一子动画的播放;此处所述第一子动画的播放满足切换控制条件是指:第一子动画达到播放属性中设定的播放次数,或者第一子动画的播放时长达到切换时长。然后,再播放所述第二子动画。
其中,播放所述第一子动画的过程具体包括:依次获取所述第一子动画所需的图像序列中的各图像的解码数据;按照所述第一子动画的图像更新速率依次显示所述第一子动画所需的图像序列中的各图像的解码数据以播放所述第一子动画。同理,播放所述第二子动画的过程具体包括:依次获取所述第二子动画所需的图像序列中的各图像的解码数据;按照所述第二子动画的图像更新速率依次显示所述第二子动画所需的图像序列中的各图像的解码数据以播放所述第二子动画。
动画处理装置通过执行上述图2所示实施例中的动画处理方法,能够解决现有技术中的问题①;具体的:本申请实施例中,通过同一个素材资源对目标动画包括的第一子动画和第二子动画进行配置,可保证每个子动画的配置统一性;另外,根据素材资源构建目标动画的动画对象列表,该动画对象列表中包括第一子动画对应的动画对象和第二子动画对应的动画对象,依据该动画对象列表生成控制信息,按照该控制信息来控制第一子动画和第二子动画按照各自对应的动画对象中存储的播放属性(如播放次数、播放时长)进行播放,既能获得每个子动画各自较好的播放效果,又可实现了对目标动画中的多个子动画之间的较精准衔接,保证目标动画的整体播放效果,提升用户体验。
图4示出了本申请一个示例性实施例提供的异步预解码的流程图;异步预解码由图像数据处理单元103在工作线程中执行;本实施例以在播放第一子动画的过程中对第一子动画所需的图像序列进行异步预解码为例进行描述,该异步预解码的流程包括以下步骤S401-S404:
S401,在播放所述第一子动画的过程中,在工作线程中根据所述第一子动画所需的图像序列中的各图像的路径获取所述第一子动画所需的图像序列中的各图像的原数据。
由动画管理单元102在播放第一子动画的过程中,将第一子动画所需的图像序列通过线程间通信方式传递给图像数据管理单元103;由图像数据管理单元103在工作线程中根据第一子动画所需的图像序列中的各图像的路径获取第一子动画所需的图像序列中的各图像的原数据。
S402,将所述第一子动画所需的图像序列中的各图像的原数据按序添加至解码任务队列,并按序从所述解码任务队列中依次提取所述第一子动画所需的图像序列中的各图像的原数据进行异步预解码。
S403,每成功预解码得到一个图像的解码数据则将得到的所述图像的解码数据存储至缓存;具体地,每个图像的解码数据与该图像的索引被成对关联的存储于缓存中,通过图像的索引可以从缓存中获得该图像的解码数据。
S404,当所述缓存中存储的解码数据的数量达到设定值时,停止异步预解码。
其中,设定值可以根据实际需要进行设置,该设定值用于反映动画处理过程中的预加载策略,例如:设定值可以为2,表示在动画处理的过程中配置的预加载的图像数量为2;那么当解码任务队列中存在2个图像被预解码成功并存至缓存之后,停止异步预解码;此时存入缓存中的这两个图像的解码数据则被有效预加载。
图5示出了本申请一个示例性实施例提供的解码任务队列的示意图;该解码任务队列可以是一个优先级队列;所谓优先级队列是指队列中的解码任务按照优先级由高至低的顺序被执行,即在解码任务队列中,会优先调度高优先级的解码任务来执行,而针对相同优先级的多个解码任务则按照先进先出的顺序执行。该解码任务队列也可以是一个非优先级队列,非优先级队列中的所有解码任务均按照先进先出的顺序被执行。
解码任务队列中的任一个图像的原数据在开始被执行解码任务之前,图像数据管理单元103均会先检查缓存中是否已存在与该图像的原数据相对应的解码数据,如果缓存中已经存在,则会停止该图像的原数据的解码任务,并将该图像的原数据从解码任务队列中移除。所以,本申请实施例中即使同一个图像的原数据被多次插入解码任务队列中,在异步预解码过程中实际上也只会对该图像的原数据执行一次真正的解码操作,这能有效的提升容错率,避免重复的解码动作,避免解码资源的浪费。
在一个实施例中,异步预解码的过程还包括对缓存的及时清理步骤;具体地,设所述第一子动画所需的图像序列中包括目标图像;所述目标图像为第一子动画所需的图像序列中的任一个图像;当第一子动画播放至目标图像时,动画管理单元102可以根据目标图像的索引从缓存中读取目标图像的解码数据,在此之后,图像数据管理单元103则可删除所述缓存中先于所述目标图像的解码数据进行存储的解码数据,并重新启动所述异步预解码。举例来说:设缓存中存入目标图像的解码数据及图像A的解码数据共两个解码数据之后达到设定值,异步预解码流程停止,其中图像A的索引小于目标图像的索引,即图像A的解码数据先被存储至缓存,目标图像的解码数据后被存储至缓存,那么当目标图像的解码数据从缓存中被获取之后,会将缓存中图像A的解码数据给删除,以实现对缓存的及时清理,这时缓存中解码数据的数量小于设定值,则重新启动异步预解码流程。
在一个实施例中,本申请实施例还支持对解码模式的灵活设置,此处,所述解码模式包括正常模式或循环模式。因此,异步预解码的过程还可包括以下步骤:(1)获取所述异步预解码的解码模式;(2)若所述异步预解码的解码模式为正常模式,则当所述解码任务队列中的最后一个图像的原数据完成预解码后,停止所述异步预解码;(3)若所述异步预解码的解码模式为循环模式,则当所述解码任务队列中的最后一个图像的原数据完成预解码后,重新将所述第一子动画所需的图像序列中的各图像的原数据按序添加至解码任务队列,并重新开始异步预解码。解码模式可以配合当前播放的子动画的播放属性来进行灵活设置,这样可使得异步预解码过程能够更好地为子动画的播放过程服务;例如:若当前播放的第一子动画的播放次数为1,即表示第一子动画只会被播放一次,那么同步地,可以设置解码模式为正常模式。再如:若当前播放的第一子动画的播放次数大于1,即表示第一子动画会被循环播放,那么同步地,可以设置解码模式为循环模式。
可以理解的是,图4所示实施例是以在播放第一子动画的过程中对第一子动画所需的图像序列进行异步预解码为例进行描述的,其他情况下,例如:在播放第二子动画的过程中对第二子动画所需的图像序列进行异步预解码的过程可参考图4进行,即由动画管理单元102在播放第二子动画的过程中,将第二子动画所需的图像序列通过线程间通信方式传递给图像数据管理单元103;由图像数据管理单元103在工作线程中执行上述异步预解码流程即可。再如:如果目标动画的动画对象列表中还包括第三子动画对应的动画对象,第四子动画对应的动画对象,这些情况下也是类似分析,在此不赘述。
动画处理装置通过执行图4所示实施例能够解决现有技术中的问题②和③,具体地:本申请实施例中,采用单独的工作线程来对动画所需的多个图像进行异步预解码,工作线程与主线程并行执行,这样可节省主线程的处理耗时,避免动画启动产生延迟,保证动画播放界面的流畅性;另外,根据播放需要来预解码图像,对图像进行有效地预加载以及及时释放已渲染的图像的解码数据所占用的缓存资源,大大降低内存的占用率,即使动画使用的较高分辨率或较大尺寸的图像,仍然能够保证动画的流畅播放。
下面以一个具体场景实例来说明本申请实施例的异步预解码相对于现有技术方案具备明显的有益效果。该场景实例中,子动画所需的图像序列中包括101个图像,这些图像的分辨率均为720*1280,这些图像完全预解码后的占据的存储空间大小为355MB,具体计算式为720*1280*4*101/1024/1024=355.09MB。在此场景下,分别采用现有技术方案(即基于终端系统自带的动画组件)及本申请实施例的动画处理装置来进行动画处理,再通过检测工具(例如Xcode工具)对终端内存变化进行检测,可分别得到图6a和图6b所示结果。图6a示出了现有技术在进行动画处理的过程中终端的内存性能的示意图;如图6a所示,采用现有技术方案进行动画处理的过程中,内存占用从16.5MB(兆字节)增加到373MB,内存增量为356.5MB,这主要是由于动画所需的所有图像均被存入内存并在内存中全部解码导致的增量,内存压力激增会大大提高动画处理过程被终端系统强制停止的可能性;如果图像序列中包含更多数量和更大分辨率的图像,现有技术方案则会难以支持,从而无法正常执行动画处理流程,无法进行动画的播放。图6b示出了本申请一个示例性实施例提供的在进行动画处理的过程中终端的内存性能的示意图;如图6b所示,在同样场景实例下,采用本申请实施例的方案在进行动画处理的过程中内存占用从16.5MB增加至18.1MB,并稳定在18.1MB左右,内存增量仅为1.6MB,这是由于本申请采用异步预解码及按需预解码所带来的结果,极大降低了内存负荷,避免内存压力激增现象的出现,保证动画处理流程的正常进行,保证动画播放的效果。
图7示出了本申请一个示例性实施例提供的针对一个图像进行渲染显示的流程图;该图像可以是目标图像,该目标图像可以是所述第一子动画所需的图像序列中的任一个图像。那么,在播放所述第一子动画的过程中,该目标图像的渲染显示流程具体包括以下步骤S701-S706:
S701,当所述第一子动画播放至所述目标图像时,根据所述目标图像的索引在所述缓存中查询所述目标图像的解码数据。
S702,若查询成功,则从所述缓存中读取所述目标图像的解码数据;转入步骤S707;
S703,若查询失败,则在工作线程中将所述目标图像的原数据插入至所述解码任务队列中;
S704,在工作线程中从所述解码任务队列中优先提取所述目标图像的原数据进行异步预解码得到所述目标图像的解码数据;
S705,从所述工作线程接收所述目标图像的解码数据;
S706,渲染所述目标图像的解码数据以显示所述目标图像。
动画管理单元102需要显示目标图像时,会先根据目标图像的索引(设为X)在缓存中查询该目标图像的解码数据;如果查询成功,表明该目标图像已经成功预解码,则可以从缓存中直接获得目标图像的解码数据,并交给渲染单元104对目标图像的解码数据进行渲染并显示于终端屏幕中。如果查询失败,表明该目标图像还未成功预解码,那么动画管理单元102可以与图像数据管理单元103进行交互获得目标图像的解码数据,再交由渲染单元104进行渲染显示。
具体实现中,动画管理单元102与图像数据管理单元103交互获得目标图像的解码数据的流程包括:动画管理单元102向图像数据管理单元103发送获取请求,获取请求中携带目标图像的索引为X;图像数据管理单元103会先根据索引X在缓存中查找目标图像的解码数据,如果命中缓存(即查找到),则图像数据管理单元103会直接返回目标图像的解码数据;如果未命中,图像数据管理单元103会将目标图像的原数据封装为一个高优先级的解码任务,插入至解码任务队列中,当该高优先级的解码任务被调度开始执行时,图像数据管理单元103会再次根据索引X查找缓存,如果命中就直接返回该目标图像的解码数据给动画管理单元102,如果仍然未命中就开始执行高优先级的解码任务,并在解码完成后将解码获得的目标图像的解码数据返回给动画管理单元102。
动画处理装置通过执行图7所示实施例能够解决现有技术中的问题③,具体地:本申请实施例中,在即将需要播放目标图像时,才对该目标图像进行预加载及预解码,通过按需预加载及按需预解码来减小内存不必要的负担,保证终端性能。
本申请实施例的动画处理装置可以在具体的互联网场景中来进行动画处理。图8示出了本申请一个示例性实施例提供的动画处理场景的示意图;图8示出了在即时通信应用中的轻互动场景中进行动画处理的流程。
用户A的终端中的即时通信应用的交互界面中显示用户列表80a,该用户列表80a中包括用户A的多个好友用户的标识,该用户列表80a中的好友用户可以是从用户A的即时通信好友关系链中随机抽取的用户,也可以是在预设时间段(例如最近两天)与用户A进行过交互(例如对用户A发表的说说进行点赞、给用户A发布的微博进行评论等等)的好友用户。每个好友用户的标识对应一个轻互动图标80b(如图示的手掌图标);当某个好友用户B的标识对应的轻互动图标80b被触发(例如用户A点击手掌图标)时,会发起用户A与用户B之间的轻互动,此时就需要对轻互动过程所涉及的目标动画进行处理。本示例中,目标动画可包括启动子动画和击掌子动画。
当用户A点击好友用户B对应的手掌图标时,动画处理装置的资源获取单元101获取素材资源,该素材资源中配置了启动子动画的信息和击掌子动画的信息,该信息例如包括:播放次数、所要使用的图像是哪些,这些图像的路径是什么等等描述信息。
动画管理单元102解析素材资源,并映射生成目标动画的动画对象列表,该动画对象列表中包括启动子动画对应的动画对象和击掌子动画对应的动画对象,动画对象中包括播放属性,设启动子动画对应的动画对象存储启动子动画的播放属性,如播放次数为2,播放时长为2分钟;击掌子动画对应的动画对象存储击掌子动画的播放属性,如播放次数为3,播放时长为3分钟。动画管理单元102基于动画对象列表生成控制信息,并按照控制信息先在用户A的终端界面中播放启动子动画,这时用户A可以终端中看到启动子动画的画面;当该启动子动画完成2次播放或者被播放2分钟后,终端界面中切换播放击掌子动画,这时用户A可以看到击掌子动画的画面,且该击掌子动画被播放3次或播放时长达到3分钟,停止播放。在启动子动画或击掌子动画被播放的过程中,由图像数据管理单元103对子动画所需的图像序列中的各图像进行异步预解码,以按需为子动画的播放过程中及时提供所需的各图像。
本申请实施例中,本申请实施例中,通过同一个素材资源对目标动画包括的第一子动画和第二子动画进行配置,可保证每个子动画的配置统一性;另外,根据素材资源构建目标动画的动画对象列表,该动画对象列表中包括第一子动画对应的动画对象和第二子动画对应的动画对象,依据该动画对象列表生成控制信息,按照该控制信息来控制第一子动画和第二子动画按照各自对应的动画对象中存储的播放属性(如播放次数、播放时长)进行播放,既能获得每个子动画各自较好的播放效果,又可实现了对目标动画中的多个子动画之间的较精准衔接,保证目标动画的整体播放效果,提升用户体验。
图9示出了本申请一个示例性实施例提供的一种终端的结构示意图;该终端可以包括图1所示的动画处理装置。请参见图9,该终端至少包括处理器901、输入设备902、输出设备903以及计算机存储介质1004。其中,处理器901、输入设备1002、输出设备903以及计算机存储介质904可通过总线或者其它方式连接。计算机存储介质904可以存储在终端的存储器中,所述计算机存储介质904用于存储计算机程序,所述计算机程序包括程序指令,所述处理器901用于执行所述计算机存储介质904存储的程序指令。处理器901(或称CPU(Central Processing Unit,中央处理器))是终端的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
本发明实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器901加载并执行的一条或多条的指令,这些指令可以是一个或多个的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,由处理器901加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关动画处理方法实施例中的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器901加载并执行如下步骤:
获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息;
根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象;
根据所述动画对象列表生成所述目标动画的控制信息;
按照所述控制信息控制播放所述第一子动画和所述第二子动画。
在一种实施方式中,所述目标动画所需的图像信息包括所述第一子动画所需的图像序列及所述第二子动画所需的图像序列;所述图像序列包括多个图像的索引和路径;
所述目标动画的配置信息包括用于指示所述第一子动画与所述第二子动画的播放顺序的指示信息、所述第一子动画的配置描述信息及所述第二子动画的配置描述信息;所述配置描述信息包括以下至少一种:图像更新速率的描述信息、播放次数的描述信息、播放时长的描述信息。
在另一种实施方式中,计算机存储介质中的一条或多条指令由处理器901加载并执行所述根据所述素材资源构建所述目标动画的动画对象列表的步骤的过程中,具体执行如下步骤:
根据所述素材资源中所述第一子动画所需的图像序列及所述第一子动画的配置描述信息映射生成第一动画对象,所述第一动画对象用于存储所述第一子动画的播放属性;
根据所述素材资源中所述第二子动画所需的图像序列及所述第二子动画的配置描述信息映射生成第二动画对象,所述第二动画对象用于存储所述第二子动画的播放属性;
将所述第一动画对象及所述第二动画对象添加至所述目标动画的动画对象列表中;
其中,所述播放属性包括子动画所需的图像序列,还包括以下至少一种:子动画的播放顺序、子动画的图像更新速率、子动画的播放次数及播放时长。
再一种实施方式中,所述控制信息包括切换控制条件,所述切换控制条件包括在先播放的子动画达到播放次数或在先播放的子动画的播放时长达到切换时长。
再一种实施方式中,若所述第一子动画的播放顺序先于所述第二子动画的播放顺序,则计算机存储介质中的一条或多条指令由处理器901加载并执行所述按照所述控制信息控制播放所述第一子动画和所述第二子动画的步骤中,具体执行如下步骤:
播放所述第一子动画;
当所述第一动画对象的播放满足所述切换控制条件时,结束所述第一子动画的播放;
播放所述第二子动画。
再一种实施方式中,计算机存储介质中的一条或多条指令由处理器901加载并执行所述播放所述第一子动画的步骤的过程中,具体执行如下步骤:
依次获取所述第一子动画所需的图像序列中的各图像的解码数据;
按照所述第一子动画的图像更新速率依次显示所述第一子动画所需的图像序列中的各图像的解码数据以播放所述第一子动画。
再一种实施方式中,所述计算机存储介质中的一条或多条指令由处理器901加载还执行如下步骤:
在播放所述第一子动画的过程中,在工作线程中根据所述第一子动画所需的图像序列中的各图像的路径获取所述第一子动画所需的图像序列中的各图像的原数据;
将所述第一子动画所需的图像序列中的各图像的原数据按序添加至解码任务队列,并按序从所述解码任务队列中依次提取所述第一子动画所需的图像序列中的各图像的原数据进行异步预解码;
每成功预解码得到一个图像的解码数据则将得到的所述图像的解码数据存储至缓存;
当所述缓存中存储的解码数据的数量达到设定值时,停止异步预解码。
再一种实施方式中,所述第一子动画所需的图像序列中包括目标图像;所述目标图像为第一子动画所需的图像序列中的任一个图像;在播放所述第一子动画的过程中,所述目标图像的显示流程包括:
当所述第一子动画播放至所述目标图像时,根据所述目标图像的索引在所述缓存中查询所述目标图像的解码数据;
若查询成功,则从所述缓存中读取所述目标图像的解码数据;若查询失败,则调用所述工作线程将所述目标图像的原数据插入至所述解码任务队列中,并从所述解码任务队列中优先提取所述目标图像的原数据进行异步预解码得到所述目标图像的解码数据,从所述工作线程接收所述目标图像的解码数据;
渲染所述目标图像的解码数据以显示所述目标图像。
再一种实施方式中,所述计算机存储介质中的一条或多条指令由处理器901加载还执行如下步骤:
当从所述缓存中读取所述目标图像的解码数据之后,删除所述缓存中先于所述目标图像的解码数据进行存储的解码数据,并重新启动所述异步预解码。
再一种实施方式中,所述计算机存储介质中的一条或多条指令由处理器901加载还执行如下步骤:
获取所述异步预解码的解码模式,所述解码模式包括正常模式或循环模式;
若所述异步预解码的解码模式为正常模式,则当所述解码任务队列中的最后一个图像的原数据完成解码后,停止所述异步预解码;
若所述异步预解码的解码模式为循环模式,则当所述解码任务队列中的最后一个图像的原数据完成解码后,重新将所述第一子动画所需的图像序列中的各图像的原数据按序添加至解码任务队列,并重新开始异步预解码。
本申请实施例中,通过同一个素材资源对目标动画包括的第一子动画和第二子动画进行配置,可保证每个子动画的配置统一性;另外,根据素材资源构建目标动画的动画对象列表,该动画对象列表中包括第一子动画对应的动画对象和第二子动画对应的动画对象,依据该动画对象列表生成控制信息,按照该控制信息来控制第一子动画和第二子动画按照各自对应的动画对象中存储的播放属性(如播放次数、播放时长)进行播放,既能获得每个子动画各自较好的播放效果,又可实现了对目标动画中的多个子动画之间的较精准衔接,保证目标动画的整体播放效果,提升用户体验。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (14)
1.一种动画处理方法,其特征在于,包括:
获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息;
根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象;
根据所述动画对象列表生成所述目标动画的控制信息;
按照所述控制信息控制播放所述第一子动画和所述第二子动画。
2.如权利要求1所述的方法,其特征在于,所述目标动画所需的图像信息包括所述第一子动画所需的图像序列及所述第二子动画所需的图像序列;所述图像序列包括多个图像的索引和路径;
所述目标动画的配置信息包括用于指示所述第一子动画与所述第二子动画的播放顺序的指示信息、所述第一子动画的配置描述信息及所述第二子动画的配置描述信息;所述配置描述信息包括以下至少一种:图像更新速率的描述信息、播放次数的描述信息、播放时长的描述信息。
3.如权利要求2所述的方法,其特征在于,所述根据所述素材资源构建所述目标动画的动画对象列表,包括:
根据所述素材资源中所述第一子动画所需的图像序列及所述第一子动画的配置描述信息映射生成第一动画对象,所述第一动画对象用于存储所述第一子动画的播放属性;
根据所述素材资源中所述第二子动画所需的图像序列及所述第二子动画的配置描述信息映射生成第二动画对象,所述第二动画对象用于存储所述第二子动画的播放属性;
将所述第一动画对象及所述第二动画对象添加至所述目标动画的动画对象列表中;
其中,所述播放属性包括子动画所需的图像序列,还包括以下至少一种:子动画的播放顺序、子动画的图像更新速率、子动画的播放次数及播放时长。
4.如权利要求1所述的方法,其特征在于,所述控制信息包括切换控制条件,所述切换控制条件包括在先播放的子动画达到播放次数或在先播放的子动画的播放时长达到切换时长。
5.如权利要求4所述的方法,其特征在于,若所述第一子动画的播放顺序先于所述第二子动画的播放顺序,则所述按照所述控制信息控制播放所述第一子动画和所述第二子动画,包括:
播放所述第一子动画;
当所述第一子动画的播放满足所述切换控制条件时,结束所述第一子动画的播放;
播放所述第二子动画。
6.如权利要求5所述的方法,其特征在于,所述播放所述第一子动画,包括:
依次获取所述第一子动画所需的图像序列中的各图像的解码数据;
按照所述第一子动画的图像更新速率依次显示所述第一子动画所需的图像序列中的各图像的解码数据以播放所述第一子动画。
7.如权利要求5所述的方法,其特征在于,还包括:
在播放所述第一子动画的过程中,在工作线程中根据所述第一子动画所需的图像序列中的各图像的路径获取所述第一子动画所需的图像序列中的各图像的原数据;
将所述第一子动画所需的图像序列中的各图像的原数据按序添加至解码任务队列,并按序从所述解码任务队列中依次提取所述第一子动画所需的图像序列中的各图像的原数据进行异步预解码;
每成功预解码得到一个图像的解码数据则将得到的所述图像的解码数据存储至缓存;
当所述缓存中存储的解码数据的数量达到设定值时,停止异步预解码。
8.如权利要求7所述的方法,其特征在于,所述第一子动画所需的图像序列中包括目标图像;所述目标图像为第一子动画所需的图像序列中的任一个图像;在播放所述第一子动画的过程中,所述目标图像的显示流程包括:
当所述第一子动画播放至所述目标图像时,根据所述目标图像的索引在所述缓存中查询所述目标图像的解码数据;
若查询成功,则从所述缓存中读取所述目标图像的解码数据;若查询失败,则在所述工作线程中将所述目标图像的原数据插入至所述解码任务队列中,并从所述解码任务队列中优先提取所述目标图像的原数据进行异步预解码得到所述目标图像的解码数据,从所述工作线程接收所述目标图像的解码数据;
渲染所述目标图像的解码数据以显示所述目标图像。
9.如权利要求8所述的方法,其特征在于,还包括:
当从所述缓存中读取所述目标图像的解码数据之后,删除所述缓存中先于所述目标图像的解码数据进行存储的解码数据,并重新启动所述异步预解码。
10.如权利要求8所述的方法,其特征在于,还包括:
获取所述异步预解码的解码模式,所述解码模式包括正常模式或循环模式;
若所述异步预解码的解码模式为正常模式,则当所述解码任务队列中的最后一个图像的原数据完成解码后,停止所述异步预解码;
若所述异步预解码的解码模式为循环模式,则当所述解码任务队列中的最后一个图像的原数据完成解码后,重新将所述第一子动画所需的图像序列中的各图像的原数据按序添加至解码任务队列,并重新开始异步预解码。
11.一种动画处理装置,其特征在于,包括:
资源获取单元,用于获取目标动画的素材资源,所述目标动画包括第一子动画和第二子动画;所述素材资源包括所述目标动画所需的图像信息和所述目标动画的配置信息;
动画管理单元,用于根据所述素材资源构建所述目标动画的动画对象列表,所述动画对象列表中包括所述第一子动画对应的第一动画对象及所述第二子动画对应的第二动画对象;根据所述动画对象列表生成所述目标动画的控制信息;以及按照所述控制信息控制播放所述第一子动画和所述第二子动画。
12.如权利要求11所述的装置,其特征在于,还包括:
图像数据管理单元,用于在播放所述第一子动画和所述第二子动画的过程中,在工作线程中对所述第一子动画所需的图像序列和所述第二子动画所需的图像序列进行异步预解码;
渲染单元,用于渲染所述图像序列中的各图像的解码数据。
13.一种终端,其特征在于,包括:
处理器,适于实现一条或一条以上指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-12任一项所述的动画处理方法。
14.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-12任一项所述的动画处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910660416.9A CN110381370B (zh) | 2019-07-22 | 2019-07-22 | 一种动画处理方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910660416.9A CN110381370B (zh) | 2019-07-22 | 2019-07-22 | 一种动画处理方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110381370A true CN110381370A (zh) | 2019-10-25 |
CN110381370B CN110381370B (zh) | 2022-11-11 |
Family
ID=68254721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910660416.9A Active CN110381370B (zh) | 2019-07-22 | 2019-07-22 | 一种动画处理方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110381370B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112232793A (zh) * | 2020-11-04 | 2021-01-15 | 腾讯科技(深圳)有限公司 | 电子资源发放方法、装置、存储介质及设备 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101137152A (zh) * | 2007-09-27 | 2008-03-05 | 腾讯科技(深圳)有限公司 | 一种在移动即时通信中交互三维动画的方法、系统及设备 |
CN102857826A (zh) * | 2012-09-24 | 2013-01-02 | 北京东方艾迪普科技发展有限公司 | 一种基于循环队列的图文播放方法及装置 |
US20130141515A1 (en) * | 2011-12-01 | 2013-06-06 | Eric Setton | Augmenting a video conference |
CN103176788A (zh) * | 2011-12-26 | 2013-06-26 | 中国移动通信集团福建有限公司 | 一种手机桌面动画内容平滑过渡的方法和装置 |
CN104050579A (zh) * | 2013-03-12 | 2014-09-17 | 阿里巴巴集团控股有限公司 | 用于实现轮播动画的方法及装置 |
US20160259526A1 (en) * | 2015-03-03 | 2016-09-08 | Kakao Corp. | Display method of scenario emoticon using instant message service and user device therefor |
CN105938440A (zh) * | 2015-12-28 | 2016-09-14 | 乐视移动智能信息技术(北京)有限公司 | 一种移动终端图片显示方法及系统 |
CN105992005A (zh) * | 2015-03-04 | 2016-10-05 | 广州市动景计算机科技有限公司 | 视频解码方法、装置及终端设备 |
CN106210883A (zh) * | 2016-08-11 | 2016-12-07 | 浙江大华技术股份有限公司 | 一种视频渲染的方法、设备 |
CN109284183A (zh) * | 2018-10-17 | 2019-01-29 | 广州市百果园信息技术有限公司 | 动图播放方法、装置、计算机存储介质和终端 |
CN109741430A (zh) * | 2018-12-28 | 2019-05-10 | 北京金山安全软件有限公司 | 动画实例创建方法、装置、设备及存储介质 |
CN109859293A (zh) * | 2019-01-24 | 2019-06-07 | 苏州思必驰信息科技有限公司 | 用于安卓设备的动画多状态切换方法和装置 |
-
2019
- 2019-07-22 CN CN201910660416.9A patent/CN110381370B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101137152A (zh) * | 2007-09-27 | 2008-03-05 | 腾讯科技(深圳)有限公司 | 一种在移动即时通信中交互三维动画的方法、系统及设备 |
US20130141515A1 (en) * | 2011-12-01 | 2013-06-06 | Eric Setton | Augmenting a video conference |
CN103176788A (zh) * | 2011-12-26 | 2013-06-26 | 中国移动通信集团福建有限公司 | 一种手机桌面动画内容平滑过渡的方法和装置 |
CN102857826A (zh) * | 2012-09-24 | 2013-01-02 | 北京东方艾迪普科技发展有限公司 | 一种基于循环队列的图文播放方法及装置 |
CN104050579A (zh) * | 2013-03-12 | 2014-09-17 | 阿里巴巴集团控股有限公司 | 用于实现轮播动画的方法及装置 |
US20160259526A1 (en) * | 2015-03-03 | 2016-09-08 | Kakao Corp. | Display method of scenario emoticon using instant message service and user device therefor |
CN105992005A (zh) * | 2015-03-04 | 2016-10-05 | 广州市动景计算机科技有限公司 | 视频解码方法、装置及终端设备 |
CN105938440A (zh) * | 2015-12-28 | 2016-09-14 | 乐视移动智能信息技术(北京)有限公司 | 一种移动终端图片显示方法及系统 |
CN106210883A (zh) * | 2016-08-11 | 2016-12-07 | 浙江大华技术股份有限公司 | 一种视频渲染的方法、设备 |
CN109284183A (zh) * | 2018-10-17 | 2019-01-29 | 广州市百果园信息技术有限公司 | 动图播放方法、装置、计算机存储介质和终端 |
CN109741430A (zh) * | 2018-12-28 | 2019-05-10 | 北京金山安全软件有限公司 | 动画实例创建方法、装置、设备及存储介质 |
CN109859293A (zh) * | 2019-01-24 | 2019-06-07 | 苏州思必驰信息科技有限公司 | 用于安卓设备的动画多状态切换方法和装置 |
Non-Patent Citations (2)
Title |
---|
朱战立: "《数据结构-使用C++语言》", 1 February 2001 * |
韩松: ""基于Web通讯的即时信息获取及三维表达"", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112232793A (zh) * | 2020-11-04 | 2021-01-15 | 腾讯科技(深圳)有限公司 | 电子资源发放方法、装置、存储介质及设备 |
CN112232793B (zh) * | 2020-11-04 | 2023-09-19 | 腾讯科技(深圳)有限公司 | 电子资源发放方法、装置、存储介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110381370B (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6978528B2 (ja) | 3d環境におけるコンテンツのレンダリング | |
US9146926B2 (en) | Indexing messaging events for seeking through data streams | |
CN105409224A (zh) | 基于游戏剪辑流行度的控制 | |
US8446411B2 (en) | Adaptive image rendering and use of imposter | |
US7529892B2 (en) | File readahead method with the use of access pattern information attached to metadata | |
CN102932679A (zh) | 一种网络视频预览系统和方法 | |
CN102576470A (zh) | 用于纹理获取装载的自动实时着色器修改 | |
CN111346378B (zh) | 游戏画面传输方法、装置、存储介质和设备 | |
CN102799636A (zh) | 移动终端显示网页的方法及系统 | |
CN109195025B (zh) | 一种游戏广告制作方法及平台、存储介质 | |
CN110297924A (zh) | 点云数据的处理及渲染方法、装置、设备及存储介质 | |
JP2023540872A (ja) | 病理組織スライドの改善された可視化及びレンダリングを提供するために電子画像を処理するシステム及び方法 | |
CN103915033A (zh) | 一种地图渲染的方法及其装置、移动终端 | |
CN111340926B (zh) | 一种渲染方法及装置 | |
CN110381370A (zh) | 一种动画处理方法、装置、终端及存储介质 | |
CN114401443B (zh) | 特效视频处理方法、装置、电子设备及存储介质 | |
US10981059B2 (en) | Asset aware computing architecture for graphics processing | |
CN106570060B (zh) | 一种信息流中数据的随机抽取方法及装置 | |
CN109615048A (zh) | 一种网址处理方法、装置、服务器及用户终端 | |
CN109618226A (zh) | 视频审核方法、装置、电子设备及存储介质 | |
CN106953933A (zh) | 一种消息推送方法及装置、电子设备 | |
CN114637499B (zh) | 可视化组件处理方法、装置、设备及介质 | |
CN110489070A (zh) | 一种定制内容的显示处理方法及装置 | |
CN113014997B (zh) | 缓存更新方法及装置 | |
CN110062130A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |