CN111711841A - 图像帧播放方法、装置、终端及存储介质 - Google Patents

图像帧播放方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN111711841A
CN111711841A CN202010730190.8A CN202010730190A CN111711841A CN 111711841 A CN111711841 A CN 111711841A CN 202010730190 A CN202010730190 A CN 202010730190A CN 111711841 A CN111711841 A CN 111711841A
Authority
CN
China
Prior art keywords
image
playing
image frames
memory
group
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
Application number
CN202010730190.8A
Other languages
English (en)
Other versions
CN111711841B (zh
Inventor
刘佳泽
罗忠岚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN202010730190.8A priority Critical patent/CN111711841B/zh
Priority claimed from CN202010730190.8A external-priority patent/CN111711841B/zh
Publication of CN111711841A publication Critical patent/CN111711841A/zh
Application granted granted Critical
Publication of CN111711841B publication Critical patent/CN111711841B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26233Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving content or additional data duration or size, e.g. length of a movie, size of an executable file
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Abstract

本申请实施例公开了一种图像帧播放方法、装置、终端及存储介质,属于图像处理领域。该方法包括:获取终端的参数信息及多个图像帧,参数信息包括目标FPS或内存可用容量中的至少一项;根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组,每个图像组包括至少一个图像帧;每次将一个图像组加载到内存中,并播放已加载的图像组。无需一次性将多个图像帧加载到内存中,减少了内存的占用量,降低了内存占用率,并且由于内存占用率降低,能够及时完成图像组的加载,保证了图像帧的播放流畅度,提高了播放效果。

Description

图像帧播放方法、装置、终端及存储介质
技术领域
本申请实施例涉及图像处理领域,特别涉及一种图像帧播放方法、装置、终端及存储介质。
背景技术
随着互联网的普及和图像的广泛应用,越来越多的用户会观看动态播放的效果,用户对图像的动态播放效果的要求也越来越高。
在动态播放时,先获取多个图像帧,将多个图像帧加载到内存中,播放内存中已加载的图像帧,以依次播放多个图像帧,实现动态播放的效果。
但是由于一次性将多个图像帧加载到内存中,导致内存占用率高,无法及时完成多个图像帧的加载,进而导致图像帧的播放卡顿。
发明内容
本申请实施例提供了一种图像帧播放方法、装置、终端及存储介质,减少了内存的占用量,降低了内存占用率,保证了图像帧的播放流畅度,提高了播放效果。所述技术方案如下:
一方面,提供了一种图像帧播放方法,所述方法包括:
获取终端的参数信息及多个图像帧,所述参数信息包括目标FPS(Frames PerSecond,每秒传输帧数)或内存可用容量中的至少一项;
根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,每个图像组包括至少一个图像帧;
每次将一个图像组加载到内存中,并播放已加载的所述图像组。
可选地,所述参数信息包括所述目标FPS,所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,包括:
将所述目标FPS作为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组。
可选地,所述将所述目标FPS作为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组之前,所述方法还包括:
获取当前时刻之前的第一参考时长内的多个历史FPS;
获取所述多个历史FPS的平均值,确定为所述目标FPS;或者,
获取所述多个历史FPS中的中位数,确定为所述目标FPS;或者,
获取所述多个历史FPS中的最小值,确定为所述目标FPS。
可选地,所述获取当前时刻之前的第一参考时长内的多个历史FPS之前,所述方法还包括:
每隔第二参考时长,记录一次历史FPS,所述第二参考时长小于所述第一参考时长。
可选地,所述参数信息包括所述内存可用容量,所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,包括:
按照参考比例获取所述内存可用容量的目标容量;
将所述目标容量与单位容量的比值确定为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组;所述单位容量为所述多个图像帧中每个图像帧的容量。
可选地,所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组之前,所述方法还包括:
如果所述内存可用容量不大于所述多个图像帧的总容量,执行所述按照参考比例获取所述内存可用容量的目标容量的步骤。
可选地,所述参数信息包括所述内存可用容量和所述目标FPS;所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组之前,所述方法还包括:
如果所述内存可用容量大于所述多个图像帧的总容量,则获取当前时刻之前的第一参考时长内的多个历史FPS;
获取所述多个历史FPS的平均值,确定为所述目标FPS;或者,
获取所述多个历史FPS中的中位数,确定为所述目标FPS;或者,
获取所述多个历史FPS中的最小值,确定为所述目标FPS。
可选地,所述每次将一个图像组加载到内存中,并播放已加载的所述图像组,包括:
在播放第一图像组的过程中,加载第二图像组,所述第二图像组为所述第一图像组的下一个图像组。
可选地,所述方法还包括:
播放所述第一图像组完成时,在所述内存中删除所述第一图像组。
可选地,所述多个图像帧按照顺序排列,所述每次将一个图像组加载到内存中,并播放已加载的所述图像组,包括:
对于所述多个图像组中的每个图像组,按照所述图像组中包括的多个图像帧的顺序,依次将每个图像帧加载到所述内存中,按照所述多个图像帧的顺序依次播放已加载的图像帧。
可选地,所述每次将一个图像组加载到内存中,并播放已加载的所述图像组,包括:
每次将所述多个图像组中的一个图像组加载到所述内存中,按照单位播放时长,播放已加载的所述图像组中的每个图像帧;
所述每次将所述多个图像组中的一个图像组加载到所述内存中,按照单位播放时长,播放已加载的所述图像组中的每个图像帧之前,所述方法还包括:
获取所述多个图像帧的目标播放时长;
根据所述多个图像帧的数量和所述目标播放时长,确定每个图像帧的单位播放时长。
另一方面,提供了一种图像帧播放装置,所述装置包括:
获取模块,用于获取终端的参数信息及多个图像帧,所述参数信息包括目标FPS或内存可用容量中的至少一项;
分组模块,用于根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,每个图像组包括至少一个图像帧;
播放模块,用于每次将一个图像组加载到内存中,并播放已加载的所述图像组。
可选地,所述参数信息包括所述目标FPS,所述分组模块,用于将所述目标FPS作为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组。
可选地,所述获取模块,还用于:
获取当前时刻之前的第一参考时长内的多个历史FPS;
获取所述多个历史FPS的平均值,确定为所述目标FPS;或者,
获取所述多个历史FPS中的中位数,确定为所述目标FPS;或者,
获取所述多个历史FPS中的最小值,确定为所述目标FPS。
可选地,所述装置还包括:
记录模块,用于每隔第二参考时长,记录一次历史FPS,所述第二参考时长小于所述第一参考时长。
可选地,所述参数信息包括所述内存可用容量,所述分组模块,用于:
按照参考比例获取所述内存可用容量的目标容量;
将所述目标容量与单位容量的比值确定为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组;所述单位容量为所述多个图像帧中每个图像帧的容量。
可选地,所述分组模块,用于如果所述内存可用容量不大于所述多个图像帧的总容量,执行所述按照参考比例获取所述内存可用容量的目标容量的步骤。
可选地,所述参数信息包括所述内存可用容量和所述目标FPS;所述分组模块,用于:
如果所述内存可用容量大于所述多个图像帧的总容量,则获取当前时刻之前的第一参考时长内的多个历史FPS;
获取所述多个历史FPS的平均值,确定为所述目标FPS;或者,
获取所述多个历史FPS中的中位数,确定为所述目标FPS;或者,
获取所述多个历史FPS中的最小值,确定为所述目标FPS。
可选地,所述播放模块,还用于在播放第一图像组的过程中,加载第二图像组,所述第二图像组为所述第一图像组的下一个图像组。
可选地,所述播放模块,还用于播放所述第一图像组完成时,在所述内存中删除所述第一图像组。
可选地,所述播放模块,用于对于所述多个图像组中的每个图像组,按照所述图像组中包括的多个图像帧的顺序,依次将每个图像帧加载到所述内存中,按照所述多个图像帧的顺序依次播放已加载的图像帧。
可选地,所述播放模块,包括:
每次将所述多个图像组中的一个图像组加载到所述内存中,按照单位播放时长,播放已加载的所述图像组中的每个图像帧;
所述获取模块,用于:
获取所述多个图像帧的目标播放时长;
根据所述多个图像帧的数量和所述目标播放时长,确定每个图像帧的单位播放时长。
另一方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如所述图像帧播放方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如所述图像帧播放方法中所执行的操作。
再一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,终端的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该终端实现如上述方面所述的图像帧播放方法中所执行的操作。
本申请实施例提供的方法、装置、终端及存储介质,根据终端的参数信息对多个图像帧进行分组,每次在内存中加载一个图像组并播放,无需一次性将多个图像帧加载到内存中,减少了内存的占用量,降低了内存占用率,并且由于内存占用率降低,能够及时完成图像组的加载,保证了图像帧的播放流畅度,提高了播放效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图像帧播放方法的流程图。
图2是本申请实施例提供的一种图像帧播放方法的流程图。
图3是本申请实施例提供的一种图像帧播放装置的结构示意图。
图4是本申请实施例提供的另一种图像帧播放装置的结构示意图。
图5是本申请实施例提供的一种终端的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。
本申请实施例提供的图像帧播放方法,能够应用在多个场景中。
例如,本申请实施例提供的方法,应用在即时通讯场景下,用户通过终端中的即时通讯应用与其他用户进行交流,并且在交流过程中其他用户向该用户发送动态图像,当该用户触发播放动态图像的指令时,终端检测到用户的触发操作,则终端采用本申请实施例提供的方法,播放该动态图像。
或者,本申请实施例提供的方法,应用在图像搜索场景下,当用户通过终端搜索到任一动态图像后,则终端采用本申请实施例提供的方法,播放搜索得到的任一动态图像。
图1是本申请实施例提供的一种图像帧播放方法的流程图。本申请实施例的执行主体为终端。参见图1,该方法包括:
步骤101、获取终端的参数信息及多个图像帧。
其中,参数信息包括目标FPS或内存可用容量中的至少一项。
步骤102、根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组。
其中,每个图像组包括至少一个图像帧。
步骤103、每次将一个图像组加载到内存中,并播放已加载的图像组。
本申请实施例提供的方法,根据终端的参数信息对多个图像帧进行分组,每次在内存中加载一个图像组并播放,无需一次性将多个图像帧加载到内存中,减少了内存的占用量,降低了内存占用率,并且由于内存占用率降低,能够及时完成图像组的加载,保证了图像帧的播放流畅度,提高了播放效果。
可选地,参数信息包括目标FPS,根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组,包括:
将目标FPS作为每个图像组中包括的图像帧的数量,将数量的相邻图像帧划分为一个图像组,得到多个图像组。
可选地,将目标FPS作为每个图像组中包括的图像帧的数量,将数量的相邻图像帧划分为一个图像组,得到多个图像组之前,方法还包括:
获取当前时刻之前的第一参考时长内的多个历史FPS;
获取多个历史FPS的平均值,确定为目标FPS;或者,
获取多个历史FPS中的中位数,确定为目标FPS;或者,
获取多个历史FPS中的最小值,确定为目标FPS。
可选地,获取当前时刻之前的第一参考时长内的多个历史FPS值之前,方法还包括:
每隔第二参考时长,记录一次历史FPS,第二参考时长小于第一参考时长。
可选地,参数信息包括内存可用容量,根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组,包括:
按照参考比例获取内存可用容量的目标容量;
将目标容量与单位容量的比值确定为每个图像组中包括的图像帧的数量,将数量的相邻图像帧划分为一个图像组,得到多个图像组;单位容量为多个图像帧中每个图像帧的容量。
可选地,根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组之前,方法还包括:
如果可用容量不大于多个图像帧的总容量,执行按照参考比例获取内存可用容量的目标容量的步骤。
可选地,参数信息包括内存可用容量和目标FPS;根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组之前,方法还包括:
如果内存可用容量大于多个图像帧的总容量,则获取当前时刻之前的第一参考时长内的多个历史FPS;
获取多个历史FPS的平均值,确定为目标FPS;或者,
获取多个历史FPS中的中位数,确定为目标FPS;或者,
获取多个历史FPS中的最小值,确定为目标FPS。
可选地,每次将一个图像组加载到内存中,并播放已加载的所述图像组,包括:
在播放第一图像组的过程中,加载第二图像组,第二图像组为第一图像组的下一个图像组。
可选地,方法还包括:
播放第一图像组完成时,在内存中删除第一图像组。
可选地,多个图像帧按照顺序排列,每次将一个图像组加载到内存中,并播放已加载的图像组,包括:
对于多个图像组中的每个图像组,按照图像组中包括的多个图像帧的顺序,依次将每个图像帧加载到内存中,按照多个图像帧的顺序依次播放已加载的图像帧。
可选地,每次将一个图像组加载到内存中,并播放已加载的图像组,包括:
每次将多个图像组中的一个图像组加载到内存中,按照单位播放时长,播放已加载的图像组中的每个图像帧;
每次将多个图像组中的一个图像组加载到内存中,按照单位播放时长,播放已加载的图像组中的每个图像帧之前,方法还包括:
获取多个图像帧的目标播放时长;
根据多个图像帧的数量和目标播放时长,确定每个图像帧的单位播放时长。
图2是本申请实施例提供的一种图像帧播放方法的流程图。本申请实施例的执行主体为终端,参见图2,该方法包括:
步骤201、获取终端的参数信息及多个图像帧。
终端在播放多个图像帧时,实际上是依次播放多个图像帧中的每个图像帧,用户观看播放的多个图像帧时,由于用户的眼睛的延迟作用,这多个图像帧呈现出连续显示的效果,通过该多个图像帧连续显示的方式实现了图像的动态播放。
可选地,获取的多个图像帧为动态图像中包括的图像帧。其中,该动态图像由多个图像帧组成,则在播放动态图像时,实际上是依次播放该动态图像中的多个图像帧,这多个图像帧在播放时能够实现动态播放。
在一种可能实现方式中,该动态图像是指格式为GIF(Graphics InterchangeFormat,图像互换格式)的图片。在另一种可能实现方式中,该动态图像为终端中存储的图像,或者为从服务器中下载的图像,或者为采用其他方式获取的图像。
本申请实施例中,终端还需要获取该终端的参数信息,该参数信息包括目标FPS或内存可用容量中的至少一项。
下面,对参数信息中包括的目标FPS和内存可用容量进行解释:
FPS:FPS用于表示终端在播放图像时,每秒传输的图像的帧数,则FPS为衡量终端播放图像的效果的重要指标。
而本申请实施例中的目标FPS为后续对多个图像帧进行分组的FPS,能够保证分组得到的图像组能够满足终端运行过程中的FPS的要求。
内存可用容量:内存为终端中一个重要的组成部分,终端在对数据进行处理时,需要将处理的数据存储在内存中,后续再读取内存中的数据以进行传输。内存可用容量为终端的内存中剩余的容量,如果终端需要播放多个图像帧,在播放过程中需要占用内存可用容量,则根据内存可用容量对多个图像帧进行分组,以使分组后的图像组满足内存可用容量要求。
步骤202、根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组。
获取终端的参数信息和多个图像帧后,根据图像帧的数量和参数信息确定每个图像组中包括的图像帧的数量,按照确定的数量将相邻的图像帧划分成一个图像组,则每个图像组中包括至少一个图像帧。
例如,多个图像帧中包括12个图像帧,并且根据终端的参数信息确定的数量为4,则将第1个图像帧、第2个图像帧、第3个图像帧、第4个图像帧确定为一组图像帧,将第5个图像帧、第6个图像帧、第7个图像帧、第8个图像帧确定为一组图像帧,将第9个图像帧、第10个图像帧、第11个图像帧、第12个图像帧确定为一组图像帧。
根据参数信息包括的内容不同,本申请实施例分为3种情况进行描述。
第一种:若参数信息中包括目标FPS,则步骤202包括步骤2021-2023:
步骤2021、获取当前时刻之前的第一参考时长内的多个历史FPS。
终端需要先获取多个历史FPS来确定目标FPS,之后终端需要播放多个图像帧时,再获取当前时刻之前的第一参考时长内的多个历史FPS。
可选地,终端在运行过程中,每隔第二参考时长就会读取一次FPS,将读取的FPS记录为历史FPS,则终端能够存储多个历史FPS。之后能够从已存储的多个历史FPS中获取当前时刻之前的第一参考时长内的多个历史FPS。
其中,该第二参考时长小于该第一参考时长。终端获取的当前时刻之前的第一参考时长内的多个历史FPS的数量为第一参考时长和第二参考时长的比值。
其中,该第一参考时长和第二参考时长均由终端设置,或者由操作人员设置,或者采用其他方式设置。例如,该第一参考时长为10秒、20秒或者其他数值。该第二参考时长为0.5秒、1秒或者其他数值。
步骤2022、根据多个历史FPS确定目标FPS。
终端获取到多个历史FPS后,通过综合考虑多个历史FPS,进而确定目标FPS,确定的目标FPS更符合终端的处理能力。
可选地,终端根据多个历史FPS确定目标FPS的方式包括以下三种:
(1)获取多个历史FPS的平均值,确定为目标FPS。
获取多个历史FPS后,通过获取多个历史FPS的和与多个历史FPS的数量之间的比值,确定为目标FPS。
(2)获取多个历史FPS中的中位数,确定为目标FPS。
(3)获取多个历史FPS中的最小值,确定为目标FPS。
在本申请实施例中,获取多个历史FPS后,根据该多个历史FPS确定目标FPS,综合考虑了之前时长内的FPS,提高获取的目标FPS的准确性。
步骤2023、将目标FPS作为每个图像组中包括的图像帧的数量,将数量的相邻图像帧划分为一个图像组,得到多个图像组。
终端确定目标FPS之后,将目标FPS作为每个图像组中包括的图像帧的数量,将该数量的相邻图像帧划分为一个图像组,得到多个图像组。
例如,当多个图像帧中包括30个图像帧,目标FPS为10时,则将第1个图像帧到第10个图像帧划分为1个图像组,将第11个图像帧到第20个图像帧划分为1个图像组,将第21个图像帧到第30个图像帧划分为1个图像组。
需要说明的是,本申请实施例仅是以执行步骤2021-2022获取多个历史PFS的目标FPS为例进行说明。在另一实施例中,无需执行步骤2021-2022,直接确定当前的FPS为目标FPS即可。
其中,当前的FPS为终端需要播放多个图像帧时所采集的FPS,也说明当前的FPS为实际的FPS。
第二种:若参数信息中包括内存可用容量,则步骤202包括步骤2024-2025:
步骤2024、按照参考比例获取内存可用容量的目标容量。
步骤2025、将目标容量与单位容量的比值确定为每个图像组中包括的图像帧的数量,将该数量的相邻图像帧划分为一个图像组,得到多个图像组。
其中,单位容量为多个图像帧中每个图像帧的容量。由于每个终端的内存容量有限,若将多个图像帧中的所有图像帧均加载在内存中,可能会导致内存占用率高,则在播放多个图像帧之前,根据内存可用容量来对多个图像帧进行分组,得到多个图像组。
获取到终端的内存可用容量后,按照参考比例获取内存容量的目标容量,该目标容量即为对多个图像帧进行分组的参考容量。
其中,该参考比例由终端设置,或者由操作人员设置,或者采用其他方式设置。例如,该参考比例为1、0.8、0.5或者其他数值。
另外,多个图像帧中的每个图像帧的容量均由单位容量表示,则获取该目标容量与单位容量的比值,确定为每个图像组中包括的图像帧的数量。
可选地,上述步骤2024还包括:如果内存可用容量不大于多个图像帧的总容量,按照参考比例获取内存可用容量的目标容量。
当确定内存可用容量不大于多个图像帧的总容量时,说明此时内存的占用率较高,如果在内存的占用率较高的情况下需要播放多个图像帧,则按照内存可用容量的目标容量对多个图像帧进行分组,分组得到的图像组不会占用较大的内存。
本申请实施例中,根据参考比例来获取内存可用容量的目标容量,防止后续在内存中加载图像帧时,导致内存占用率较高的情况,有效减小内存占用率。
第三种:若参数信息中包括目标FPS和内存可用容量,则步骤202包括步骤2026-2028:
步骤2026、如果内存可用容量大于多个图像帧的总容量,则获取当前时刻之前的第一参考时长内的多个历史FPS。
在本申请实施例中,当确定内存可用容量小于多个图像帧的总容量时,说明此时内存的占用率较低,此时为了在播放多个图像帧的过程中占用较低的内存容量,则获取多个历史FPS,再根据该多个历史FPS确定目标FPS,对多个图像帧进行分组,分组得到的图像组不会占用较大的内存。
步骤2027、根据多个历史FPS确定目标FPS。
步骤2028、将目标FPS作为每个图像组中包括的图像帧的数量,将数量的相邻图像帧划分为一个图像组,得到多个图像组。
本申请实施例中的步骤2027-2028与上述步骤2022-2023类似,在此不再赘述。
步骤203、获取多个图像帧的目标播放时长。
当终端在播放多个图像帧时,需要根据多个图像帧的播放时长,来播放每个视频帧。
其中,该目标播放时长为多个图像帧从开始播放的时间到结束播放的时间之间的时长。
步骤204、根据多个图像帧的数量和目标播放时长,确定每个图像帧的单位播放时长。
其中,单位播放时长为多个图像帧中每个图像帧的播放时长。为了保证连续播放多个图像帧中的每个图像帧的效果,为每个图像帧设置单位播放时长,并且划分得到的每个图像组的播放时长均相同。
在确定每个图像帧的单位时长的过程中,获取目标播放时长与图像帧的数量的比值,该比值即为每个图像帧的单位播放时长。
例如,当获取的多个图像帧的目标播放时长为3秒,且多个图像帧中包括30个图像帧,则获取的每个图像帧的单位播放时长为0.1秒。
步骤205、每次将多个图像组中的一个图像组加载到内存中,按照单位播放时长,播放已加载的图像组中的每个图像帧。
本申请实施例已完成对多个图像帧的分组,得到了多个图像组,在播放多个图像帧的过程中,每次将多个图像组中的一个图像组加载到内存中,并按照已获取的单位播放时长播放已加载的图像组中的每个图像帧。
可选地,上述步骤205包括:对于多个图像组中的每个图像组,按照图像组中包括的多个图像帧的顺序,依次将每个图像帧加载到内存中,按照多个图像帧的顺序依次播放已加载的图像帧。
由于多个图像帧均按照顺序排列,并且在对这多个图像帧进行分组时,也按照顺序进行分组,则在加载每个图像组中的每个图像帧时,均按照在多个图像帧中的顺序进行加载并播放,以完成对多个图像帧的播放。
可选地,上述步骤205还包括:在播放第一图像组的过程中,加载第二图像组,第二图像组为第一图像组的下一个图像组。
在本申请实施例中,为了防止播放过程中出现中断播放的情况,终端将第一图像组加载到内存中,并播放第一图像组的过程中,加载位于第一图像组的下一个位置的第二图像组,则播放第一图像组完成后,继续播放已加载的第二图像组,保证了播放多个图像帧的流畅度。
在播放多个图像帧的过程中,均按照上述方式,在播放前一个图像组中的图像帧的过程中,就在内存中加载下一个图像组中的图像帧,直至播放多个图像帧完毕。
可选地,在播放第一图像组的过程中,加载第二图像组包括:当终端播放第一图像组完成时,为了减少第一图像组占用的内存的容量,将已播放完成的第一图像组删除,以提高内存中的容量。
需要说明的第一点是,本申请实施例仅是以执行步骤203-205播放多个图像帧为例进行说明。在另一实施例中,终端还能够获取多个图像帧的播放循环次数,根据播放循环次数确定播放多个图像帧的次数。
当终端通过加载多个图像帧中的每个图像组,播放每个图像组中的每个图像帧完成一次后,确定播放多个图像帧的次数是否超过播放循环次数,如果未超过该播放循环次数,则终端继续采用上述方式播放多个图像帧,如果超过播放循环次数,则终端停止播放多个图像帧。
需要说明的第二点是,本申请实施例中的步骤203-205为可选步骤,在另一实施例中,无需执行步骤203-205播放多个图像帧,而是每次将一个图像组加载到内存中,并播放已加载的图像组。
本申请实施例提供的方法,根据终端的参数信息对多个图像帧进行分组,每次在内存中加载一个图像组并播放,无需一次性将多个图像帧加载到内存中,减少了内存的占用量,降低了内存占用率,并且由于内存占用率降低,能够及时完成图像组的加载,保证了图像帧的播放流畅度,提高了播放效果。
并且,根据终端的FPS或者内存可用容量对多个图像帧进行分组,考虑了终端当前的运行状态,兼顾了终端的处理能力,分组得到的图像组能够满足终端的处理能力,因此终端能够保证及时加载并播放每个图像组,保证了图像帧的播放流畅度。
并且,获取多个历史FPS后,根据该多个历史FPS确定目标FPS,综合考虑了近期的FPS,提高获取的目标FPS的准确性。
图3是本申请实施例提供的一种图像帧播放装置的结构示意图。参见图3,该装置包括:
获取模块301,用于获取终端的参数信息及多个图像帧,参数信息包括目标FPS或内存可用容量中的至少一项。
分组模块302,用于根据多个图像帧的数量及参数信息,对多个图像帧进行分组,得到多个图像组,每个图像组包括至少一个图像帧。
播放模块303,用于每次将一个图像组加载到内存中,并播放已加载的图像组。
本申请实施例提供的装置,根据终端的参数信息对多个图像帧进行分组,每次在内存中加载一个图像组并播放,无需一次性将多个图像帧加载到内存中,减少了内存的占用量,降低了内存占用率,并且由于内存占用率降低,能够及时完成图像组的加载,保证了图像帧的播放流畅度,提高了播放效果。
可选地,参数信息包括目标FPS,分组模块302,用于将目标FPS作为每个图像组中包括的图像帧的数量,将数量的相邻图像帧划分为一个图像组,得到多个图像组。
可选地,获取模块301,还用于:
获取当前时刻之前的第一参考时长内的多个历史FPS;
获取多个历史FPS的平均值,确定为目标FPS;或者,
获取多个历史FPS中的中位数,确定为目标FPS;或者,
获取多个历史FPS中的最小值,确定为目标FPS。
可选地,参考图4,装置还包括:
记录模块304,用于每隔第二参考时长,记录一次历史FPS,第二参考时长小于第一参考时长。
可选地,参数信息包括内存可用容量,分组模块302,用于:
按照参考比例获取内存可用容量的目标容量;
将目标容量与单位容量的比值确定为每个图像组中包括的图像帧的数量,将数量的相邻图像帧划分为一个图像组,得到多个图像组;单位容量为多个图像帧中每个图像帧的容量。
可选地,分组模块302,用于如果内存可用容量不大于多个图像帧的总容量,执行按照参考比例获取内存可用容量的目标容量的步骤。
可选地,参数信息包括内存可用容量和目标FPS;分组模块302,用于:
如果内存可用容量大于多个图像帧的总容量,则获取当前时刻之前的第一参考时长内的多个历史FPS;
获取多个历史FPS的平均值,确定为目标FPS;或者,
获取多个历史FPS中的中位数,确定为目标FPS;或者,
获取多个历史FPS中的最小值,确定为目标FPS。
可选地,播放模块303,还用于在播放第一图像组的过程中,加载第二图像组,第二图像组为第一图像组的下一个图像组。
可选地,播放模块303,还用于播放第一图像组完成时,在内存中删除第一图像组。
可选地,播放模块303,用于对于多个图像组中的每个图像组,按照图像组中包括的多个图像帧的顺序,依次将每个图像帧加载到内存中,按照多个图像帧的顺序依次播放已加载的图像帧。
可选地,播放模块303,包括:
每次将多个图像组中的一个图像组加载到内存中,按照单位播放时长,播放已加载的图像组中的每个图像帧;
获取模块301,用于:
获取多个图像帧的目标播放时长;
根据多个图像帧的数量和目标播放时长,确定每个图像帧的单位播放时长。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的图像帧播放装置在播放多个图像帧时,仅以上述各功能模块的划分进行举例说明,实际应用中,根据需要而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图像帧播放装置与图像帧播放方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图5是本申请实施例提供的一种电子设备的结构示意图。该电子设备500可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture Experts GroupAudio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。电子设备500还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,电子设备500包括有:处理器501和存储器502。
处理器501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器501可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器502中的非暂态的计算机可读存储介质用于存储至少一个程序代码,该至少一个程序代码用于被处理器501所执行以实现本申请中方法实施例提供的图像帧播放方法。
在一些实施例中,电子设备500还可选包括有:外围设备接口503和至少一个外围设备。处理器501、存储器502和外围设备接口503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口503相连。具体地,外围设备包括:射频电路504、显示屏505、摄像头组件506、音频电路507、定位组件508和电源509中的至少一种。
外围设备接口503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器501和存储器502。在一些实施例中,处理器501、存储器502和外围设备接口503被集成在同一芯片或电路板上;在一些其他实施例中,处理器501、存储器502和外围设备接口503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏505是触摸显示屏时,显示屏505还具有采集在显示屏505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器501进行处理。此时,显示屏505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏505可以为一个,设置在电子设备500的前面板;在另一些实施例中,显示屏505可以为至少两个,分别设置在电子设备500的不同表面或呈折叠设计;在另一些实施例中,显示屏505可以是柔性显示屏,设置在电子设备500的弯曲表面上或折叠面上。甚至,显示屏505还可以设置成非矩形的不规则图形,也即异形屏。显示屏505可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件506用于采集图像或视频。可选地,摄像头组件506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器501进行处理,或者输入至射频电路504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在电子设备500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器501或射频电路504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路507还可以包括耳机插孔。
定位组件508用于定位电子设备500的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件508可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源509用于为电子设备500中的各个组件进行供电。电源509可以是交流电、直流电、一次性电池或可充电电池。当电源509包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,电子设备500还包括有一个或多个传感器510。该一个或多个传感器510包括但不限于:加速度传感器511、陀螺仪传感器512、压力传感器513、指纹传感器514、光学传感器515以及接近传感器516。
加速度传感器511可以检测以电子设备50建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器511可以用于检测重力加速度在三个坐标轴上的分量。处理器501可以根据加速度传感器511采集的重力加速度信号,控制显示屏505以横向视图或纵向视图进行用户界面的显示。加速度传感器511还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器512可以检测电子设备500的机体方向及转动角度,陀螺仪传感器512可以与加速度传感器511协同采集用户对电子设备500的3D动作。处理器501根据陀螺仪传感器512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器513可以设置在电子设备500的侧边框和/或显示屏505的下层。当压力传感器513设置在电子设备500的侧边框时,可以检测用户对电子设备500的握持信号,由处理器501根据压力传感器513采集的握持信号进行左右手识别或快捷操作。当压力传感器513设置在显示屏505的下层时,由处理器501根据用户对显示屏505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器514用于采集用户的指纹,由处理器501根据指纹传感器514采集到的指纹识别用户的身份,或者,由指纹传感器514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器514可以被设置在电子设备500的正面、背面或侧面。当电子设备500上设置有物理按键或厂商Logo时,指纹传感器514可以与物理按键或厂商Logo集成在一起。
光学传感器515用于采集环境光强度。在一个实施例中,处理器501可以根据光学传感器515采集的环境光强度,控制显示屏505的显示亮度。具体地,当环境光强度较高时,调高显示屏505的显示亮度;当环境光强度较低时,调低显示屏505的显示亮度。在另一个实施例中,处理器501还可以根据光学传感器515采集的环境光强度,动态调整摄像头组件506的拍摄参数。
接近传感器516,也称距离传感器,通常设置在电子设备500的前面板。接近传感器516用于采集用户与电子设备500的正面之间的距离。在一个实施例中,当接近传感器516检测到用户与电子设备500的正面之间的距离逐渐变小时,由处理器501控制显示屏505从亮屏状态切换为息屏状态;当接近传感器516检测到用户与电子设备500的正面之间的距离逐渐变大时,由处理器501控制显示屏505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图5中示出的结构并不构成对电子设备500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供了一种终端,该终端包括处理器和存储器,存储器中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的图像帧播放方法中所执行的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的图像帧播放方法中所执行的操作。
本申请实施例还提供了一种计算机程序,该计算机程序中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的图像帧播放方法中所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (13)

1.一种图像帧播放方法,其特征在于,所述方法包括:
获取终端的参数信息及多个图像帧,所述参数信息包括目标每秒传输帧数FPS或内存可用容量中的至少一项;
根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,每个图像组包括至少一个图像帧;
每次将一个图像组加载到内存中,并播放已加载的所述图像组。
2.根据权利要求1所述的方法,其特征在于,所述参数信息包括所述目标FPS,所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,包括:
将所述目标FPS作为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组。
3.根据权利要求2所述的方法,其特征在于,所述将所述目标FPS作为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组之前,所述方法还包括:
获取当前时刻之前的第一参考时长内的多个历史FPS;
获取所述多个历史FPS的平均值,确定为所述目标FPS;或者,
获取所述多个历史FPS中的中位数,确定为所述目标FPS;或者,
获取所述多个历史FPS中的最小值,确定为所述目标FPS。
4.根据权利要求3所述的方法,其特征在于,所述获取当前时刻之前的第一参考时长内的多个历史FPS之前,所述方法还包括:
每隔第二参考时长,记录一次历史FPS,所述第二参考时长小于所述第一参考时长。
5.根据权利要求1所述的方法,其特征在于,所述参数信息包括所述内存可用容量,所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,包括:
按照参考比例获取所述内存可用容量的目标容量;
将所述目标容量与单位容量的比值确定为每个图像组中包括的图像帧的数量,将所述数量的相邻图像帧划分为一个图像组,得到多个图像组;所述单位容量为所述多个图像帧中每个图像帧的容量。
6.根据权利要求5所述的方法,其特征在于,所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组之前,所述方法还包括:
如果所述内存可用容量不大于所述多个图像帧的总容量,执行所述按照参考比例获取所述内存可用容量的目标容量的步骤。
7.根据权利要求1所述的方法,其特征在于,所述参数信息包括所述内存可用容量和所述目标FPS;所述根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组之前,所述方法还包括:
如果所述内存可用容量大于所述多个图像帧的总容量,则获取当前时刻之前的第一参考时长内的多个历史FPS;
获取所述多个历史FPS的平均值,确定为所述目标FPS;或者,
获取所述多个历史FPS中的中位数,确定为所述目标FPS;或者,
获取所述多个历史FPS中的最小值,确定为所述目标FPS。
8.根据权利要求1所述的方法,其特征在于,所述每次将一个图像组加载到内存中,并播放已加载的所述图像组,包括:
在播放第一图像组的过程中,加载第二图像组,所述第二图像组为所述第一图像组的下一个图像组。
9.根据权利要求1所述的方法,其特征在于,所述多个图像帧按照顺序排列,所述每次将一个图像组加载到内存中,并播放已加载的所述图像组,包括:
对于所述多个图像组中的每个图像组,按照所述图像组中包括的多个图像帧的顺序,依次将每个图像帧加载到所述内存中,按照所述多个图像帧的顺序依次播放已加载的图像帧。
10.根据权利要求1所述的方法,其特征在于,所述每次将一个图像组加载到内存中,并播放已加载的所述图像组,包括:
每次将所述多个图像组中的一个图像组加载到所述内存中,按照单位播放时长,播放已加载的所述图像组中的每个图像帧;
所述每次将所述多个图像组中的一个图像组加载到所述内存中,按照单位播放时长,播放已加载的所述图像组中的每个图像帧之前,所述方法还包括:
获取所述多个图像帧的目标播放时长;
根据所述多个图像帧的数量和所述目标播放时长,确定每个图像帧的单位播放时长。
11.一种图像帧播放装置,其特征在于,所述装置包括:
获取模块,用于获取终端的参数信息及多个图像帧,所述参数信息包括目标FPS或内存可用容量中的至少一项;
分组模块,用于根据所述多个图像帧的数量及所述参数信息,对所述多个图像帧进行分组,得到多个图像组,每个图像组包括至少一个图像帧;
播放模块,用于每次将一个图像组加载到内存中,并播放已加载的所述图像组。
12.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1至10任一权利要求所述的图像帧播放方法中所执行的操作。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至10任一权利要求所述的图像帧播放方法中所执行的操作。
CN202010730190.8A 2020-07-27 图像帧播放方法、装置、终端及存储介质 Active CN111711841B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010730190.8A CN111711841B (zh) 2020-07-27 图像帧播放方法、装置、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010730190.8A CN111711841B (zh) 2020-07-27 图像帧播放方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN111711841A true CN111711841A (zh) 2020-09-25
CN111711841B CN111711841B (zh) 2022-09-09

Family

ID=

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650872A (zh) * 2020-12-15 2021-04-13 歌尔光学科技有限公司 动态图片播放方法、装置、设备及计算机可读存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0817491A2 (en) * 1996-06-28 1998-01-07 Mitsubishi Denki Kabushiki Kaisha Image coding apparatus and image decoding apparatus
US20050083435A1 (en) * 2000-06-23 2005-04-21 Kabushiki Kaisha Toshiba Image processing system and method, and image display system
CN101794567A (zh) * 2010-02-10 2010-08-04 中兴通讯股份有限公司 图片加载的方法及终端
CN103488373A (zh) * 2012-06-12 2014-01-01 腾讯科技(深圳)有限公司 一种图片展示的方法、装置及移动终端
CN103631777A (zh) * 2012-08-21 2014-03-12 腾讯科技(深圳)有限公司 浏览图像的方法和系统
CN103974014A (zh) * 2014-05-06 2014-08-06 浙江宇视科技有限公司 一种视频倒退回放方法及装置
CN104915437A (zh) * 2015-06-24 2015-09-16 上海二三四五网络科技有限公司 一种对多帧图像文件进行分割处理的控制方法及控制装置
CN109068165A (zh) * 2018-07-23 2018-12-21 北京奇艺世纪科技有限公司 一种动态图显示方法及装置
CN109685712A (zh) * 2017-10-18 2019-04-26 阿里巴巴集团控股有限公司 图像缓存和使用方法及装置、终端
CN109756622A (zh) * 2018-12-26 2019-05-14 北京奇艺世纪科技有限公司 一种图像缓存方法、装置、移动终端及存储介质
CN110647378A (zh) * 2019-09-30 2020-01-03 北京金山安全软件有限公司 动态图像的加载方法、装置和电子设备
CN110675473A (zh) * 2019-09-17 2020-01-10 Oppo广东移动通信有限公司 生成gif动态图的方法、装置、电子设备及介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0817491A2 (en) * 1996-06-28 1998-01-07 Mitsubishi Denki Kabushiki Kaisha Image coding apparatus and image decoding apparatus
US20050083435A1 (en) * 2000-06-23 2005-04-21 Kabushiki Kaisha Toshiba Image processing system and method, and image display system
CN101794567A (zh) * 2010-02-10 2010-08-04 中兴通讯股份有限公司 图片加载的方法及终端
CN103488373A (zh) * 2012-06-12 2014-01-01 腾讯科技(深圳)有限公司 一种图片展示的方法、装置及移动终端
CN103631777A (zh) * 2012-08-21 2014-03-12 腾讯科技(深圳)有限公司 浏览图像的方法和系统
CN103974014A (zh) * 2014-05-06 2014-08-06 浙江宇视科技有限公司 一种视频倒退回放方法及装置
CN104915437A (zh) * 2015-06-24 2015-09-16 上海二三四五网络科技有限公司 一种对多帧图像文件进行分割处理的控制方法及控制装置
CN109685712A (zh) * 2017-10-18 2019-04-26 阿里巴巴集团控股有限公司 图像缓存和使用方法及装置、终端
CN109068165A (zh) * 2018-07-23 2018-12-21 北京奇艺世纪科技有限公司 一种动态图显示方法及装置
CN109756622A (zh) * 2018-12-26 2019-05-14 北京奇艺世纪科技有限公司 一种图像缓存方法、装置、移动终端及存储介质
CN110675473A (zh) * 2019-09-17 2020-01-10 Oppo广东移动通信有限公司 生成gif动态图的方法、装置、电子设备及介质
CN110647378A (zh) * 2019-09-30 2020-01-03 北京金山安全软件有限公司 动态图像的加载方法、装置和电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赵国志 等: "中职院校解剖学GIF动画资源库的建立与应用分析", 《卫生教育》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650872A (zh) * 2020-12-15 2021-04-13 歌尔光学科技有限公司 动态图片播放方法、装置、设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN108401124B (zh) 视频录制的方法和装置
CN108737897B (zh) 视频播放方法、装置、设备及存储介质
CN108965757B (zh) 视频录制方法、装置、终端及存储介质
CN110022489B (zh) 视频播放方法、装置及存储介质
CN108391171B (zh) 视频播放的控制方法及装置、终端
CN109922356B (zh) 视频推荐方法、装置和计算机可读存储介质
CN111372126B (zh) 视频播放方法、装置及存储介质
CN112084811A (zh) 身份信息的确定方法、装置及存储介质
CN109005359B (zh) 视频录制方法、装置存储介质
CN107888975B (zh) 视频播放方法、装置及存储介质
CN111754386A (zh) 图像区域屏蔽方法、装置、设备及存储介质
CN110868642B (zh) 视频播放方法、装置及存储介质
CN110288689B (zh) 对电子地图进行渲染的方法和装置
CN108877845B (zh) 歌曲播放方法及装置
CN110286839B (zh) 消息发送方法、装置、终端及存储介质
CN108845777B (zh) 播放帧动画的方法和装置
CN111753784A (zh) 视频的特效处理方法、装置、终端及存储介质
CN110473562B (zh) 音频数据处理方法、装置以及系统
CN110942426A (zh) 图像处理的方法、装置、计算机设备和存储介质
CN111711841B (zh) 图像帧播放方法、装置、终端及存储介质
CN111083526A (zh) 视频转场方法、装置、计算机设备及存储介质
CN110992268A (zh) 背景设置方法、装置、终端及存储介质
CN110677713A (zh) 视频图像处理方法及装置、存储介质
CN111711841A (zh) 图像帧播放方法、装置、终端及存储介质
CN111246147B (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