一种视频图像的截取方法和装置与流程

文档序号:11139421阅读:290来源:国知局
一种视频图像的截取方法和装置与制造工艺

本发明涉及计算机技术领域,尤其涉及一种视频图像的截取方法和装置。



背景技术:

近年以来,多媒体信息技术发展快速,用户越来越习惯于手持终端来播放视频,当用户在观看视频的过程中,对视频的某个画面很感兴趣时,用户有从播放的视频中截取某个画面存储下来的需要。而现有技术中在图像截取的技术中,用户会提交截图命令给终端,终端需要停止当前播放的视频,并保存当前停止播放的视频图像,这种图像截取方案是对视频某个画面的及时抓取,图像抓取的处理效率很低。



技术实现要素:

本发明实施例提供了一种视频图像的截取方法和装置,用于提高视频图像截取的处理效率。

为解决上述技术问题,本发明实施例提供以下技术方案:

第一方面,本发明实施例提供一种视频图像的截取方法,包括:

接收用户通过当前播放终端发送的图像截取指令,所述图像截取指令包括:截取视频时间点、所述用户在所述当前播放终端的播放界面中划定的图像截取区域以及所述用户选择的目标用途;

根据所述图像截取指令获取与在所述截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据;

根据所述图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从所述视频文件中截取得到的视频截图;

根据所述目标用途将所述视频片段输出。

第二方面,本发明实施例还提供一种终端,包括:

接收模块,用于接收用户通过当前播放终端发送的图像截取指令,所述图像截取指令包括:截取视频时间点、所述用户在所述当前播放终端的播放界面中划定的图像截取区域以及所述用户选择的目标用途;

视频数据获取模块,用于根据所述图像截取指令获取与在所述截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据;

文件编码模块,用于根据所述图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从所述视频文件中截取得到的视频截图;

视频截图输出模块,用于根据所述目标用途将所述视频片段输出。

从以上技术方案可以看出,本发明实施例具有以下优点:

在本发明实施例中,用户通过当前播放终端发送图像截取命令时,首先接收图像截取指令,图像截取指令中可包括:截取视频时间点、用户划定的图像截取区域和目标用途,终端中的播放界面开始播放视频文件后,当播放时间达到截取视频时间点时,可以获取与当前正在播放的视频文件中与图像截取区域对应的已解码视频数据,然后根据图像截取命令对获取到的已解码视频数据进行文件格式编码,从而可以生成从视频文件中截取得到的视频截图。本发明实施例中是通过获取正在播放的视频文件中与图像截取区域对应的已解码视频数据,然后再对已解码视频数据进行文件格式编码的方式得到需要截取的视频截图,而不是通过抓取视频图像来得到视频截图,本发明实施例中可以从已解码视频数据的文件格式编码得到视频截图,对视频截图的截取处理效率很高而且准确,不会受终端响应性能的影响。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种视频图像的截取方法的流程方框示意图;

图2为本发明实施例中图像截取区域的获取方式示意图;

图3为本发明实施例中一种视频图像的截取流程示意图;

图4为本发明实施例提供的已解码视频数据的处理流程示意图;

图5-a为本发明实施例提供的一种终端的组成结构示意图;

图5-b为本发明实施例提供的另一种终端的组成结构示意图;

图5-c为本发明实施例提供的另一种终端的组成结构示意图;

图5-d为本发明实施例提供的另一种终端的组成结构示意图;

图5-e为本发明实施例提供的另一种终端的组成结构示意图;

图5-f为本发明实施例提供的另一种终端的组成结构示意图;

图6为本发明实施例提供的视频图像的截取方法应用于终端的组成结构示意图。

具体实施方式

本发明实施例提供了一种视频图像的截取方法和装置,用于提高视频图像截取的处理效率。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

以下分别进行详细说明。

本发明视频图像的截取方法的一个实施例,具体可以应用于视频播放的终端中需要截取视频图像的场景中,请参阅图1所示,本发明一个实施例提供的视频图像的截取方法,可以包括如下步骤:

101、接收用户通过当前播放终端发送的图像截取指令。

其中,图像截取指令包括:截取视频时间点、用户在当前播放终端的播放界面中划定的图像截取区域以及用户选择的目标用途。

在本发明实施例中,用户在操作终端进行视频播放时,用户在观看到很感谢兴趣的视频时,用户可以操作终端上的截取视频按钮,从而触发终端执行视频图像的截取,例如,终端的触摸屏幕上显示一个截取图像按钮,当用户需要从视频中截取图像时,用户点击触摸屏幕上的截取图像按钮,用户向终端发送一个图像截取指令,该图像截取指令包括用户需要的截取视频时间点,不限制的是,在本发明实施例中,用户直接可以确定需要截取的一张视频图像或者连续的多张视频图像或者非连续的多张视频图像,则用户可以向终端发送一个图像截取指令,在该图像截取指令中包括一个或者多个的截取视频时间点,或者,用户可以向终端发送多个图像截取指令,在每个图像截取指令中包括一个截取视频时间点,从而终端可以确定从哪个时间点开始截取视频,以及需要截取的是单张视频图像还是多张视频图像。

另外,在本发明实施例中,当用户需要对当前播放终端的播放界面的部分画面区域进行截取,而不需要截取整个播放界面的视频画面时,用户设备可以在当前播放终端的播放界面中划定一个图像截取区域,那么在该图像截取区域以外的画面不做截取,此时用户设备也可以在视频截取指令中携带用户从播放界面中划定的图像截取区域。另外,用户通过视频截取指令还可以选择目标用途,以指示终端截取到视频图像会按照特定的目标用途来输出视频图像,例如用户将截取到的视频图像存档,或者存档后分享到QQ空间或者微信中,目标用途指明了用户需要输出的视频图像的特定用途,则本发明中视频截取得到的视频图像可以满足用户对上述目标用途的要求。

在本发明的一些实施例中,用户发送给终端的图像截取指令除了包括截取视频时间点、用户在当前播放终端的播放界面中划定的图像截取区域以及用户选择的目标用途之外,还可以包括用户需要指示终端的其它信息,例如,用户可以指示终端应该输出满足什么样图像参数要求的视频图像,即本发明中还可以进一步的对截取输出的视频截图按照用户要求的图像参数来输出相应的视频截图,从而可以满足用户对截取视频的更多要求。

具体的,在本发明的一些实施例中,图像截取指令还可以具体包括用户选择的目标文件格式,即用户可以指示终端输出图像参数为目标文件格式的视频截图,其中,文件格式是指视频图像的文件本身的格式,例如可以是jpg、 png、bmp等,目标文件格式指明了用户需要输出的特定文件格式,则本发明中视频截取得到的视频截图可以满足用户对上述目标文件格式的要求。

在本发明的一些实施例中,图像截取指令还可以具体包括用户选择的目标分辨率,即用户可以指示终端输出图像参数为目标分辨率的视频截图,其中,分辨率是指视频图像的显示多少信息的设置,通常宽和高都以16倍数为步进单位,例如可以是即16×n(n=1,2,3,....),例如176×144,352×288等,目标分辨率指明了用户需要输出的特定分辨率,则本发明中视频截取得到的视频截图可以满足用户对上述目标分辨率的要求。

在本发明的一些实施例中,图像截取指令还可以具体包括用户选择的目标图像格式,即用户可以指示终端输出图像参数为目标图像格式的视频截图,其中,图像格式是指视频图像的图像内容编码格式,例如可以是jpg、png、bmp等,目标图像格式指明了用户需要输出的特定图像格式,则本发明中视频截取得到的视频截图可以满足用户对上述目标图像格式的要求。

在本发明的一些实施例中,图像截取指令还可以具体包括用户选择的目标图像质量,即用户可以指示终端输出视频参数为目标图像质量的视频截图,其中,图像质量是指视频图像的视频传输等级要求,可以表征图像格式的复杂度,例如将图像质量划分为3个等级或者5等级,用户可以选择需要的目标图像质量为levelⅢ,目标图像质量指明了用户需要输出的特定图像质量等级,则本发明中视频截取得到的视频截图可以满足用户对上述目标图像质量的要求。

在本发明的一些实施例中,图像截取指令还可以具体包括用户选择的目标用途,即用户可以指示终端输出特定用途的视频截图,其中,目标用途是指视频图像被截取后的输出途径,例如可以是存档文件或者存档后分享,目标用途指明了用户需要输出的视频截图的特定用途,则本发明中视频截取得到的视频截图可以满足用户对上述目标用途的要求。

需要说明的是,前述内容中对本发明中终端接收到的图像截取指令包括的各种图像参数进行了详细说明,可以理解的是,本发明中图像截取指令中还可以包括上述的一种或者多种图像参数,具体需要用户选择哪种或者哪些种图像参数,具体可以结合应用场景来确定。

102、根据图像截取指令获取与在截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据。

在本发明实施例中,终端接收到包括截取视频时间点的图像截取指令之后,终端对终端的播放屏幕中当前播放的视频文件进行监测,获取到播放时间的进度,当播放时间达到截取视频时间点时,当前正在播放的播放时间即为截取视频时间点,在这个截取视频时间点,终端获取到与当前正在播放的视频文件中与图像截取区域对应的已解码视频数据,并且本发明中终端获取的已解码视频数据是对应于截取视频时间点在播放的视频文件。

其中,视频播放的过程就是将视频文件解码为原始数据再显示的过程,以截取视频时间点为标记,获取当前正在播放的视频文件,由于视频文件被软件解码器或者硬件解码器解码后成为已解码视频数据,根据解码前后的对应关系,可以由当前正在播放的视频文件对应找到相应的已解码视频数据,已解码视频数据通常是一种原始数据格式,由Y(亮度)、U(色度)、V(色度)三个分量组成,通常用于视频压缩领域,常用的是已解码视频数据可以是YUV420。例如,播放时间的时间轴显示正在播放的是4分20秒的视频文件,若终端接收到的图像截取指令中携带的截取视频时间点为4分22秒,则当前播放时间的时间轴转到4分22秒时,获取该时刻正在播放的视频文件中与图像截取区域对应的已解码视频数据。

在本发明实施例中,终端在接收到包含截取视频时间点的图像截取指令之后,获取已解码视频数据的过程是在截取视频时间点执行的,可以理解的是,在本发明中若图像截取指令中包括多个截取视频时间点,则终端可以根据多个截取视频时间点获取到对应的多个已解码视频数据。

在本发明的一些实施例中,步骤102根据图像截取指令获取与在截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据,可以还包括如下步骤:

A1、计算图像截取区域与当前播放终端的播放界面之间的偏移位置;

A2、根据计算出的偏移位置,确定图像截取区域与在截取视频时间点播放的视频文件中的视频图像的坐标映射关系;

A3、根据坐标映射关系从当前播放终端的帧缓存中读取到与图像截取区 域对应的已解码视频数据。

其中,当前播放终端的显示屏幕上可以设置一个图像截取框,用户可以拖动图像截取框,并可以对图像截取框进行大小、长短、宽高的调整缩放,终端根据用户对图像截取框的调整情况获取到用户在播放界面中划定的图像截取区域,从而终端可以确定用户需要对播放界面中哪个部分或者全部的视频画面进行截取。请参阅如图2所示,为本发明实施例中图像截取区域的获取方式示意图,图2中,区域A为终端的全屏幕区域,区域B到区域C都是视频播放区域,区域B为播放界面,区域C为用户划定的图像截取区域。当然,区域C的位置和区域大小可以由用户拖拽图像截取框来调整。

确定用户划定的图像截取区域之后,执行步骤A1,终端计算图像截取区域与当前播放终端的播放界面之间的偏移位置,也就是说,终端的播放界面为矩形框,图像截取区域为矩形框,需要计算出图像截取区域的四个边角相对于当前播放终端的播放界面的四个角的偏移位置,从而就可以确定出图像截取区域与当前播放终端的播放界面之间的偏移位置。如图2所示,视频文件在显示屏幕上播放时,可以是全屏幕播放,如图2中区域A所示,也可以是非全屏幕区域,如图2中的区域B所示。也可以是区域B到区域A的任意一个区域。不管是在什么区域,用户都可以在视频播放区域内划出一个方形区域,用来作为想要截取的图像截取区域,根据像素位置关系可以计算出划定区域相对于视频播放区域的四个角的偏移位置。

获取到图像截取区域相对于视频播放界面的偏移位置之后,执行步骤A2,根据计算出的偏移位置,确定图像截取区域与当前正在播放的视频文件中的视频图像的坐标映射关系。即步骤A2中计算出的图像截取区域相对于视频播放界面的偏移位置,而视频播放界面与原始的视频图像之间还存在缩放关系,有可能视频播放界面与原始的视频图像相同,那么就是一比一的同等比例,也有可能用户在操作终端时对原始的视频图像进行放大或者缩小,显示为当前的视频播放界面,那么就需要将计算出的图像截取区域相对于视频播放界面的偏移位置进行重新映射,以得到图像截取区域与当前正在播放的视频文件中的视频图像的坐标映射关系。例如如图2所示,对于原始的视频图像坐标映射,因为区域B到区域C是不确定的,即视频播放区域的尺寸与原始视 频图像的大小不一定相等,所以在完成上述的偏移位置之后,还需要计算出该偏移位置在原始的视频图像中的坐标映射关系。

在本发明的一些实施例中,步骤A3根据坐标映射关系从当前播放终端的帧缓存中读取到与图像截取区域对应的已解码视频数据,其中,当前播放终端中正在播放视频文件时,视频文件通过软件解码器或者硬件解码器已经将视频文件解码为已解码视频数据,终端从帧缓存中读取已解码视频数据,然后终端将读取到的已解码视频数据输出到显示屏幕上显示为播放界面,本发明中可以借助于帧缓存中保存的已解码视频数据,获取在截取视频时间点的播放时间正在播放的视频文件的已解码视频数据,获取到正在播放的视频文件对应的已解码视频数据之后,根据坐标映射关系进行比例变换,获取到与图像截取区域对应的已解码视频数据,而在播放界面中图像截取区域以外的已解码视频数据不在获取的已解码视频范围之内。

需要说明的是,在本发明的一些实施例中,终端获取与在截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据还可以有其它的实现方式,例如首先获取到当前正在播放的视频文件对应的源文件,然后对源文件进行重新解码,可以生成已解码视频数据,根据坐标映射关系进行比例变换,获取到与图像截取区域对应的已解码视频数据,按照这样的方式也可以获取到已解码视频数据。

在本发明的一些实施例中,若图像截取指令还包括用户选择的目标分辨率,步骤103根据图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取得到的视频截图之前,本发明提供的视频图像的截取方法还可以包括如下步骤:

B1、判断获取到的已解码视频数据对应的视频文件中视频图像的原分辨率与目标分辨率是否相同;

B2、若原分辨率和目标分辨率不相同,对获取到的已解码视频数据对应的视频文件中视频图像的分辨率进行转换,得到包含目标分辨率的获取到的已解码视频数据。

其中,在步骤102获取到已解码视频数据之后,若终端接收到的图像截取指令中还包括目标分辨率,则说明用户需要指定截取到的视频截图的分辨 率,终端可以首先从视频文件的文件头信息中获取到视频图像的原分辨率,视频文件中视频图像的原分辨率为终端的显示屏幕中播放的视频文件被播放时显示的分辨率,若用户对视频文件中视频图像的原分辨率需要调整,终端的显示屏幕上可以显示分辨率调整菜单,由用户来指定截取到的视频截图的分辨率(即图像截取指令中携带的目标分辨率),得到视频文件中视频图像的原分辨率之后,判断目标分辨率与原分辨率是否相同,若目标分辨率和原分辨率相同,则无需再进行分辨率的转换,若目标分辨率和原分辨率不相同,则需要对分辨率进行转换,具体的,可以调用第三方库(例如ffmpeg)来实现分辨率的转换,得到包含目标分辨率的获取到的已解码视频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标分辨率的获取到的已解码视频数据,即步骤103中所述获取到的已解码视频数据具体为包含目标分辨率的获取到的已解码视频数据。

在本发明的一些实施例中,若图像截取指令还包括用户选择的目标分辨率,在前述执行了步骤A1至A3的应用场景下,步骤103根据图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取得到的视频截图之前,本发明提供的视频图像的截取方法还可以包括如下步骤:

C1、使用坐标映射关系和获取到的已解码视频数据对应的视频文件中视频图像的原分辨率计算出分辨率映射值;

C2、判断分辨率映射值与目标分辨率是否相同;

C3、若分辨率映射值与目标分辨率不相同,对获取到的已解码视频数据对应的视频文件中视频图像进行缩放处理,得到缩放后的获取到的已解码视频数据。

其中,在步骤102获取到已解码视频数据之后,若终端接收到的图像截取指令中还包括目标分辨率,则说明用户需要指定截取到的视频截图的分辨率,终端可以首先从视频文件的文件头信息中获取到视频图像的原分辨率,视频文件中视频图像的原分辨率为终端的显示屏幕中播放的视频文件被播放时显示的分辨率,若用户对视频文件中视频图像的原分辨率需要调整,终端的显示屏幕上可以显示分辨率调整菜单,由用户来指定截取到的视频截图的分辨率(即图像截取指令中携带的目标分辨率),得到视频文件中视频图像的 原分辨率之后,结合前述执行步骤A1至A3的应用场景,用户对原始视频图像进行了调整,则可以按照上述步骤A1至A3来生成坐标映射关系,即图像截取区域与当前正在播放的视频文件中的视频图像的坐标映射关系,结合该坐标映射关系和原分辨率计算出分辨率映射值,然后判断目标分辨率与分辨率映射值是否相同,若目标分辨率和分辨率映射值相同,则无需对视频文件中视频图像进行缩放,若目标分辨率和分辨率映射值不相同,则需要对视频文件中视频图像进行缩放,具体的,可以调用第三方库(例如ffmpeg)来实现视频图像的缩放处理,得到缩放后的获取到的已解码视频数据,则后续步骤103中进行文件格式编码的就是此处描述的缩放后的获取到的已解码视频数据,即步骤103中所述获取到的已解码视频数据具体为缩放后的获取到的已解码视频数据。

在本发明的一些实施例中,若图像截取指令还包括用户选择的目标图像格式,步骤103根据图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取得到的视频截图之前,本发明提供的视频图像的截取方法还可以包括如下步骤:

D1、获得上述获取到的已解码视频数据对应的视频文件的原视频格式;

D2、将获取到的已解码视频数据对应的视频文件的视频格式转换为目标图像格式,得到包含目标图像格式的获取到的已解码视频数据。

其中,在步骤102获取到已解码视频数据之后,若终端接收到的图像截取指令中还包括目标图像格式,则说明用户需要指定截取到的视频截图的图像格式,终端可以首先从视频文件的文件头信息中获取到视频图像的原视频格式,视频文件中视频图像的原视频格式为终端的显示屏幕中播放的视频文件被播放时的视频格式,若用户对视频文件中视频图像的原视频格式需要调整,终端的显示屏幕上可以显示图像格式调整菜单,由用户来指定截取到的视频截图的图像格式(即图像截取指令中携带的目标图像格式),得到视频文件中视频图像的原视频格式之后,对原视频格式进行图像格式的转换,具体的,可以调用第三方库(例如ffmpeg)来实现图像格式的转换,得到包含目标图像格式的获取到的已解码视频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标图像格式的获取到的已解码视频数据,即步骤 103中所述获取到的已解码视频数据具体为包含目标图像格式的获取到的已解码视频数据。

在本发明的一些实施例中,若图像截取指令还包括用户选择的目标图像质量,步骤103根据图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取得到的视频截图之前,本发明提供的视频图像的截取方法还可以包括如下步骤:

E1、获得上述获取到的已解码视频数据对应的视频文件的原视频质量;

E2、将获取到的已解码视频数据对应的视频文件的视频质量调整为目标图像质量,得到包含目标图像质量的获取到的已解码视频数据。

其中,在步骤102获取到已解码视频数据之后,若终端接收到的图像截取指令中还包括目标图像质量,则说明用户需要指定截取到的视频截图的图像质量,终端可以首先从视频文件的文件头信息中获取到视频图像的原视频质量,视频文件中视频图像的原视频质量为终端的显示屏幕中播放的视频文件被播放时显示的视频质量,若用户对视频文件中视频图像的原视频质量需要调整,终端的显示屏幕上可以显示图像质量调整菜单,由用户来指定截取到的视频截图的图像质量(即图像截取指令中携带的目标图像质量),得到视频文件中视频图像的原视频质量之后,将原视频质量调整为目标图像质量,具体的,可以调用第三方库(例如ffmpeg)来实现图像质量的转换,得到包含目标图像质量的获取到的已解码视频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标图像质量的获取到的已解码视频数据,即步骤103中所述获取到的已解码视频数据具体为包含目标图像质量的获取到的已解码视频数据。

103、根据图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取得到的视频截图。

在发明实施例中,前述步骤102中获取到了与在截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据,接下来对获取到的已解码视频数据进行打包封装,使通过步骤102获取到的已解码视频数据被包装为文件的形式,即可以对获取到的已解码视频数据进行文件格式编码,从而可得到用户需要截取的视频截图,生成的视频截图是从终端的播放界面中播 放的视频文件得到。

在本发明的一些实施例中,若图像截取指令还包括用户选择的目标文件格式,则步骤根据图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取得到的视频截图,具体可以包括如下步骤:

G1、使用文件合成器将获取到的已解码视频数据编码为满足目标文件格式的视频截图。

其中,在步骤102获取到已解码视频数据之后,若终端接收到的图像截取指令中还包括目标文件格式,则说明用户需要指定截取到的视频截图的文件格式,执行步骤102获取到已解码视频数据之后,具体可以使用文件合成器将获取到的已解码视频数据编码为满足目标文件格式的视频截图,具体的,可以调用第三方库(例如ffmpeg)来实现文件格式的转换,得到满足目标文件格式的视频图像,使用文件合成器时会在生成的视频截图中可以携带文件头信息,文件头信息中携带的是视频截图的基本特征信息,例如文件头信息包括:视频截图的属性信息。另外,在本发明的一些实施例中,生成的视频截图也可以不携带文件头信息,而是采用默认的配置方式。

104、根据用户选择的目标用途将视频截图输出。

在本发明实施例中,从视频文件中截取出视频截图之后,还可以按照用户的需要将视频截图输出到特定的目的用途中,例如用户将截取到的视频截图存档,或者存档后分享到QQ空间或者微信中,目标用途指明了用户需要输出的视频图像的特定用途,则本发明中视频截取得到的视频截图可以满足用户对上述目标用途的要求。

在本发明的一些实施例中,步骤103根据图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取得到的视频截图之后,本发明实施例提供的视频图像的截取方法还可以包括如下步骤:

H1、按照从视频文件中截取到视频截图的方法,根据用户发送的多个图像截取指令分别获取与在多个截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据,根据多个图像截取指令对获取到的已解码视频数据进行文件格式编码,从视频文件中截取到多张的视频截图;

H2、将多张的视频截图按照截取视频时间点的先后顺序进行合成,得到 从视频文件中截取出的视频片段;

H3、根据目标用途将视频片段输出。

其中,步骤H1中用户可以通过发送多个图像截取指令来获取到多个视频文件对应的已解码数据,例如多次执行前述步骤101至步骤103,可以获取到多张的视频截图,然后按照步骤H2中截取视频时间点的先后顺序对获取到的多张视频图像进行合成,从而可以得到一个连续多张视频截图的视频片段,最后可以按照用户选择的目标用途输出视频片段。通过步骤H1至步骤H3可知,本发明实施例提供的视频图像的截取方法也可以应用于视频片段的截取。

通过以上实施例对本发明实施例的描述可知,用户通过当前播放终端发送图像截取命令时,首先接收图像截取指令,图像截取指令中可包括:截取视频时间点、用户划定的图像截取区域和目标用途,终端中的播放界面开始播放视频文件后,当播放时间达到截取视频时间点时,可以获取与当前正在播放的视频文件中与图像截取区域对应的已解码视频数据,然后根据图像截取命令对获取到的已解码视频数据进行文件格式编码,从而可以生成从视频文件中截取得到的视频截图。本发明实施例中是通过获取正在播放的视频文件中与图像截取区域对应的已解码视频数据,然后再对已解码视频数据进行文件格式编码的方式得到需要截取的视频截图,而不是通过抓取视频图像来得到视频截图,本发明实施例中可以从已解码视频数据的文件格式编码得到视频截图,对视频截图的截取处理效率很高而且准确,不会受终端响应性能的影响。

为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。

以用户使用QQ浏览器观看视频为例进行举例,用户遇到喜欢的视频画面,可以选择截取整个视频画面或者部分视频画面,制作单张图片或者多张图片,保存在本地或者分享给好友。请参阅如图3所示,为本发明中视频图像的截取流程示意图。

S1、图像截取区域偏移位置计算

视频文件在终端的显示屏幕上播放时,可以是全屏幕播放,如图2中的区域A所示,可以是非全屏幕区域,如图2中的区域B所示。也可以是区域 B到区域A的任意一个区域。不管是在什么区域,用户都可以在视频播放区域内划出一个方形区域,用来作为想要截取的图像截取区域,首先需要计算出划定区域相对于视频播放区域的四个角的偏移位置。

S2、原始视频图像的坐标映射

因为区域B到区域C是不确定的,即视频播放区域的尺寸与原始的视频图像大小不一定相等,所以在完成上述的偏移位置之后,需要计算出该偏移位置在原始的视频图像中的坐标映射关系。

S1和S2完成后,进行如下P1、P2、P3的菜单选择,终端的显示屏幕上需要给出一个菜单让用户选择,具体的,包括如下菜单:

P1,用途选择:确定截取到的视频截图是仅存档文件还是存档后分享。

P2,配置选择:分辨率、图像格式、图像质量,文件格式,截取视频时间点。

P3,模式选择:确定需要截取出单个视频截图还是多个视频截图。

S3、已解码视频数据的处理

当用户进行S1划定区域操作时,默认从当前时间点开始处理。视频播放的过程,就是对视频文件解码为原始数据再显示的过程,通常原始数据是YUV420格式。从原始数据开始合成视频截图,可以省去重新解码源文件的环节,可以更节省终端的处理器资源,也可以节省终端的电量。

如图4所示,为本发明实施例提供的已解码视频数据的处理流程示意图,其中,该过程具体可以包括如下步骤的描述:

步骤m1,从图像截取指令中获取用户选择的目标分辨率,目标图像格式和目标图像质量,目标文件格式,截取视频时间点,图片数量等信息。

步骤m2,根据需要编码的图像格式,打开编码器。

步骤m3,根据文件格式,打开文件合成器,并生成文件头信息,其中文件头信息可以为空。

步骤m4,从当前播放过程的解码环节,取得与截取视频时间点对应的已解码视频数据。

步骤m5,色彩转换,即已解码视频数据采用YUV色彩,可根据需要转换为RGB色彩。

步骤m6,根据m1步骤中得到的信息,确定是否进行缩放处理,例如用户划定视图像截取区域,将图像截取区域当前播放器范围相比较,得到一个比例关系,用这个比例关系结合原始分辨率,计算得到一个尺寸,如果这个尺寸与目标分辨率不相同,则需要进行缩放处理,使得输出视频截图的分辨率符合要求。如果不需要则无须缩放处理。

步骤m7,调用编码器,为已编码视频数据按照目标图像格式进行图像格式的编码。

步骤m8,调用文件合成器,将已编码视频数据按照目标文件格式进行编码,生成视频截图。

需要说明的是,本发明中对已编码视频数据处理的流程与视频文件的播放过程同步,如果是合成多个视频截图,则重复以上过程。

S4、视频截图的输出

当视频截图合成后,会提示用户成功。根据P1的选择方式,如果是存档,会调用第三方应用打开图像文件夹。如果是分享,则调用第三方应用进行分享,可以但不限于微信,QQ等方式。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。

请参阅图5-a所示,本发明实施例提供的一种视频图像的截取装置500,可以包括:接收模块501、视频数据获取模块502、文件编码模块503、视频截图输出模块504,其中,

接收模块501,用于接收用户通过当前播放终端发送的图像截取指令,所述图像截取指令包括:截取视频时间点、所述用户在所述当前播放终端的播放界面中划定的图像截取区域以及所述用户选择的目标用途;

视频数据获取模块502,用于根据所述图像截取指令获取与在所述截取视 频时间点播放的视频文件中与图像截取区域对应的已解码视频数据;

文件编码模块503,用于根据所述图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从所述视频文件中截取得到的视频截图;

视频截图输出模块504,用于根据所述目标用途将所述视频片段输出。

在本发明的一些实施例中,请参阅如图5-b所示,所述视频数据获取模块502,包括:

位置计算单元5021,用于计算所述图像截取区域与当前播放终端的播放界面之间的偏移位置;

映射关系确定单元5022,用于根据计算出的所述偏移位置,确定所述图像截取区域与在所述截取视频时间点播放的视频文件中的视频图像的坐标映射关系;

视频数据读取单元5023,用于根据所述坐标映射关系从当前播放终端的帧缓存中读取到与所述图像截取区域对应的已解码视频数据。

在本发明的一些实施例中,若所述图像截取指令还包括用户选择的目标文件格式,所述文件编码模块503,用于使用文件合成器将获取到的已解码视频数据编码为满足所述目标文件格式的视频截图。

在本发明的一些实施例中,请参阅如图5-c所示,若所述图像截取指令还包括用户选择的目标分辨率,所述视频图像的截取装置500还包括:分辨率协调模块505,用于所述文件编码模块503根据所述图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从所述视频文件中截取得到的视频截图之前,判断所述获取到的已解码视频数据对应的视频文件中视频图像的原分辨率与所述目标分辨率是否相同;若所述原分辨率和所述目标分辨率不相同,对所述获取到的已解码视频数据对应的视频文件中视频图像的分辨率进行转换,得到包含所述目标分辨率的所述获取到的已解码视频数据。

在本发明的一些实施例中,若所述图像截取指令还包括用户选择的目标分辨率,所述视频图像的截取装置,还包括:分辨率协调模块505,用于所述文件编码模块根据所述图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从所述视频文件中截取得到的视频截图之前,使用所述坐标映射关系和所述获取到的已解码视频数据对应的视频文件中视频图像的原分辨 率计算出分辨率映射值;判断所述分辨率映射值与所述目标分辨率是否相同;若所述分辨率映射值与所述目标分辨率不相同,对所述获取到的已解码视频数据对应的视频文件中视频图像进行缩放处理,得到缩放后的所述获取到的已解码视频数据。

在本发明的一些实施例中,请参阅如图5-d所示,若所述图像截取指令还包括用户选择的目标视频格式,所述视频图像的截取装置500还包括:图像格式协调模块506,用于所述文件编码模块503根据所述图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从所述视频文件中截取得到的视频截图之前,获得所述获取到的已解码视频数据对应的视频文件的原视频格式;将所述获取到的已解码视频数据对应的视频文件的视频格式转换为目标图像格式,得到包含所述目标图像格式的所述获取到的已解码视频数据。

在本发明的一些实施例中,请参阅如图5-e所示,若所述图像截取指令还包括用户选择的目标视频质量,所述视频图像的截取装置500还包括:图像质量协调模块507,用于所述文件编码模块503根据所述图像截取指令对获取到的已解码视频数据进行文件格式编码,生成从所述视频文件中截取得到的视频截图之前,获得所述获取到的已解码视频数据对应的视频文件的原视频质量;将所述获取到的已解码视频数据对应的视频文件的视频质量调整为所述目标图像质量,得到包含所述目标图像质量的所述获取到的已解码视频数据。

在本发明的一些实施例中,请参阅如图5-f所示,若所述图像截取指令还包括用户选择的目标用途,所述视频图像的截取装置500还包括:图像合并模块508,其中,

所述视频数据获取模块502,还用于按照从所述视频文件中截取到视频截图的方法,根据用户发送的多个图像截取指令分别获取与在多个截取视频时间点播放的视频文件中与图像截取区域对应的已解码视频数据;

所述文件编码模块503,还用于根据多个图像截取指令对获取到的已解码视频数据进行文件格式编码,从所述视频文件中截取到多张的视频截图

所述图像合并模块508,用于将所述多张的视频截图按照截取视频时间点的先后顺序进行合成,得到从所述视频文件中截取出的视频片段;

所述视频截图输出模块504,还用于根据所述目标用途将所述视频片段输出。

通过以上对本发明实施例的描述可知,用户通过当前播放终端发送图像截取命令时,首先接收图像截取指令,图像截取指令中可包括:截取视频时间点、用户划定的图像截取区域和目标用途,终端中的播放界面开始播放视频文件后,当播放时间达到截取视频时间点时,可以获取与当前正在播放的视频文件中与图像截取区域对应的已解码视频数据,然后根据图像截取命令对获取到的已解码视频数据进行文件格式编码,从而可以生成从视频文件中截取得到的视频截图。本发明实施例中是通过获取正在播放的视频文件中与图像截取区域对应的已解码视频数据,然后再对已解码视频数据进行文件格式编码的方式得到需要截取的视频截图,而不是通过抓取视频图像来得到视频截图,本发明实施例中可以从已解码视频数据的文件格式编码得到视频截图,对视频截图的截取处理效率很高而且准确,不会受终端响应性能的影响。

本发明实施例还提供了另一种终端,如图6所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:

图6示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图6,手机包括:射频(Radio Frequency,RF)电路610、存储器620、输入单元630、显示单元640、传感器650、音频电路660、无线保真(wireless fidelity,WiFi)模块670、处理器680、以及电源690等部件。本领域技术人员可以理解,图6中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图6对手机的各个构成部件进行具体的介绍:

RF电路610可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器680处理;另外,将设计上行的数据发送给基站。通常,RF电路610包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外, RF电路610还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。

存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元630可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元630可包括触控面板631以及其他输入设备632。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上或在触控面板631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控面板631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元640可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元640可包括显示面板641,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板641。进一步的,触控面板631可覆盖显示面板641,当触控面板631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图6中,触控面板631与显示面板641是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板631与显示面板641集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在手机移动到耳边时,关闭显示面板641和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路660、扬声器661,传声器662可提供用户与手机之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转换为音频数据,再将音频数据输出处理器680处理后,经RF电路610以发送给比如另一手机,或者将音频数据输出至存储器620以便进一步处理。

WiFi属于短距离无线传输技术,手机通过WiFi模块670可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了WiFi模块670,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器680是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680可包括一个或多个处理单元;优选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。

手机还包括给各个部件供电的电源690(比如电池),优选的,电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

在本发明实施例中,该终端所包括的处理器680还具有控制执行以上由终端执行的视频图像的截取方法流程。

另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储 在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1