CN113986438B - 动画的加载方法、系统、装置及计算机可读存储介质 - Google Patents
动画的加载方法、系统、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113986438B CN113986438B CN202111278387.3A CN202111278387A CN113986438B CN 113986438 B CN113986438 B CN 113986438B CN 202111278387 A CN202111278387 A CN 202111278387A CN 113986438 B CN113986438 B CN 113986438B
- Authority
- CN
- China
- Prior art keywords
- image
- animation
- bitmap
- loaded
- configuration file
- 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
- 238000011068 loading method Methods 0.000 title claims abstract description 51
- 238000003860 storage Methods 0.000 title claims abstract description 21
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000004590 computer program Methods 0.000 claims description 8
- 238000007726 management method Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种动画的加载方法、系统、装置及计算机可读存储介质,动画的加载显示方法包括获取配置文件,所述配置文件包含用于完成动画播放的所有图像和对应于图像的图像序列号;基于图像序列号,从配置文件中获取待加载图像,将待加载图像转换为位图并进行图像处理,将位图分配至预设的内存对象池;获取位图,将位图发送至显示控件,在内存对象池中移除位图,并返回至获取待加载图像步骤。本发明具有提高动画加载速度,提升显示动画的平滑性的效果。
Description
技术领域
本发明涉及动画加载技术领域,尤其是涉及一种动画的加载显示方法、系统、装置及计算机可读存储介质。
背景技术
随着移动设备应用软件的发展,很多应用界面会为了展示数据的多样性和缓解用户视觉上的交互会采用简单的动画去加载界面。
目前大多数的动画加载技术都是采用原生帧动画或者加载GIF(GraphicsInterchange Format,图形交换格式)图片来实现。其中,GIF图片会丢失部分颜色信息,使得加载视觉效果不好,动画展示不够自然;而原生帧动画方案因为每帧图片的质量不同,界面展示动画的数量较多,也会导致加载的内存占用偏高,从而导致页面卡顿,严重影响了动画的加载效果和体验。
针对上述技术方案,发明人认为在进行动画加载过程中,容易出现应用界面卡顿的情况。
发明内容
本发明目的一是提供一种动画的加载显示方法,具有减少加载动画时占用内存较高,提高动画加载流畅性的特点。
本发明的上述发明目的一是通过以下技术方案得以实现的:
一种动画的加载方法,包括以下步骤:
获取配置文件,其中,所述配置文件包含用于完成动画播放的所有图像和对应于图像的图像序列号;
基于图像序列号,从配置文件中获取待加载图像,将待加载图像转换为位图并进行图像处理,将位图分配至预设的内存对象池,其中,所述内存对象池用于向位图提供内存空间;
获取位图,将位图发送至显示控件,在内存对象池中移除位图,并返回至获取待加载图像步骤。
通过采用上述技术方案,在获取动画播放对应的配置文件以及配置文件中的图像和图像序列号之后,依照图像序列号对图像进行依次加载;通过依次加载的方式,来避免在显示动画时,动画对应的图像全部加载可能会带来页面卡顿的问题。
在图像的逐帧加载过程中,每帧图像都会占用一定内存空间,并且每帧图像由于色彩内容不一样,所占用的内存空间大小也可能不一样;通过预设内存对象池,来减少图像处理后需要重新为位图分配内存的问题,尽量避免由于内存抖动而出现内存分配失败的问题。并且在将位图发送至显示控件之后,在内存对象池中移除位图,以及时释放内存对象池的内存空间,便于将内存对象池重新分配给位图,通过重复利用内存对象池,以达到节省内存的效果。
可选的,在获取配置文件的具体方法中,包括以下步骤:
原始文件下载:通过子线程,从服务器获取原始文件并保存在本地,其中,一个子线程对应一个原始文件,并且子线程数量至少有一个;
配置文件生成:通过主线程,在本地中依次更新各个子线程所对应的原始文件,并获得对应于各个原始文件的配置文件。
通过采用上述技术方案,能够利用子线程从服务器上下载一个或者多个动画至本地中,可增加本地页面可播放动画的多样性;并且在下载原始文件之后,利用主线程对原始文件进行依次更新,以获取对应于各个原始文件的配置文件,来避免不同动画之间同时更新,并在播放动画时可能会引起动画数据引用异常的问题。
可选的,在配置文件生成的具体方法中,包括以下步骤:
线程解锁:基于动画播放顺序,将标志位标记于子线程;其中,单个标志位标记于其中一个子线;
文件更新:通过主线程,在本地中更新具有标志位的子线程所对应的原始文件,获取配置文件;
判断文件更新步骤是否结束,若为是,则返回线程解锁步骤,若为否,则返回判断步骤。
通过采用上述技术方案,在通过子线程对原始文件进行下载之后,主线程基于动画播放顺序对原始文件进行更新,以获得配置文件;主线程根据动画播放顺序,每次只更新一个原始文件,更新完成之后,按照顺序更新下一个原始文件,保证原始文件更新为配置文件时不会出现数据混乱。
可选的,在基于图像序列号,从配置文件中获取待加载图像,将待加载图像转换为位图并进行图像处理,将位图分配至预设的内存对象池的步骤之后,包括以下步骤:
判断内存对象池中存入的位图数量是否达到阈值,若为否,则基于图像序列号,从配置文件中获取待加载图像,并将待加载图像分配至内存对象池中;若为是,则返回判断步骤。
通过采用上述技术方案,可在内存对象池中存入多张待加载图像,对待加载图像进行预处理,增加位图的数量,增加动画播放的流畅性。
可选的,所述配置文件中还包括动画播放信息,所述动画播放信息用于显示当前动画的播放时长以及更新动画的播放状态。
可选的,所述更新动画的播放状态至少包括以下一个:
在内存对象池存入当前动画在图像序列中最后一张后,获取当前动画对应的图像序列中的第一张图像;
在内存对象池存入当前动画在图像序列中最后一张后,获取下一个配置文件的图像序列中的第一张图像。
通过采用上述技术方案,显示控件在对动画进行播放时,可以有多种播放模式。
本发明目的二是提供一种动画的加载管理方法,具有对动画的内容管理方便的特点。
本发明的上述发明目的二是通过以下技术方案得以实现的:
一种动画的加载管理方法,包括上述任一种动画的加载方法所组成的技术方案,还包括配置文件的生成步骤:
将原始图像保存在本地;
基于播放顺序,定义每帧原始图像的序列号,其中,所述序列号用于指示所述原始图像在所述图像序列中的位置;
基于原始图像和序列号,确定配置文件。
本发明目的三是提供一种动画的加载系统,具有方便动画加载的特点。
本发明的上述发明目的三是通过以下技术方案得以实现的:
一种动画的加载系统,包括,
文件获取模块,用于获取动画播放所需的配置文件;
图像获取转换模块,用于获取配置文件中的图像序列,并将待加载图像转换为位图;
图像显示模块,用于显示位图。
本发明目的四是提供一种智能终端装置,具有方便执行动画加载的特点。
本发明的上述发明目的四是通过以下技术方案得以实现的:
一种智能终端装置,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行上述任一种动画的加载方法所组成的技术方案的计算机程序。
本发明目的五是提供一种计算机存储介质,能够存储相应的程序,具有便于实现动画的加载的特点。
本发明的上述发明目的五是通过以下技术方案得以实现的:
一种计算机可读存储介质,存储有能够被处理器加载并执行上述任一种动画的加载方法所组成的技术方案的计算机程序。
综上所述,本发明包括以下至少一种有益技术效果:
1.在确定待加载图像后,通过对内存对象池的重复使用,解决了动画播放时图像加载缓慢导致内存占用率过高并引发动画播放卡顿问题,提高了动画的加载速度,使得显示效果更加平稳;
2.通过设置线程的标志位,保证线程之间更新数据安全的问题,能够防止在云端服务器上下载多个动画数据至本地时容易出现动画播放错乱的问题,提高动画播放稳定性;
3.通过在配置文件中配置数据,以使得动画播放具有多种播放模式。
附图说明
图1是本申请实施例中动画的加载方法流程示意图。
图2是本申请实施例中动画的加载方法中根据动画顺序获取配置文件的原理示意图。
图3是本申请实施例中动画的加载方法中从服务器上获取配置文件的子流程示意图。
图4是本申请实施例中动画的加载方法中对原始文件进行更新以获取配置文件的子流程示意图。
图5是本申请实施例中动画的加载方法中确定内存对象池中的位图是否达到阈值的子流程示意图。
图6是本申请实施例中动画的加载管理方法流程示意图。
图7是本申请实施例中动画的加载系统模块示意图。
图8是本申请实施例中存储有能够被处理器加载并执行动画的加载方法的计算机程序的计算机可读存储介质的示意图
附图标记说明:1、文件获取模块;2、图像获取存储模块;3、图像处理模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
下面结合说明书附图对本发明实施例作进一步详细描述。
实施例1
本发明实施例提供一种动画的加载方法,所述方法的主要流程描述如下。
参照图1,S1、获取配置文件。
其中,配置文件包含用于完成动画播放的所有图像和对应于图像的图像序列号。图像序列为配置文件中所有图像的集合,并且所有图像在配置文件中按照序列信息进行排列存储。在本实施例中,序列信息为序列号,序列号和图像唯一绑定,序列号能够指示任一张图像在图像序列中所处的位置,能够通过序列号查找到相关的图像。
动画在应用程序窗口中的显示控件进行显示。配置文件通常为应用程序提供配置参数或者初始设置等重要信息,应用程序可以在不进行重新编译的情况下使用配置文件,将用于完成动画播放的所有图像和对应于图像的图像序列号绑定在配置文件中之后,能够减少应用程序在播放动画前获取动画数据的时间,加快动画播放前的准备工作。
配置文件保存在应用程序执行时的本地储存文件夹中。应用程序启动后,应用程序可以直接调取并使用该配置文件。在本实施例中,配置文件的格式为固定可解析格式,例如xml格式的配置文件,可以用来存储数据以及传输数据。本实施例中,配置文件还包括动画播放信息,所述动画播放信息用于显示当前动画的播放时长以及更新动画的播放状态。具体地,动画播放信息是指整个动画播放的帧率。
参照图2和图3,在S1的具体方法中,包括:
S11、原始文件下载:通过子线程,从服务器获取原始文件并保存在本地。
其中,子线程是应用程序中开启的一个下载任务。由于受到本地存储的限制,应用程序只能播放在本地中存储的配置文件,通过下载任务,将服务器资源下载至本地存储中,能够增加应用程序可播放动画的数量。子线程从服务器上下载资源时,子线程和配置文件一一对应,并且子线程的数量至少为一个。当子线程的数量为多个时,可通过多个子线程,下载获取多个原始文件。通过线程并发方式(即多个子线程)可以同时处理多个下载任务,即子线程越多,能同时处理的下载任务越多,能够获取到的原始文件越多。但是同时开启的子线程越多,占用资源也就越多,很容易造成因内存不足导致应用程序崩溃。因此,在本实施例中,子线程之间采用依次开启的方式,但是考虑到网络下载延迟的问题,在当前子线程下载完配置文件之前,提前开启下一个子线程。
S12、配置文件生成:通过主线程,在本地中依次更新各个子线程所对应的原始文件,并获得对应于各个原始文件的配置文件。
其中,主线程是应用程序中子线程的父线程。主线程为子线程提供资源调度,同时对子线程所获取到的原始文件数据进行更新。具体地,多个子线程下载获取原始文件时,由于受到网络资源调度以及网速等,可能会出现下一个子线程对应的原始文件比当前子线程对应的原始文件提前下载完成的情况。若此时直接对原始文件进行更新,会导致上一个配置文件对应的动画播放完成后,会跳过当前子线程对应的动画,然后播放下一个配置文件对应的动画,而当前子线程对应的配置文件更新后,又会在下一个配置文件对应的动画中插入当前子线程对应的动画,导致动画播放顺序出错。因此,按照多个动画之间的播放顺序,对各个子线程所对应的原始文件进行依次更新,避免应用程序在显示动画时引用配置文件会出现数据错乱的问题。
参照图4,在S12的具体方法中,包括:
S121、线程解锁:基于动画播放顺序,将标志位标记于子线程。
其中,主线程在更新原始文件前处于锁定状态,以避免主线程误更新原始文件导致动画播放数据错乱的问题。而标志位则是作为解除主线程锁定的唯一标识;标志位只有一个,并且标志位能够在子线程之间转移。通过动画的播放顺序,将标志位在子线程之间进行转移,实现子线程根据动画播放顺序获取解除主线程锁定的唯一标识。
S122、文件更新:通过主线程,在本地更新具有标志位的子线程所对应的原始文件,获取配置文件。
S123、判断文件更新步骤是否结束,若为是,则执行S121,若为否,则返回判断步骤。
S2、基于图像序列号,从配置文件中获取待加载图像,将待加载图像转换为位图并进行图像处理,将位图分配至预设的内存对象池。
其中,由于配置文件中的每一张图像均有对应的图像序列号,在应用程序从配置文件中加载待加载图像时,应用程序依照存储路径寻找对应的配置文件,通过对配置文件的解析以及图像序列号,来获取整个图像序列中的指定的待加载图像。
将待加载图像转换为位图并进行图像处理,位图图像弥补了矢量式图像的缺陷,它能够制作出色彩和色调变化丰富的图像,可以逼真地表现自然界的景象,同时也可以很容易地在不同软件之间交换文件。位图具有较好的图像处理方式,因此将待加载图像转变为位图,可通过多种图像处理,来使完成动画的每一张图像具有较高的色彩。
图像处理包括抖动处理、颜色通道设置、图像解码速率、像素密度设置以及缩放率设置中的其中一种或多种。通过设置上述任意一种图像处理,保证获取到同样规格的位图,避免位图所占用的内存较大而无法存入内存对象池,以满足内存对象池的重复使用。
内存对象池是应用程序在打开窗口控件后在内存中所占用的内存空间,内存对象池的内存大小是根据本地配置文件中单张待加载图像的内存大小而预先设置的。在其他实施例中,内存对象池的大小还可以在第一次加载待加载图像时,根据第一次待加载图像的大小来设定。将转换后的位图分配至固定内存空间的内存对象池,来避免内存抖动的问题;同时基于图像序列,对每一张待加载图像进行处理以及分配内存对象池,对内存对象池进行重复使用,避免每一张图像均需要分配部分内存空间进行图像处理,从而达到节约内存的效果。
可以理解的是,位图也被称为点阵图像或栅格图像,是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。位图可以表现色彩的变化和颜色的细微过渡,产生逼真的效果,但是在保存时需要记录每一个像素的位置和颜色值,会占用较大的存储空间。当放大位图时,可以看见赖以构成整个图像的单个方块,增大单个像素,从而使线条和形状显得参差不齐。由于每一个像素都是单独染色的,可以通过以每次一个像素的频率操作选择区域而产生近似相片的逼真效果,诸如加深阴影和加重颜色。同样,由于位图图像是以排列的像素集合体形式创建的,所以不能单独操作(如移动)局部位图。
参照图5,在S2的具体方法之后,包括:
S21、判断内存对象池中存的位图数量是否达到阈值,若为是,则返回判断步骤,若为否,则执行S2。
其中,内存对象池起到临时中转的作用,内存对象池可同时存入多张位图,以减少显示控件在切换显示图像时的等待时间。但是内存对象池预设的空间太大,也会占用较大的内存空间,因此设定一个较为合理的内存空间,来达到占用内存小又能够达到动画播放顺畅的效果。本实施例中,内存对象池中位图数量的阈值设置为两个,并且内存对象池的内存大小是依据本地配置文件中占用内存较大的两张图像的内存设定。
S3、获取位图,将位图发送至显示控件,在内存对象池中移除位图,并返回至获取待加载图像步骤。
其中,根据动画的播放帧率,可以得出每张位图在显示控件中的显示时间。将当前位图从内存对象池中发送至显示控件后,即当前位图从内存对象池中移除,内存对象池中会遗留出一个新的内存空间,以便新的位图存入。在当前位图显示期间内,应用程序可根据图像序列号在配置文件中加载待加载图像,以提前对图像进行处理,便于显示控件进行显示。
并且应用程序采用软引用的方式对显示控件进行绑定,在内存紧张的情况下自动释放回收显示控件占用的内存,减少应用程序在内存溢出时发生崩溃的问题。
显示控件还可以根据动画播放信息来更新动画的播放状态,动画的播放状态还包括单次播放、循环播放和依次播放三个播放条件,以实现单动画的单次播放、单动画的循环播放以及多动画的依次播放。
在内存对象池存入当前动画在图像序列中最后一张后,应用程序停止从配置文件中获取待加载图像,直到内存对象池中的所有位图均发送至显示控件后,即整个动画播放完成。
在内存对象池存入当前动画在图像序列中最后一张后,应用程序根据获取到图像序列,重新选择图像序列中的第一张作为待加载图像,实现显示控件播放完最后一张图像时能够对当前动画进行循环播放。
在内存对象池存入当前动画在图像序列中最后一张后,应用程序根据本地已经更新好的配置文件,重新绑定并载入新动画的配置文件,并对新动画的配置文件中的图像进行加载处理和显示。
本申请实施例的实施原理为:显示控件根据设置的相邻帧图像的时间来动态加载替换显示的位图,其中,预设一个内存对象池,来满足图像加载替换所需的内存空间,并对内存对象池进行重复使用,减少对配置文件中的待加载图像进行图像处理时还需要额外分配内存空间,减少内存分配导致的应用程序容易崩溃的问题。
实施例2
参照图6,在本实施例中,提供了一种动画的加载管理方法,包括上述的动画加载方法,还包括:
S10、将原始图像保存在本地。
其中,原始图像是在组合成配置文件前,经过图像预处理之后的图像,尽可能减小播放动画时每张图像所占用的内存空间。具体地,在绘制或者拍摄所有图片之后,将图片导入至视频软件中,通过视频软件制作所需动画的完整效果图,制作完成后检查是否存在多余图像,尽量减少所需的整体图像的数量。然后通过动画整体效果的色彩对比和层次分级,确定每一张图像的保存格式,如JPG或者PNG等格式,最后由视频软件按照动画播放顺序统一导出并保存在本地。例如,如果单张图片颜色较少,并且主要以纯色或者平滑的渐变色进行填充或者具备较大亮度差异以及强烈对比的简单图片,则采用PNG格式存储;如果单张图片内容比较写实或者是颜色层次丰富,则采用JPG格式保存。
S20、基于播放顺序,定义每帧原始图像的序列号。
其中,将保存在本地的原始图像按照动画的播放顺序进行排序,并且按照动画播放顺序为原始图像进行统一命名,以生成原始图像的序列号。具体地,在通过步骤S10中,当视频软件将原始图像保存在本地后,原始图像之间的大小或者格式可能都不一样,为每张原始图像定义一个序列号,以作为该张原始图像的唯一标识,便于查找定位。
S30、基于原始图像和序列号,确定配置文件。
实施例3
参照图7,在本实施例中,提供了一种动画加载系统,与上述实施例1中的动画加载方法一一对应,该系统包括文件获取模块、图像获取存储模块以及图像显示模块。各功能模块详细说明如下:
文件获取模块,用于获取动画播放所需的配置文件;
图像获取存储模块,用于获取配置文件中的待加载图像,并对待加载图像进行处理后分配至预设的内存对象池中;
图像显示模块,用于获取并显示位图。
实施例4,在本实施例中,提供了一种智能终端装置,包括存储器和处理器,存储器上存储有能够被处理器加载并执行上述的动画的加载方法的计算机程序。
参照图8,在本实施例中,提供了一种计算机可读存储介质,其存储有能够被处理器加载并执行上述的动画的加载方法的计算机程序,计算机程序被处理器执行时实现一下步骤:
S1、获取配置文件;
S11、原始文件下载:通过子线程,从服务器获取原始文件并保存在本地;
S12、配置文件生成:通过主线程,在本地中依次更新各个子线程所对应的原始文件,并获得对应于各个原始文件的配置文件;
S121、线程解锁:基于动画播放顺序,将标志位标记于子线程;
S122、文件更新:通过主线程,在本地更新具有标志位的子线程所对应的原始文件,获取配置文件;
S123、判断文件更新步骤是否结束,若为是,则执行S121,若为否,则返回判断步骤;
S2、基于图像序列号,从配置文件中获取待加载图像,将待加载图像转换为位图并进行图像处理,将位图分配至预设的内存对象池;
S21、判断内存对象池中存的位图数量是否达到阈值,若为是,则返回判断步骤,若为否,则执行S2;
S3、获取位图,将位图发送至显示控件,在内存对象池中移除位图,并返回至获取待加载图像步骤。
所述计算机可读存储介质例如包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上具体实施方式的实施例均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。
Claims (8)
1.一种动画的加载方法,其特征在于,所述方法包括以下步骤:
原始文件下载:通过子线程,从服务器获取原始文件并保存在本地,其中,一个子线程对应一个原始文件,并且子线程数量至少有一个;
线程解锁:基于动画播放顺序,将标志位标记于子线程;其中,单个标志位标记于其中一个子线;
文件更新:通过主线程,在本地中更新具有标志位的子线程所对应的原始文件,获取配置文件;
判断文件更新步骤是否结束,若为是,则返回线程解锁步骤,若为否,则返回判断步骤;
基于图像序列号,从配置文件中获取待加载图像,将待加载图像转换为位图并进行图像处理,将位图分配至预设的内存对象池,其中,所述内存对象池用于向位图提供内存空间;
获取位图,将位图发送至显示控件,在内存对象池中移除位图,并返回至获取待加载图像步骤。
2.根据权利要求1所述的方法,其特征在于,在基于图像序列号,从配置文件中获取待加载图像,将待加载图像转换为位图并进行图像处理,将位图分配至预设的内存对象池的步骤之后,包括以下步骤:
判断内存对象池中存入的位图数量是否达到阈值,若为否,则基于图像序列号,从配置文件中获取待加载图像,并将待加载图像分配至内存对象池中;若为是,则返回判断步骤。
3.根据权利要求1所述的方法,其特征在于,所述配置文件中还包括动画播放信息,所述动画播放信息用于显示当前动画的播放时长以及更新动画的播放状态。
4.根据权利要求3所述的方法,其特征在于,所述更新动画的播放状态至少包括以下一个:
在内存对象池存入当前动画在图像序列中最后一张后,获取当前动画对应的图像序列中的第一张图像;
在内存对象池存入当前动画在图像序列中最后一张后,获取下一个配置文件的图像序列中的第一张图像。
5.一种动画的加载管理方法,其特征在于,包括如权利要求1-4中任一项所述的动画的加载方法,还包括配置文件的生成步骤:
将原始图像保存在本地;
基于播放顺序,定义每帧原始图像的图像序列号,其中,所述图像序列号用于指示所述原始图像在所述配置文件中的位置;
基于原始图像和图像序列号,确定配置文件。
6.一种动画的加载系统,其特征在于,包括:
文件下载模块,用于通过子线程,从服务器获取原始文件并保存在本地;
线程解锁模块,用于基于动画播放顺序,将标志位标记于子线程;
文件更新模块,用于通过主线程,在本地中更新具有标志位的子线程所对应的原始文件,获取配置文件;
判断模块,用于判断文件更新步骤是否结束,若为是,则返回线程解锁步骤,若为否,则返回判断步骤;
图像获取存储模块,用于获取配置文件中的待加载图像,并对待加载图像进行处理后分配至预设的内存对象池中;
图像显示模块,用于获取并显示位图。
7.一种智能终端装置,其特征在于,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行如权利要求1至4中任一种方法的计算机程序。
8.一种计算机可读存储介质,其特征在于,存储有能够被处理器加载并执行如权利要求1至4中任一种方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278387.3A CN113986438B (zh) | 2021-10-30 | 2021-10-30 | 动画的加载方法、系统、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278387.3A CN113986438B (zh) | 2021-10-30 | 2021-10-30 | 动画的加载方法、系统、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113986438A CN113986438A (zh) | 2022-01-28 |
CN113986438B true CN113986438B (zh) | 2024-01-30 |
Family
ID=79745002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111278387.3A Active CN113986438B (zh) | 2021-10-30 | 2021-10-30 | 动画的加载方法、系统、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113986438B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114995738B (zh) * | 2022-05-31 | 2023-06-16 | 重庆长安汽车股份有限公司 | 一种变换方法、装置、电子设备、存储介质及程序产品 |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6088044A (en) * | 1998-05-29 | 2000-07-11 | International Business Machines Corporation | Method for parallelizing software graphics geometry pipeline rendering |
CN102467488A (zh) * | 2011-02-25 | 2012-05-23 | 中标软件有限公司 | 一种文字处理文档异步加载的方法 |
CN102521866A (zh) * | 2011-11-16 | 2012-06-27 | 戚军 | 一种角色动画实现方法及系统 |
CN102567097A (zh) * | 2011-12-29 | 2012-07-11 | Tcl王牌电器(惠州)有限公司 | 一种多任务下载的方法及终端 |
CN103760966A (zh) * | 2013-05-02 | 2014-04-30 | 乐视网信息技术(北京)股份有限公司 | 一种实现图形缓冲的方法 |
CN106611435A (zh) * | 2016-12-22 | 2017-05-03 | 广州华多网络科技有限公司 | 动画处理方法和装置 |
CN106709041A (zh) * | 2016-12-29 | 2017-05-24 | 深圳岂凡网络有限公司 | 一种网页图形图像渲染系统及方法 |
CN107357650A (zh) * | 2017-06-06 | 2017-11-17 | 武汉斗鱼网络科技有限公司 | 一种基于图片资源的内存自动释放方法及系统 |
CN107977371A (zh) * | 2016-10-21 | 2018-05-01 | 阿里巴巴集团控股有限公司 | 页面元素的请求方法、显示方法及客户端 |
CN109710873A (zh) * | 2018-12-28 | 2019-05-03 | 北京微播视界科技有限公司 | 客户端的图片加载显示方法、装置及电子设备 |
CN110647703A (zh) * | 2019-09-18 | 2020-01-03 | 平安科技(深圳)有限公司 | 动画播放方法、装置、计算机设备和存储介质 |
CN110909022A (zh) * | 2018-09-14 | 2020-03-24 | 北京京东尚科信息技术有限公司 | 一种数据查询方法和装置 |
CN110971958A (zh) * | 2018-09-30 | 2020-04-07 | 武汉斗鱼网络科技有限公司 | 直播礼物横幅逐帧动画展示方法、存储介质、设备及系统 |
CN111432262A (zh) * | 2020-02-24 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 页面视频渲染方法及装置 |
CN112070863A (zh) * | 2019-06-11 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 动画文件处理方法、装置、计算机可读存储介质和计算机设备 |
CN112583923A (zh) * | 2020-12-16 | 2021-03-30 | 深圳数联天下智能科技有限公司 | 一种文件传输方法、设备和存储介质 |
CN112948040A (zh) * | 2021-02-26 | 2021-06-11 | 青岛海信医疗设备股份有限公司 | 一种影像显示方法和装置及设备 |
CN113326086A (zh) * | 2021-05-18 | 2021-08-31 | 翱捷科技股份有限公司 | 基于lvgl的gif图片显示方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8381150B2 (en) * | 2011-06-02 | 2013-02-19 | International Business Machines Corporation | Method for performing a parallel static timing analysis using thread-specific sub-graphs |
US20140279731A1 (en) * | 2013-03-13 | 2014-09-18 | Ivan Bezdomny Inc. | System and Method for Automated Text Coverage of a Live Event Using Structured and Unstructured Data Sources |
-
2021
- 2021-10-30 CN CN202111278387.3A patent/CN113986438B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6088044A (en) * | 1998-05-29 | 2000-07-11 | International Business Machines Corporation | Method for parallelizing software graphics geometry pipeline rendering |
CN102467488A (zh) * | 2011-02-25 | 2012-05-23 | 中标软件有限公司 | 一种文字处理文档异步加载的方法 |
CN102521866A (zh) * | 2011-11-16 | 2012-06-27 | 戚军 | 一种角色动画实现方法及系统 |
CN102567097A (zh) * | 2011-12-29 | 2012-07-11 | Tcl王牌电器(惠州)有限公司 | 一种多任务下载的方法及终端 |
CN103760966A (zh) * | 2013-05-02 | 2014-04-30 | 乐视网信息技术(北京)股份有限公司 | 一种实现图形缓冲的方法 |
CN107977371A (zh) * | 2016-10-21 | 2018-05-01 | 阿里巴巴集团控股有限公司 | 页面元素的请求方法、显示方法及客户端 |
CN106611435A (zh) * | 2016-12-22 | 2017-05-03 | 广州华多网络科技有限公司 | 动画处理方法和装置 |
CN106709041A (zh) * | 2016-12-29 | 2017-05-24 | 深圳岂凡网络有限公司 | 一种网页图形图像渲染系统及方法 |
CN107357650A (zh) * | 2017-06-06 | 2017-11-17 | 武汉斗鱼网络科技有限公司 | 一种基于图片资源的内存自动释放方法及系统 |
CN110909022A (zh) * | 2018-09-14 | 2020-03-24 | 北京京东尚科信息技术有限公司 | 一种数据查询方法和装置 |
CN110971958A (zh) * | 2018-09-30 | 2020-04-07 | 武汉斗鱼网络科技有限公司 | 直播礼物横幅逐帧动画展示方法、存储介质、设备及系统 |
CN109710873A (zh) * | 2018-12-28 | 2019-05-03 | 北京微播视界科技有限公司 | 客户端的图片加载显示方法、装置及电子设备 |
CN112070863A (zh) * | 2019-06-11 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 动画文件处理方法、装置、计算机可读存储介质和计算机设备 |
CN110647703A (zh) * | 2019-09-18 | 2020-01-03 | 平安科技(深圳)有限公司 | 动画播放方法、装置、计算机设备和存储介质 |
CN111432262A (zh) * | 2020-02-24 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 页面视频渲染方法及装置 |
CN112583923A (zh) * | 2020-12-16 | 2021-03-30 | 深圳数联天下智能科技有限公司 | 一种文件传输方法、设备和存储介质 |
CN112948040A (zh) * | 2021-02-26 | 2021-06-11 | 青岛海信医疗设备股份有限公司 | 一种影像显示方法和装置及设备 |
CN113326086A (zh) * | 2021-05-18 | 2021-08-31 | 翱捷科技股份有限公司 | 基于lvgl的gif图片显示方法及装置 |
Non-Patent Citations (5)
Title |
---|
Android异步技术的对比实验及应用;陈星等;计算机应用与软件;第33卷(第2期);第188页-191页 * |
Security Analysis of Emerging Smart Home Applications;Jaeyeon Jung等;Symposium on Security and Privacy;第636页-654页 * |
Web PACS浏览工作站的构建;张艳;王鹏程;谢晋东;王晓敏;韩彬;;中国医学物理学杂志(第04期);第737页-740页 * |
大数据文件和混合文件的多线程并行下载;韦兴柳等;计算机工程与应用;第48卷(第14期);第84页-89页 * |
导引头实时系统仿真架构设计;韩丰娟等;计算机应用与软件;第36卷(第6期);第76页-80页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113986438A (zh) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19918046B4 (de) | Speicherstruktur für Bild-in-Bild-Anzeige bei einer digitalen Videoanzeigeeinheit sowie Verfahren hierfür | |
DE60022610T2 (de) | Verfahren zur Animationskodierung in einer Bilddatei | |
CN105597321B (zh) | 一种全屏游戏状态下的弹幕显示方法与系统 | |
CN101065784B (zh) | 计算机图形处理 | |
DE69534751T2 (de) | Bilddatenerzeugungsverfahren, Bilddatenverarbeitungsvorrichtung und Aufzeichnungsmedium | |
US5844569A (en) | Display device interface including support for generalized flipping of surfaces | |
US20090079761A1 (en) | Apparatus, method, and computer program product for rendering multi-viewpoint images | |
EP1498900A2 (en) | Modification of media with common attributes on a digital nonlinear editing system | |
DE69433988T2 (de) | Bilderzeugung | |
CN110933359B (zh) | 一种视频会议智能布局方法、装置及计算机可读存储介质 | |
DE3718501A1 (de) | Videoanzeigegeraet | |
JPS6153908B1 (zh) | ||
CN113986438B (zh) | 动画的加载方法、系统、装置及计算机可读存储介质 | |
CN102196151B (zh) | 图像处理装置和图像处理方法 | |
CN108364335A (zh) | 一种动画绘制方法及装置 | |
CN108184159A (zh) | 一种进度条的实现方法及装置 | |
CN112256993B (zh) | 一种图片加速显示方法、系统、设备和介质 | |
US8296657B2 (en) | Random image selection without viewing duplication | |
EP0194092A2 (en) | Display system and method | |
EP0476974A2 (en) | Apparatus for processing image data | |
CN103714558A (zh) | 图像处理装置、图像处理方法和程序 | |
CN114510172A (zh) | 一种电子标牌显示的方法及电子设备 | |
CN114339338B (zh) | 一种基于车载视频的图像自定义渲染方法及存储介质 | |
JP2002502526A (ja) | グラフィック要素を含むより大きなファイルを表示し、その範囲内でナビゲートする方法、ならびにテキストおよびグラフィックまたはイメージ情報を含むファイルを圧縮する方法 | |
CN108024112A (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 |