CN103544221B - 一种Android系统中视频缩略图的生成方法和系统 - Google Patents

一种Android系统中视频缩略图的生成方法和系统 Download PDF

Info

Publication number
CN103544221B
CN103544221B CN201310457166.1A CN201310457166A CN103544221B CN 103544221 B CN103544221 B CN 103544221B CN 201310457166 A CN201310457166 A CN 201310457166A CN 103544221 B CN103544221 B CN 103544221B
Authority
CN
China
Prior art keywords
video
function
application program
thumbnails
data information
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.)
Expired - Fee Related
Application number
CN201310457166.1A
Other languages
English (en)
Other versions
CN103544221A (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.)
TCL Corp
Original Assignee
TCL Corp
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 TCL Corp filed Critical TCL Corp
Priority to CN201310457166.1A priority Critical patent/CN103544221B/zh
Publication of CN103544221A publication Critical patent/CN103544221A/zh
Application granted granted Critical
Publication of CN103544221B publication Critical patent/CN103544221B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/738Presentation of query results
    • G06F16/739Presentation of query results in form of a video summary, e.g. the video summary being a video sequence, a composite still image or having synthesized frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本发明公开了一种Android系统中视频缩略图的生成方法和系统,其中,所述方法包括:首先,根据用户指令获取监听到的视频界面的相应帧的数据信息;然后将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成一位图保存下来;最后将所述位图提供给相机应用程序的视图上,形成视频缩略图。使相机应用程序在录制视频时在视图上显示视频缩略图,扩展了Android系统本身创建缩略图的方法,且所述生成方法步骤简单,生成的视频缩略图容易管理、易于为第三方应用使用,同时,该生成方法还具有效率高、资源消耗少等优点,具有很好的推广应用前景。

Description

一种Android系统中视频缩略图的生成方法和系统
技术领域
本发明涉及Android系统技术领域,尤其涉及一种Android系统中视频缩略图的生成方法和系统。
背景技术
缩略图是一种代表网页上或计算机中图片经压缩方式处理后的小图 ,其中通常会包含指向完整大小的图片的超链接。因其小巧,加载速度非常快,故用于快速浏览,起到图片文件预览及目录的作用。
基于Android系统的camera(相机)应用程序,已支持多种存储设备的录制视频的存储。因此,在录制视频之后对视频的缩略图的生成也不能采用原来的Android系统的方式进行生成,因为原先的Android系统的视频缩略图的生成是基于sd卡存储设备的,对于其他存储路径例如:内存、U盘等都是不支持的(不支持的原因在于:由于android系统本身设计并没有支持U盘存储和flash存储等,因此在设计视频缩略图的时候并没有考虑需要支持除sd以外的其他存储设备)。
同时,由于硬件在处理速度以及效率的原因,原生的Android系统的生成视频缩略图的方法比较耗费资源(特别在现在智能电视上面)当硬件本身的性能达不到,或者系统中其他需求需要消耗大量的硬件资源的时候,硬件本身就需要有更加强大的性能,解决的方法必须增加硬件性能。
现有的Android系统成生视频缩略图的方法消耗大量资源,影响系统整体性能。因此在很多系统当中对视频缩略图都采用屏蔽的方式,这样大大影响了系统的用户体验效果。
有鉴于此,现有技术有待改进和提高。
发明内容
鉴于现有技术的不足,本发明目的在于提供一种Android系统中视频缩略图的生成方法和系统。旨在解决现有技术的Android系统中生成视频缩略图时存在的系统耗费资源过大的问题。
本发明的技术方案如下:
一种Android系统中视频缩略图的生成方法,用于相机应用程序在录制视频时在视图上显示视频缩略图,其中,所述生成方法依次包括以下步骤:
A、根据用户指令获取监听到的视频界面的相应帧的数据信息;
B、将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成位图保存;
C、将所述位图提供给相机应用程序的视图上,形成视频缩略图;
所述的Android系统中视频缩略图的生成方法,其中,还包括步骤:
D、当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。
所述的Android系统中视频缩略图的生成方法,其中,还包括步骤:
E、第三方应用通过获取所述位图实现调用视频缩略图。
所述的Android系统中视频缩略图的生成方法,其中,所述步骤A中具体包括:
A1、定义一previewCallback函数,并重写所述函数中的onPreviewFrame函数,所述onPreviewFrame函数包括data数据;
A2、通过onPreviewFrame函数中的data数据,获得设置监听之后的当前视频界面某一帧的数据信息。
所述的Android系统中视频缩略图的生成方法,其中,所述视频缩略图保存在相机应用程序所对应的存储位置内。
所述的Android系统中视频缩略图的生成方法,其中,所述步骤D中删除所述视频缩略图采用以下步骤:
创建deleteVideoThumb函数,通过deleteVideoThumb函数删除所述视频缩略图。
所述的Android系统中视频缩略图的生成方法,其中,还包括步骤:
F、相机应用程序结束录制视频时,获得视频最后一帧的数据信息,并依次采用步骤B、C形成最后一帧的视频缩略图。
一种Android系统中视频缩略图的生成系统,用于相机应用程序在录制视频时在视图上显示视频缩略图,其中,所述系统与相机应用程序的录像模块相连接,其中,所述系统包括:
采集单元,用于根据用户指令获取监听到的视频界面的相应帧的数据信息;
转化单元,用于将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成一位图保存下来;
对应单元,用于将所述位图提供给相机应用程序的视图上,形成视频缩略图。
所述的Android系统中视频缩略图的生成系统,其中,还包括删除单元,用于当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。
所述的Android系统中视频缩略图的生成系统,其中,还包括供应单元,用于第三方应用通过获取所述位图实现调用视频缩略图。
有益效果:
本发明的Android系统中视频缩略图的生成方法和系统,使相机应用程序在录制视频时在视图上显示视频缩略图,扩展了Android系统本身创建缩略图的方法,且所述生成方法步骤简单,生成的视频缩略图容易管理、易于为第三方应用使用,同时,该生成方法还具有效率高、资源消耗少等优点,具有很好的推广应用前景。
附图说明
图1为本发明的Android系统中视频缩略图的生成方法的流程图。
图2为本发明的Android系统中视频缩略图的生成系统的结构框图。
具体实施方式
本发明提供一种Android系统中视频缩略图的生成方法和系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,其为本发明的Android系统中视频缩略图的生成方法的流程图。如图所示,所述Android系统中视频缩略图的生成方法,用于相机应用程序在录制视频时在视图上显示视频缩略图,所述生成方法依次包括以下步骤:
S1、根据用户指令获取监听到的视频界面的相应帧的数据信息;
S2、将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成一位图保存下来;
S3、将所述位图提供给相机应用程序的视图上,形成视频缩略图。
下面分别针对上述步骤进行详细描述:
所述步骤S1为根据用户指令获取监听到的视频界面的相应帧的数据信息。具体来说,相机应用程序录制视频开始后,监听视频界面,并根据用户的指令在监听到的视频界面的帧序列中选取一幅帧图像,获得所述帧图像的数据信息。在本实施例中,通过定义一previewCallback函数,并重写所述函数中的onPreviewFrame函数,所述onPreviewFrame函数包括data数据;再通过onPreviewFrame函数中的data数据,获得设置监听之后的当前视频界面某一帧的数据信息。
所述步骤S2为将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成一位图保存下来。由于onPreviewFrame函数 回调中传来的数据(即某一帧的数据信息)为YUV数据源,因此需要首先把这个数据转化成jpeg格式的数据信息,才能生成位图Bitmap。具体来说,通过Android系统的接口YuvImage对象可以把YUV数据转化成jpeg格式的数据。然后再把jpeg格式的数据生成一个位图Bitmap。
在本实施例中,通过下述代码即可实现将YUV数据转化为相应的位图数据:
Bitmap:
yuvimage= new YuvImage(data,ImageFormat.NV21,width,height,null);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
yuvimage.compressToJpeg(new Rect(0, 0, widht,height), 100, stream);
Bitmap bitmap = BitmapFactory.decodeByteArray(stream.toByteArray(), 0,
stream.size(), options)
所述步骤S3为将所述位图提供给相机应用程序的视图上,形成视频缩略图。在本实施例中,在相机应用程序的视图上显示当前录制视频缩略图中采用了一个优化算法,进一步提高用户体验效果。算法如下:
在生成缩略图模块中,创建一个更新缩略图显示的函数updateDisplay(),该函数实现动画更新控制功能。该方法中采用TransitionDrawable函数,通过TransitionDrawable的startTransition方法启动动画。
定义一个setViewImageDrawable(View v)函数,该函数实现的功能就是为了实现可以在视图v上面显示视频缩略图的方法。
Drawable thumbs [];//定义一个存储缩略图的数据
if thumbs 等于 null{
thumbs = new Drawable[2]
thumbs[1] = (Drawable)bitmap;
drawable = thumbs[1]
}else{
thumbs[0] = thumbs[1]
thumbs[1] = (Drawable)bitmap;
mTransitionDrawable = TransitionDrawable(thumbs)
drawable = mTransitionDrawable
}
v.setImageDrawable(drawable)
在本实施例中,本发明的Android系统中视频缩略图的生成方法通过相机应用程序把自身需要显示的视图提供给setViewImageDrawable,并通过 TransitionDrawable函数实现动画显示缩略图。再通过updateDisplay调用TransitionDrawable函数中的更新动画方法,更新动画。相机应用程序通过调用updateDisplay,启动动画显示。
进一步地,所述的Android系统中视频缩略图的生成方法还包括步骤:
S4、当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。在本实施例中,通过创建函数deleteVideoThumb(),用来删除相机录制视频之后生成的视频缩略图文件,该deleteVideoThumb()函数主要功能是为了删除视频缩略图文件。当视频录像没有保存成功,录制视频文件失败时候以及其他异常情况导致需要删除视频缩略图的时候使用。
更进一步地,所述的Android系统中视频缩略图的生成方法还包括步骤:
S5、第三方应用通过获取所述位图实现调用视频缩略图。通过创建函数createVideoThumb(),该函数的功能是在相机应用程序录制视频选择的存储位置(U盘、sd卡和内存)里面创建一个保存视频缩略图(在本步骤所述的视频缩略图指位图)的文件。当开始录制视频的时候,根据录制视频时候选择的存储路径,以及创建录制视频的名称,使用生成缩略图模块中的createVideoThumb()方法创建一个名称和录制视频名称一样的文件。注:文件的扩展名不一样。视频文件为3gp,缩略图为jpg。该文件用来存储录制视频的视频缩略图。
另外,所述的Android系统中视频缩略图的生成方法中,相机应用程序结束录制视频时,采用setOneShotPreviewCallback(previewCallback)函数启动步骤一中定义的previewCallback函数,该函数中的回调函数onPreviewFrame(byte[] data,Cameracamera)会被触发,onPreviewFrame(byte[] data,Camera camera)函数中data数据信息就是当前一帧的数据信息,这样就达到了结束录制视频时候通过回调函数获得当前相机的一帧数据信息。
本发明还提供了一种Android系统中视频缩略图的生成系统,用于相机应用程序在录制视频时在视图上显示视频缩略图,如图2所示,所述系统与相机应用程序的录像模块相连接,其中,所述系统包括:
采集单元100,用于根据用户指令获取监听到的视频界面的相应帧的数据信息;
转化单元200,用于将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成一位图保存下来;
对应单元300,用于将所述位图提供给相机应用程序的视图上,形成视频缩略图。
进一步地,所述的Android系统中视频缩略图的生成系统中,还包括删除单元,用于当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。
更进一步地,所述的Android系统中视频缩略图的生成系统中,还包括供应单元,用于第三方应用通过获取所述位图实现调用视频缩略图。
因为上述模块的具体实施细节都在Android系统中视频缩略图的生成方法中进行了详细描述,这里就不再赘述了。
综上所述,本发明的Android系统中视频缩略图的生成方法和系统,其中,所述方法包括:首先,根据用户指令获取监听到的视频界面的相应帧的数据信息;然后将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成一位图保存下来;最后将所述位图提供给相机应用程序的视图上,形成视频缩略图。使相机应用程序在录制视频时在视图上显示视频缩略图,扩展了Android系统本身创建缩略图的方法,且所述生成方法步骤简单,生成的视频缩略图容易管理、易于为第三方应用使用,同时,该生成方法还具有效率高、资源消耗少等优点,具有很好的推广应用前景。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (5)

1.一种Android系统中视频缩略图的生成方法,用于相机应用程序在录制视频时在视图上显示视频缩略图,其特征在于,所述生成方法依次包括以下步骤:
A、根据用户指令获取监听到的视频界面的相应帧的数据信息;
B、将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成位图保存下来;
C、将所述位图提供给相机应用程序的视图上,形成视频缩略图;
其中,创建函数createVideoThumb(),该函数的功能是在相机应用程序录制视频选择的存储位置里面创建一个保存视频缩略图的文件,当开始录制视频时,根据录制视频时候选择的存储路径,以及创建录制视频的名称,使用生成缩略图模块中的函数createVideoThumb()创建一个名称和录制视频名称一样的文件,且文件的扩展名不一样;
所述步骤C中在相机应用程序的视图上显示当前录制视频缩略图时采用如下优化算法:在生成缩略图模块中,创建一个更新缩略图显示的函数updateDisplay();
所述步骤C中通过相机应用程序把自身需要显示的视图提供给函数setViewImageDrawable(),并通过函数TransitionDrawable()实现动画显示缩略图,通过函数updateDisplay()调用函数TransitionDrawable()中的更新动画方法,更新动画,相机应用程序通过调用函数updateDisplay(),启动动画显示;
D、当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图;
E、第三方应用通过获取所述位图实现调用视频缩略图。
2.根据权利要求1所述的Android系统中视频缩略图的生成方法,其特征在于,所述步骤A中具体包括:
A1、定义函数previewCallback(),并重写所述函数中的函数onPreviewFrame(),所述函数onPreviewFrame()包括data数据;
A2、通过函数onPreviewFrame()中的data数据,获得设置监听之后的当前视频界面某一帧的数据信息。
3.根据权利要求1所述的Android系统中视频缩略图的生成方法,其特征在于,所述步骤D中删除所述视频缩略图采用以下步骤:
创建一函数deleteVideoThumb(),通过所述函数deleteVideoThumb()删除所述视频缩略图。
4.根据权利要求1所述的Android系统中视频缩略图的生成方法,其特征在于,还包括步骤:
F、相机应用程序结束录制视频时,获得视频最后一帧的数据信息,并依次采用步骤B、C形成最后一帧的视频缩略图。
5.一种Android系统中视频缩略图的生成系统,用于相机应用程序在录制视频时在视图上显示视频缩略图,其特征在于,所述系统与相机应用程序的录像模块相连接,其中,所述系统包括:
采集单元,用于根据用户指令获取监听到的视频界面的相应帧的数据信息;
转化单元,用于将所述数据信息转化为jpeg格式的数据信息,并根据所述jpeg格式的数据信息生成一位图保存下来;
对应单元,用于将所述位图提供给相机应用程序的视图上,形成视频缩略图;
其中,创建函数createVideoThumb(),该函数的功能是在相机应用程序录制视频选择的存储位置里面创建一个保存视频缩略图的文件,当开始录制视频时,根据录制视频时候选择的存储路径,以及创建录制视频的名称,使用生成缩略图模块中的函数createVideoThumb()创建一个名称和录制视频名称一样的文件,且文件的扩展名不一样;
所述对应单元中在相机应用程序的视图上显示当前录制视频缩略图时采用如下优化算法:在生成缩略图模块中,创建一个更新缩略图显示的函数updateDisplay();
所述对应单元中通过相机应用程序把自身需要显示的视图提供给函数setViewImageDrawable(),并通过函数TransitionDrawable()实现动画显示缩略图,通过函数updateDisplay()调用函数TransitionDrawable()中的更新动画方法,更新动画,相机应用程序通过调用函数updateDisplay(),启动动画显示;
还包括删除单元,用于当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图;
还包括供应单元,用于第三方应用通过获取所述位图实现调用视频缩略图。
CN201310457166.1A 2013-09-30 2013-09-30 一种Android系统中视频缩略图的生成方法和系统 Expired - Fee Related CN103544221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310457166.1A CN103544221B (zh) 2013-09-30 2013-09-30 一种Android系统中视频缩略图的生成方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310457166.1A CN103544221B (zh) 2013-09-30 2013-09-30 一种Android系统中视频缩略图的生成方法和系统

Publications (2)

Publication Number Publication Date
CN103544221A CN103544221A (zh) 2014-01-29
CN103544221B true CN103544221B (zh) 2018-09-18

Family

ID=49967673

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310457166.1A Expired - Fee Related CN103544221B (zh) 2013-09-30 2013-09-30 一种Android系统中视频缩略图的生成方法和系统

Country Status (1)

Country Link
CN (1) CN103544221B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104980660B (zh) * 2015-07-10 2019-01-04 成都品果科技有限公司 一种Android平台静音拍照的方法
CN105657470B (zh) * 2015-12-31 2018-09-28 深圳市海云天科技股份有限公司 一种位图式视频浏览的记录方法及系统
CN105812832B (zh) * 2016-04-01 2019-04-30 中国科学院信息工程研究所 基于安卓多媒体框架的视频类App中视频数据获取方法
CN111405221B (zh) * 2020-01-13 2023-03-24 Vidaa(荷兰)国际控股有限公司 显示设备及录制文件列表的显示方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719952A (zh) * 2009-12-10 2010-06-02 惠州Tcl移动通信有限公司 移动终端及其当前显示画面的图片生成方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719952A (zh) * 2009-12-10 2010-06-02 惠州Tcl移动通信有限公司 移动终端及其当前显示画面的图片生成方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Android 关于获取摄像头帧数据;匿名;《blog.csdn.net/vblittleboy/article/details/10945073》;20130902;1-5 *
Android开发:实时处理摄像头预览帧视频---浅析PreviewCallback,onPreviewFrame,AsyncTask的综合应用;匿名;《blog.csdn.net/easyer2012/article/details/10132005》;20130821;1-5 *

Also Published As

Publication number Publication date
CN103544221A (zh) 2014-01-29

Similar Documents

Publication Publication Date Title
CN103544221B (zh) 一种Android系统中视频缩略图的生成方法和系统
CN106453572B (zh) 基于云服务器同步图像的方法及系统
CN110096660B (zh) 用于加载页面图片的方法、装置和电子设备
US9076239B2 (en) Method and systems for thumbnail generation, and corresponding computer program product
CN104540000A (zh) 一种动态缩略图的生成方法及终端
CN109547533A (zh) 一种教育系统的html5移动端图片上传预处理方法及电子设备
CN105075241A (zh) 电子装置和处理图像的方法
CN101398807B (zh) 解压移动终端压缩包的方法和装置
CN105573967A (zh) 一种多格式文件在线浏览方法及系统
CN102945277A (zh) 图像文件检索的方法和装置
WO2009097710A1 (zh) 文件的组织、检索方法、文件组织模块、系统及存储媒介
JP2009009255A (ja) 情報処理装置及び情報処理方法
CN108024159A (zh) 一种视频文件缩略图的生成方法及系统
US20130016108A1 (en) Information processing apparatus, information processing method, and program
CN104378678A (zh) 一种移动终端处理电视频道信息的方法
CN105447016B (zh) 一种组件的快速搜索及重用的办法
JP2006148912A (ja) 映像データの記録方法及びその記録装置
US8526777B2 (en) Moving image recording method and information processing device
US10630809B2 (en) Information processing apparatus, image processing apparatus and control methods thereof
CN102541881A (zh) 文件预览图像的显示方法和电子设备
CN103905694A (zh) 一种关键帧处理方法及系统
CN102332151B (zh) 大批量图片的处理方法及系统
CN103324740B (zh) 一种图片显示方法、装置及机顶盒
CN102567460B (zh) 一种文档加载中图像异步解码的方法
CN102902525A (zh) 一种swf文件批量修改帧频的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180918