CN108391123A - 一种生成视频的方法及终端 - Google Patents

一种生成视频的方法及终端 Download PDF

Info

Publication number
CN108391123A
CN108391123A CN201810134890.3A CN201810134890A CN108391123A CN 108391123 A CN108391123 A CN 108391123A CN 201810134890 A CN201810134890 A CN 201810134890A CN 108391123 A CN108391123 A CN 108391123A
Authority
CN
China
Prior art keywords
terminal
image
frame
video
frame per
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.)
Pending
Application number
CN201810134890.3A
Other languages
English (en)
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.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication 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 Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Priority to CN201810134890.3A priority Critical patent/CN108391123A/zh
Publication of CN108391123A publication Critical patent/CN108391123A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明实施例提供一种生成视频的方法及终端,应用于终端技术领域,可以解决终端生成的视频流畅性较低、甚至卡顿的问题。该方法包括:在终端的第一录屏帧率小于预设录屏帧率的情况下,终端获取至少两个集合,每个集合包括至少一帧图像,每个集合中的图像均不相同,第一录屏帧率为终端获取至少两个集合之前的录屏帧率,至少两个集合中的图像由终端录屏得到;终端采用至少一种预设编码方式分别对每个集合中的图像进行压缩编码;终端整合压缩编码后的每个集合中的图像,以得到第一视频,第一视频的帧率大于第一录屏帧率。该方法具体可以应用于终端实现录屏的过程中。

Description

一种生成视频的方法及终端
技术领域
本发明实施例涉及终端技术领域,尤其涉及一种生成视频的方法及终端。
背景技术
随着通信技术的发展,手机、平板电脑等终端的智能化程度不断提高,以满足用户的各种需求。例如,用户对终端中录屏应用录制的视频的流畅性要求越来越高。
其中,在终端录制其屏幕显示的界面的动态图像时,可以以一定频率截取当前界面中的图像(记为截屏图像);随后,终端可以对这些截屏图像进行压缩编码等得到录制的视频。
存在的问题是,现有技术中受制于终端的硬件处理能力,终端录制得到的视频的帧率通常较低,导致该视频的流畅性较低,甚至卡顿。
发明内容
本发明实施例提供一种生成视频的方法及终端,可以解决终端生成的视频流畅性较低、甚至卡顿的问题。
为了解决上述技术问题,本发明实施例是这样实现的:
第一方面,提供一种生成视频的方法,该方法包括:在终端的第一录屏帧率小于预设录屏帧率的情况下,终端获取至少两个集合,每个集合包括至少一帧图像,每个集合中的图像均不相同,第一录屏帧率为终端获取至少两个集合之前的录屏帧率,至少两个集合中的图像由终端录屏得到;终端采用至少一种预设编码方式分别对每个集合中的图像进行压缩编码;终端整合压缩编码后的每个集合中的图像,以得到第一视频,第一视频的帧率大于第一录屏帧率。
第二方面,本发明实施例还提供了一种终端,该终端包括:获取模块、编码模块和整合模块;获取模块,用于在终端的第一录屏帧率小于预设录屏帧率的情况下,获取至少两个集合,每个集合包括至少一帧图像,每个集合中的图像均不相同,第一录屏帧率为终端获取至少两个集合之前的录屏帧率,至少两个集合中的图像由终端录屏得到;编码模块,用于采用至少一种预设编码方式分别对获取模块获取的每个集合中的图像进行压缩编码;整合模块,用于整合编码模块压缩编码后的每个集合中的图像,以得到第一视频,第一视频的帧率大于第一录屏帧率。
第三方面,本发明实施例提供了一种终端,包括处理器、存储器及存储在该存储器上并可在该处理器上运行的计算机程序,该计算机程序被该处理器执行时实现如第一方面所述的生成视频的方法的步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第一方面所述的生成视频的方法的步骤。
在本发明实施例中,终端可以获取终端显示的界面对应的不同部分的图像组成的不同集合,采用一种或多种预设编码方式分别对这些集合中的图像进行压缩编码,并整合这些集合中的图像得到生成的视频。如此,终端采用分布式编码方法处理该终端的显示界面对应的图像,可以提高终端压缩编码图像的能力,从而提高终端生成的视频的帧率,提高该视频的流畅性。
附图说明
图1为本发明实施例提供的一种可能的安卓操作系统的架构示意图;
图2为本发明实施例提供的一种生成视频的方法的流程示意图;
图3为本发明实施例提供的另一种生成视频的方法的流程示意图;
图4为本发明实施例提供的一种可能的终端的结构示意图;
图5为本发明实施例提供的另一种可能的终端的结构示意图;
图6为本发明实施例提供的一种终端的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本文中的“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。“多个”是指两个或多于两个。
需要说明的是,本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本发明的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一视频和第二视频等是用于区别不同的视频,而不是用于描述视频的特定顺序。
本发明实施例提供的生成视频的方法及终端,终端可以提高终端生成视频过程中对图像的压缩编码能力,以提高生成的视频的帧率,从而提高该视频的流畅性。
本发明实施例中的终端可以为具有操作系统的终端。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本发明实施例不作具体限定。
下面以安卓操作系统为例,介绍一下本发明实施例提供的生成视频的方法所应用的软件环境。
如图1所示,为本发明实施例提供的一种可能的安卓操作系统的架构示意图。在图1中,安卓操作系统的架构包括4层,分别为:应用程序层、应用程序框架层、系统运行库层和内核层(具体可以为Linux内核层)。
其中,应用程序层包括安卓操作系统中的各个应用程序(包括系统应用程序和第三方应用程序)。
应用程序框架层是应用程序的框架,开发人员可以在遵守应用程序的框架的开发原则的情况下,基于应用程序框架层开发一些应用程序。例如,系统设置应用、系统聊天应用和系统相机应用等应用程序。第三方设置应用、第三方相机应用和第三方聊天应用等应用程序。
系统运行库层包括库(也称为系统库)和安卓操作系统运行环境。库主要为安卓操作系统提供其所需的各类资源。安卓操作系统运行环境用于为安卓操作系统提供软件环境。
内核层是安卓操作系统的操作系统层,属于安卓操作系统软件层次的最底层。内核层基于Linux内核为安卓操作系统提供核心系统服务和与硬件相关的驱动程序。
以安卓操作系统为例,本发明实施例中,开发人员可以基于上述如图1所示的安卓操作系统的系统架构,开发实现本发明实施例提供的生成视频的方法的软件程序,从而使得该生成视频的方法可以基于如图1所示的安卓操作系统运行。即处理器或者终端设备可以通过在安卓操作系统中运行该软件程序实现本发明实施例提供的生成视频的方法。
下面结合图2所示的生成视频的方法的流程图对本发明实施例提供的生成视频的方法进行详细描述。其中,虽然在方法流程图中示出了本发明实施例提供的生成视频的方法的逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。例如,图2中示出的生成视频的方法可以包括S201-S203:
S201、在终端的第一录屏帧率小于预设录屏帧率的情况下,终端获取至少两个集合。
其中,上述至少两个集合中每个集合包括至少一帧图像,每个集合中的图像均不相同,第一录屏帧率为终端获取至少两个集合之前的录屏帧率,至少两个集合中的图像由终端录屏得到。
可选的,上述第一录屏帧率为终端中默认的录屏帧率,或者,上述第一录屏帧率为终端在获取至少两个集合之前,终端生成的视频的帧率。
其中,在终端的第一录屏帧率小于预设录屏帧率的情况下,说明终端当前生成的视频的录屏帧率不满足用户需求。此时,终端可以提高终端生成的视频的帧率以满足用户的需求。
S202、终端采用至少一种预设编码方式分别对每个集合中的图像进行压缩编码。
示例性的,上述至少两个集合可以包括集合1和集合2;上述至少一种预设编码方式包括预设编码方式1。此时,终端可以针对上述集合1和集合2中的图像分别采用预设编码方式1进行压缩编码。
可以理解的是,本发明实施例提供的一种预设编码方式可以对应一个编码处理单元。例如,上述终端针对集合1和集合2中的图像分别采用预设编码方式1进行压缩编码,可以为终端通过两个编码处理单元分别采用预设编码方式1对上述集合1和集合2进行压缩编码。
可选的,上述至少两个集合可以包括集合1和集合2;上述至少一种预设编码方式包括预设编码方式1和预设编码方式2。此时,终端可以采用预设编码方式1对集合1中的图像进行压缩编码,采用预设编码方式2对集合2中的图像进行压缩编码。
S203、终端整合压缩编码后的每个集合中的图像,以得到第一视频。
可以理解是,终端压缩编码后的每个集合中的图像为一个视频片段,终端整合这些视频片段可以得到上述第一视频。
其中,第一视频的帧率大于第一录屏帧率。也就是说,终端生成的第一视频的流畅性比生成第一视频之前终端生成的视频的流畅性好。
可以理解的是,本发明实施例中,终端采用至少一种预设编码方式分别对至少两个集合中的图像进行压缩编码并整合的方法可以称为“分布式编码方法”。
需要说明的是,本发明实施例提供的生成视频的方法,终端可以获取终端显示的界面对应的不同部分的图像组成的不同集合,采用一种或多种预设编码方式分别对这些集合中的图像进行压缩编码,并整合这些集合中的图像得到生成的视频。如此,终端采用分布式编码方法处理该终端的显示界面对应的图像,可以提高终端压缩编码图像的能力,从而提高终端生成的视频的帧率,提高该视频的流畅性。
在一种可能的实现方式中,预设编码方式的种类包括软件编码和/或硬件编码。
示例性的,本发明实施例提供的预设编码方式可以包括软件编码方式和硬件编码方式。例如,上述预设编码方式1可以软件编码方式,预设编码方式2可以为硬件编码方式。
可选的,上述软件编码方式和硬件编码方式可以由终端中的编码芯片实现。当然,上述软件编码方式可以由终端中的一段程序代码实现,上述硬件编码方式可以由终端中的图形处理器(Graphics Processing Unit,GPU)实现,本发明实施例对此不再赘述。
一般而言,硬件编码方式比软件编码方式的编码能力强,如相同时间内终端采用硬件编码方式压缩编码的图像的帧数大于采用软件编码方式压缩编码的图像的帧数。
需要说明的是,本发明实施例提供的生成视频的方法,可以提供的一种或多种预设编码方式,以实现终端分别对终端获取的不同部分的图像进行压缩编码得到视频。从而,即使终端不支持某一种编码方式,还可以采用另一种编码方式对图像进行压缩编码以生成视频,有利于提高终端生成的视频的流畅性。
在一种可能的实现方式中,本发明实施例提供的生成视频的方法,第一视频包括M帧图像,每帧图像对应一个关键帧标识。具体的,如图3所示,为本发明实施例提供的另一种生成视频的方法的流程示意图。图3示出的方法,在上述S203之后还可以包括S204和S205:
S204、在第一视频的帧率小于预设录屏帧率的情况下,对于M帧图像中相邻的任意两帧图像,终端均执行下述S1-S2所示的方法,以得到M-1个视频片段;
S1:终端根据相邻的两帧图像,确定相邻的两帧图像之间的X帧图像;
S2:终端将X帧图像插入相邻的两帧图像之间,以得到一个视频片段。
其中,在第一视频的帧率小于预设录屏帧率的情况下,说明终端采用分布式编码方法生成的视频的流畅性不满足用户的需求。此时,终端需要进一步提高终端的录屏帧率,实现提高生成的视频的流畅性。
可以理解的是,终端对至少两个集合中的图像进行压缩编码时,可以按照一定规则设定一些帧的图像为关键帧的图像,如为这些帧的图像分别添加一个关键帧标识。其中,一段视频中的关键帧的图像为对该视频的流畅性影响最大的图像。其中,由于终端录屏、获得终端显示的界面对应图像的过程中,终端的界面的背景和界面的区域通常变化不大,因此终端的关键帧的图像能够反映该界面中包括的内容,如用户动态操作鼠标的轨迹。
进一步的,终端预测出相邻两个关键帧的图像之间的图像,这些图像通常可以称为非关键帧图像,非关键帧图像可以对应非关键帧标识。
示例性的,上述终端采用分布式编码方法得到的第一视频中包括多个视频片段,一个视频片段中相邻两个关键帧的图像为I1帧图像和I2帧图像。随后,终端可以预测出该I1帧图像(记为I1)和I2帧图像(记为I2)之间的多个非关键帧图像,如P1帧图像(记为P1)、P2帧图像(记为P2)、P3帧图像(记为P3)和P4帧图像(记为P4)。此时,上述I1和I2为上述M帧图像中任意相邻的两帧图像,上述P1、P2、P3和P4为I1和I2之间的X帧图像。
随后,终端可以将上述P1、P2、P3和P4插入至I1和I2之间,得到一个视频片段(记为视频片段1)。
S205、终端整合M-1个视频片段,以得到第二视频,第二视频的帧率大于或等于预设录屏帧率。
可以理解的是,上述M-1个视频片段均为压缩编码后的图像组成的视频片段。终端整合M-1个视频片段得到的第二视频为压缩编码后的图像组成的视频。
其中,第二视频的帧率大于或等于预设录屏帧率,说明上述第二视频的帧率较大,该视频的流畅性可以满足用户的需求。
可以理解的是,上述终端预测相邻两个关键帧的图像之间的图像的方法可以称为关键帧预测方法。
需要说明的是,本发明实施例提供的生成视频的方法,即使终端采用分布式编码方法生成视频的帧率不满足用户的需求,导致该视频的流畅性不满足用户的需求;终端还可以采用关键帧预测的方法。从而,可以进一步提高终端生成的视频的帧率,提高该视频的流畅性。
在一种可能的实现方式中,本发明实施例提供的生成视频的方法,上述S204中的S1可以替换为S11:
S11、终端根据相邻的两帧图像中每帧图像对应的像素值集合,确定X帧图像。
其中,一个像素值集合为一帧图像中所有像素点的像素值的集合。
需要说明的是,本发明实施例提供的一帧图像的像素点可以组成一个m×n的像素矩阵,m和n均为正整数。
例如,一帧图像(如I1)中的一个像素点,如第i行、第j列的像素点的像素值可以表示为I1(i,j),i和j均为正整数,且小于或等于m,j小于或等于n。I2中的一个像素点,如第i行、第j列的像素点的像素值可以表示为I2(i,j)
如此,Pk为上述I1和I2之间的一帧图像,y为I1和I2之间的图像的帧数,k和y均为正整数,且k小于或等于y。例如,上述y=4,上述k可以取值为1、2、3或4。
其中,Pk中的一个像素点的像素值,如第i行、第j列的像素点的像素值为Pk(i,j)=(I1(i,j)+I2(i,j))×k/y。
类似的,本发明实施例提供的生成视频的方法中,终端预测相邻两个关键帧的图像之间的图像的方法可以参照上述终端预测I1和I2之间的P1、P2、P3和P4的相关描述为例,本发明实施例不再赘述。
需要说明的是,本发明实施例提供的生成视频的方法,终端可以预测相邻两个关键帧的图像之间的图像,提高了终端生成的视频的帧率,从而进一步提高了终端生成的视频的流畅性。
在一种可能的实现方式中,本发明实施例提供的生成视频的方法,X帧图像中每帧图像对应一个时间标识,一个时间标识用于指示一帧图像在一个视频片段中的位置。具体的,本发明实施例提供的生成视频的方法,上述S204中的S2可以替换为S21:
S21、终端按照X帧图像对应的时间标识,将X帧图像插入相邻的两帧图像之间,以得到一个视频片段。
示例性的,上述I1对应的时间标识可以记为标识1,I2对应的时间标识可以记为标识2。上述P1、P2、P3和P4对应的时间标识可以分别记为标识3、标识4、标识5和标识6。上述标识1、标识3、标识4、标识5、标识6和标识2所指示的时间依次增大。如此,上述终端可以从前到后分别将P1、P2、P3和P4插入至I1和I2之间,得到I1、P1、P2、P3、P4和I2的图像排列顺序。
示例性的,第一视频的相邻的两个关键帧的图像I1和I2之间还可以包括非关键帧,如P5帧图像(记为P5),该P5对应的时间标识可以记为标识7。此时,终端需要根据标识1、标识3、标识4、标识5、标识6、标识2以及标识7所指示的时间,将P1、P2、P3和P4插入至I1和I2之间,具体为插入至I1、P5和I2之间。
需要说明的是,本发明实施例提供的生成视频的方法,终端可以按照每帧图像的时间标识,将终端预测图像插入对应的相邻关键帧的图像中。如此,可以保证终端生成的视频中的图像的排列顺序的准确性,即插入位置的准确定。从而,有利于提高终端生成的视频的流畅性。
在一种可能的实现方式中,本发明实施例提供的生成视频的方法,在上述S201之前还可以包括S206和S207:
S206、终端获取当前帧图像,当前帧图像为终端当前显示界面对应的图像。
其中,终端可以以一定的频率获取,如截屏操作当前显示界面对应的图像。
S207、对于终端获取的每帧图像,终端均执行下述方法,以得到至少两个集合。
在终端获取的一帧图像满足第一预设条件的情况下,终端将一帧图像作为与第一预设条件对应的第一集合中的图像,第一集合为至少两个集合中的集合,一个集合对应一个预设条件。
其中,上述第一预设条件可以为终端中保存的多个预设条件中的一个。
可以理解的是,获取的一帧图像的时间标识可以由一个序列号表示。例如,终端连续获取的10帧图像对应的序列号分别为1、2、3、4、5、6、7、8、9和10。
示例性的,集合1对应预设条件为预设条件1,集合2对应预设条件为预设条件2:
预设条件1:一帧图像的序列号为a的整数倍,a为正整数,如a=8。
此时,上述集合1中可以包括序列号为8的图像。
预设条件2:一帧图像的序列号不为a的整数倍,a为正整数,如a=8。
此时,上述集合2中可以包括序列号分别为1、2、3、4、5、6、7、9和10的图像。
其中,在上述终端采用预设编码方式1对集合1中的图像进行压缩编码,采用预设编码方式2对集合2中的图像进行压缩编码;预设编码方式1为软件编码方式且预设编码方式2为硬件编码方式的示例中:
终端可以采用预设编码方式1对序列号为8的图像进行压缩编码,采用预设编码方式2对序列号为1、2、3、4、5、6、7、9和10的图像进行压缩编码。
可选的,终端可以分别对1、2、3、4、5、6、7、9和10的图像中每一帧图像进行压缩编码,或者终端可以分别对1、2、3、4、5、6、7、9和10的图像中相邻的b帧图像进行压缩编码,b为正整数,如b=4。
可以理解的是,上述实施例中对多个预设条件的描述包括但不限于上述示例,还可以为其他可以实现的示例,本发明实施例不再赘述。
可选的,上述多个预设条件可以为终端中预先设置的,或者用户在终端的设置应用中根据需求设置的。
需要说明的是,本发明实施例提供的生成视频的方法,终端可以根据需求将当前显示界面对应的不同的图像划分至不同的集合,以使得终端可以以该集合对应的编码方式压缩编码该集合中的图像。例如,终端在处理能力较强的编码方式对应的集合中划分较多的图像。从而,可以进一步提高终端生成的视频的帧率,提高该视频的流畅性。
如图4所示,为发明实施例提供的一种终端可能的结构示意图。图4示出的终端40包括获取模块401、编码模块402和整合模块403;获取模块401,用于在终端40的第一录屏帧率小于预设录屏帧率的情况下,获取至少两个集合,每个集合包括至少一帧图像,每个集合中的图像均不相同,第一录屏帧率为获取模块401获取至少两个集合之前的录屏帧率,至少两个集合中的图像由终端40录屏得到;编码模块402,用于采用至少一种预设编码方式分别对终端40获取的每个集合中的图像进行压缩编码;整合模块403,用于整合编码模块402压缩编码后的每个集合中的图像,以得到第一视频,第一视频的帧率大于第一录屏帧率。
可选的,结合图4,如图5所示,终端40还包括:关键帧处理模块404;第一视频包括M帧图像,每帧图像对应一个关键帧标识;关键帧处理模块404,用于整合模块403整合压缩编码后的每个集合中的图像,以得到第一视频之后,在第一视频的帧率小于预设录屏帧率的情况下,对于M帧图像中相邻的任意两帧图像,均执行下述S1-S2所示的方法,以得到M-1个视频片段;S1:根据相邻的两帧图像,确定相邻的两帧图像之间的X帧图像;S2:将X帧图像插入相邻的两帧图像之间,以得到一个视频片段;整合模块403,还用于整合关键帧处理模块404得到的M-1个视频片段,以得到第二视频,第二视频的帧率大于或等于预设录屏帧率。
可选的,关键帧处理模块404,具体用于根据相邻的两帧图像中每帧图像对应的像素值集合,确定X帧图像,一个像素值集合为一帧图像中所有像素点的像素值的集合。
可选的,上述X帧图像中每帧图像对应一个时间标识,一个时间标识用于指示一帧图像在一个视频片段中的位置;关键帧处理模块404,具体用于按照X帧图像对应的时间标识,将X帧图像插入相邻的两帧图像之间,以得到一个视频片段。
可选的,终端40还包括:划分模块405;获取模块401,还用于在获取至少两个集合之前,获取当前帧图像,当前帧图像为终端40当前显示界面对应的图像;划分模块405,还用于在终端40的第一录屏帧率小于预设录屏帧率的情况下,对于获取模块401获取的每帧图像,均执行下述方法,以得到至少两个集合;在获取模块401获取的一帧图像满足第一预设条件的情况下,将一帧图像作为与第一预设条件对应的第一集合中的图像,第一集合为至少两个集合中的集合,一个集合对应一个预设条件。
可选的,预设编码方式的种类包括软件编码和/或硬件编码。
本发明实施例提供的终端,该终端可以获取终端显示的界面对应的不同部分的图像组成的不同集合,采用一种或多种预设编码方式分别对这些集合中的图像进行压缩编码,并整合这些集合中的图像得到生成的视频。如此,终端采用分布式编码方法处理该终端的显示界面对应的图像,可以提高终端压缩编码图像的能力,从而提高终端生成的视频的帧率,提高该视频的流畅性。
本发明实施例提供的终端40能够实现上述方法实施例中终端实现的各个过程,为避免重复,这里不再赘述。
图6为本发明实施例提供的一种终端的硬件结构示意图,该终端100包括但不限于:射频单元101、网络模块102、音频输出单元103、输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图6中示出的终端结构并不构成对终端的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,终端包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
其中,处理器110,用于在终端100的第一录屏帧率小于预设录屏帧率的情况下,获取至少两个集合,每个集合包括至少一帧图像,每个集合中的图像均不相同,第一录屏帧率为处理器110获取至少两个集合之前的录屏帧率;采用至少一种预设编码方式分别对获取的每个集合中的图像进行压缩编码;整合压缩编码后的每个集合中的图像,以得到第一视频,第一视频的帧率大于第一录屏帧率。
本发明实施例提供的终端,该终端可以获取终端显示的界面对应的不同部分的图像组成的不同集合,采用一种或多种预设编码方式分别对这些集合中的图像进行压缩编码,并整合这些集合中的图像得到生成的视频。如此,终端采用分布式编码方法处理该终端的显示界面对应的图像,可以提高终端压缩编码图像的能力,从而提高终端生成的视频的帧率,提高该视频的流畅性。
应理解的是,本发明实施例中,射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信系统与网络和其他设备通信。
终端通过网络模块102为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元103可以将射频单元101或网络模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103包括扬声器、蜂鸣器以及受话器等。
输入单元104用于接收音频或视频信号。输入单元104可以包括图形处理器(Graphics Processing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或其它存储介质)中或者经由射频单元101或网络模块102进行发送。麦克风1042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元101发送到移动通信基站的格式输出。
终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器105还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1061。
用户输入单元107可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作)。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板1071可覆盖在显示面板1061上,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图6中,触控面板1071与显示面板1061是作为两个独立的部件来实现终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现终端的输入和输出功能,具体此处不做限定。
接口单元108为外部装置与终端100连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到终端100内的一个或多个元件或者可以用于在终端100和外部装置之间传输数据。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器110是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,终端100包括一些未示出的功能模块,在此不再赘述。
优选的,本发明实施例还提供一种终端,包括处理器110,存储器109,存储在存储器109上并可在所述处理器110上运行的计算机程序,该计算机程序被处理器110执行时实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。

Claims (14)

1.一种生成视频的方法,其特征在于,包括:
在终端的第一录屏帧率小于预设录屏帧率的情况下,所述终端获取至少两个集合,每个集合包括至少一帧图像,所述每个集合中的图像均不相同,所述第一录屏帧率为所述终端获取所述至少两个集合之前的录屏帧率,所述至少两个集合中的图像由所述终端录屏得到;
所述终端采用至少一种预设编码方式分别对所述每个集合中的图像进行压缩编码;
所述终端整合压缩编码后的所述每个集合中的图像,以得到第一视频,所述第一视频的帧率大于所述第一录屏帧率。
2.根据权利要求1所述的方法,其特征在于,所述第一视频包括M帧图像,每帧图像对应一个关键帧标识;
所述终端整合压缩编码后的所述每个集合中的图像,以得到第一视频之后,所述方法还包括:
在所述第一视频的帧率小于所述预设录屏帧率的情况下,对于所述M帧图像中相邻的任意两帧图像,所述终端均执行下述S1-S2所示的方法,以得到M-1个视频片段;
S1:所述终端根据相邻的两帧图像,确定所述相邻的两帧图像之间的X帧图像;
S2:所述终端将所述X帧图像插入所述相邻的两帧图像之间,以得到一个视频片段;
所述终端整合所述M-1个视频片段,以得到第二视频,所述第二视频的帧率大于或等于所述预设录屏帧率。
3.根据权利要求2所述的方法,其特征在于,所述终端根据相邻的两帧图像,确定所述相邻的两帧图像之间的X帧图像,包括:
所述终端根据所述相邻的两帧图像中每帧图像对应的像素值集合,确定所述X帧图像,一个像素值集合为一帧图像中所有像素点的像素值的集合。
4.根据权利要求2所述的方法,其特征在于,所述X帧图像中每帧图像对应一个时间标识,一个时间标识用于指示一帧图像在所述一个视频片段中的位置;
所述终端将所述X帧图像插入所述相邻的两帧图像之间,以得到一个视频片段,包括:
所述终端按照所述X帧图像对应的时间标识,将所述X帧图像插入所述相邻的两帧图像之间,以得到所述一个视频片段。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述终端获取至少两个集合之前,所述方法还包括:
所述终端获取当前帧图像,所述当前帧图像为所述终端当前显示界面对应的图像;
在所述第一录屏帧率小于所述预设录屏帧率的情况下,对于所述终端获取的每帧图像,所述终端均执行下述方法,以得到至少两个集合;
在所述终端获取的一帧图像满足第一预设条件的情况下,所述终端将所述一帧图像作为与所述第一预设条件对应的第一集合中的图像,所述第一集合为所述至少两个集合中的集合,一个集合对应一个预设条件。
6.根据权利要求5所述的方法,其特征在于,所述预设编码方式包括软件编码和/或硬件编码。
7.一种终端,其特征在于,包括:获取模块、编码模块和整合模块;
所述获取模块,用于在所述终端的第一录屏帧率小于预设录屏帧率的情况下,获取至少两个集合,每个集合包括至少一帧图像,所述每个集合中的图像均不相同,所述第一录屏帧率为所述终端获取所述至少两个集合之前的录屏帧率,所述至少两个集合中的图像由所述终端录屏得到;
所述编码模块,用于采用至少一种预设编码方式分别对所述获取模块获取的所述每个集合中的图像进行压缩编码;
所述整合模块,用于整合所述编码模块压缩编码后的所述每个集合中的图像,以得到第一视频,所述第一视频的帧率大于所述第一录屏帧率。
8.根据权利要求7所述的终端,其特征在于,所述第一视频包括M帧图像,每帧图像对应一个关键帧标识;
所述终端还包括:关键帧处理模块;
所述关键帧处理模块,用于所述整合模块整合压缩编码后的所述每个集合中的图像,以得到第一视频之后,在所述第一视频的帧率小于所述预设录屏帧率的情况下,对于所述M帧图像中相邻的任意两帧图像,均执行下述S1-S2所示的方法,以得到M-1个视频片段;
S1:根据相邻的两帧图像,确定所述相邻的两帧图像之间的X帧图像;
S2:将所述X帧图像插入所述相邻的两帧图像之间,以得到一个视频片段;
所述整合模块,还用于整合所述关键帧处理模块得到的所述M-1个视频片段,以得到第二视频,所述第二视频的帧率大于或等于所述预设录屏帧率。
9.根据权利要求8所述的终端,其特征在于,所述关键帧处理模块,具体用于根据所述相邻的两帧图像中每帧图像对应的像素值集合,确定所述X帧图像,一个像素值集合为一帧图像中所有像素点的像素值的集合。
10.根据权利要求8所述的终端,其特征在于,所述X帧图像中每帧图像对应一个时间标识,一个时间标识用于指示一帧图像在所述一个视频片段中的位置;
所述关键帧处理模块,具体用于按照所述X帧图像对应的时间标识,将所述X帧图像插入所述相邻的两帧图像之间,以得到所述一个视频片段。
11.根据权利要求7-10中任一项所述的终端,其特征在于,所述获取模块,还用于获取至少两个集合之前,获取当前帧图像,所述当前帧图像为所述终端当前显示界面对应的图像;
所述终端还包括:划分模块;
所述划分模块,还用于在所述第一录屏帧率小于所述预设录屏帧率的情况下,对于所述获取模块获取的每帧图像,均执行下述方法,以得到至少两个集合;
在所述获取模块获取的一帧图像满足第一预设条件的情况下,将所述一帧图像作为与所述第一预设条件对应的第一集合中的图像,所述第一集合为所述至少两个集合中的集合,一个集合对应一个预设条件。
12.根据权利要求11所述的终端,其特征在于,所述预设编码方式的种类包括软件编码和/或硬件编码。
13.一种终端,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的生成视频的方法的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的生成视频的方法的步骤。
CN201810134890.3A 2018-02-09 2018-02-09 一种生成视频的方法及终端 Pending CN108391123A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810134890.3A CN108391123A (zh) 2018-02-09 2018-02-09 一种生成视频的方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810134890.3A CN108391123A (zh) 2018-02-09 2018-02-09 一种生成视频的方法及终端

Publications (1)

Publication Number Publication Date
CN108391123A true CN108391123A (zh) 2018-08-10

Family

ID=63075640

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810134890.3A Pending CN108391123A (zh) 2018-02-09 2018-02-09 一种生成视频的方法及终端

Country Status (1)

Country Link
CN (1) CN108391123A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109089131A (zh) * 2018-09-21 2018-12-25 广州虎牙信息科技有限公司 一种基于ios系统的录屏直播方法、装置、设备及存储介质
CN109584652A (zh) * 2018-12-29 2019-04-05 武汉易测云网络科技有限公司 一种建筑从业人员在线学习系统
CN109816759A (zh) * 2019-01-25 2019-05-28 维沃移动通信有限公司 一种表情生成方法及装置
CN110401870A (zh) * 2019-07-30 2019-11-01 努比亚技术有限公司 录屏帧率的调整方法、终端以及计算机可读存储介质
CN111246123A (zh) * 2020-03-05 2020-06-05 Oppo广东移动通信有限公司 图像处理方法及相关产品
CN113271494A (zh) * 2021-04-16 2021-08-17 维沃移动通信有限公司 视频帧处理方法、装置和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6172672B1 (en) * 1996-12-18 2001-01-09 Seeltfirst.Com Method and system for providing snapshots from a compressed digital video stream
CN102012818A (zh) * 2010-12-01 2011-04-13 广东威创视讯科技股份有限公司 屏幕录制方法与装置
CN104020986A (zh) * 2013-02-28 2014-09-03 腾讯科技(深圳)有限公司 一种屏幕录制方法及装置
CN107277607A (zh) * 2017-06-09 2017-10-20 努比亚技术有限公司 一种屏幕图像录制方法、终端及计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6172672B1 (en) * 1996-12-18 2001-01-09 Seeltfirst.Com Method and system for providing snapshots from a compressed digital video stream
CN102012818A (zh) * 2010-12-01 2011-04-13 广东威创视讯科技股份有限公司 屏幕录制方法与装置
CN104020986A (zh) * 2013-02-28 2014-09-03 腾讯科技(深圳)有限公司 一种屏幕录制方法及装置
CN107277607A (zh) * 2017-06-09 2017-10-20 努比亚技术有限公司 一种屏幕图像录制方法、终端及计算机可读存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109089131A (zh) * 2018-09-21 2018-12-25 广州虎牙信息科技有限公司 一种基于ios系统的录屏直播方法、装置、设备及存储介质
CN109584652A (zh) * 2018-12-29 2019-04-05 武汉易测云网络科技有限公司 一种建筑从业人员在线学习系统
CN109816759A (zh) * 2019-01-25 2019-05-28 维沃移动通信有限公司 一种表情生成方法及装置
CN109816759B (zh) * 2019-01-25 2023-11-17 维沃移动通信有限公司 一种表情生成方法及装置
CN110401870A (zh) * 2019-07-30 2019-11-01 努比亚技术有限公司 录屏帧率的调整方法、终端以及计算机可读存储介质
CN110401870B (zh) * 2019-07-30 2022-12-06 安徽天行云视科技有限公司 录屏帧率的调整方法、终端以及计算机可读存储介质
CN111246123A (zh) * 2020-03-05 2020-06-05 Oppo广东移动通信有限公司 图像处理方法及相关产品
CN111246123B (zh) * 2020-03-05 2022-02-18 Oppo广东移动通信有限公司 图像处理方法及相关产品
CN113271494A (zh) * 2021-04-16 2021-08-17 维沃移动通信有限公司 视频帧处理方法、装置和电子设备
CN113271494B (zh) * 2021-04-16 2023-04-11 维沃移动通信有限公司 视频帧处理方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN108391123A (zh) 一种生成视频的方法及终端
CN108966004A (zh) 一种视频处理方法及终端
CN110058836A (zh) 一种音频信号的输出方法及终端设备
CN108600668A (zh) 一种录屏帧率调整方法及移动终端
CN110209323A (zh) 一种显示未读消息的方法及终端设备
CN109871164A (zh) 一种消息发送方法及终端设备
CN110069180A (zh) 一种功能控制方法及终端设备
CN109600297A (zh) 一种标识清除方法及终端设备
CN108600078A (zh) 一种通信的方法及终端
CN108920226A (zh) 屏幕录制方法及装置
CN110460894A (zh) 一种视频图像显示方法及终端设备
CN110035503A (zh) 资源状态的配置方法、激活或去激活方法、基站及终端
CN110046013A (zh) 一种界面显示方法及终端设备
CN109639887A (zh) 一种控制方法及终端设备
CN109005314A (zh) 一种图像处理方法及终端
CN109117054A (zh) 一种显示控制方法及终端
CN108595070A (zh) 一种图标显示控制方法及终端
CN108519847A (zh) 一种录屏方法及终端
CN107992378B (zh) 一种文件处理方法及移动终端
CN109979286A (zh) 一种信息呈现方法及终端设备
CN109976844A (zh) 一种消息显示方法及移动终端
CN109471524A (zh) 一种控制马达振动的方法及移动终端
CN109068084A (zh) 视频通话画面显示方法、移动终端及计算机可读存储介质
CN109117037A (zh) 一种图像处理的方法及终端设备
CN108446153A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180810