CN103544221A - 一种Android系统中视频缩略图的生成方法和系统 - Google Patents
一种Android系统中视频缩略图的生成方法和系统 Download PDFInfo
- Publication number
- CN103544221A CN103544221A CN201310457166.1A CN201310457166A CN103544221A CN 103544221 A CN103544221 A CN 103544221A CN 201310457166 A CN201310457166 A CN 201310457166A CN 103544221 A CN103544221 A CN 103544221A
- Authority
- CN
- China
- Prior art keywords
- video
- thumbnails
- video thumbnails
- android system
- data message
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/738—Presentation of query results
- G06F16/739—Presentation 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
-
- 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/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
Abstract
本发明公开了一种Android系统中视频缩略图的生成方法和系统,其中,所述方法包括:首先,根据用户指令获取监听到的视频界面的相应帧的数据信息;然后将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成一位图保存下来;最后将所述位图提供给相机应用程序的视图上,形成视频缩略图。使相机应用程序在录制视频时在视图上显示视频缩略图,扩展了Android系统本身创建缩略图的方法,且所述生成方法步骤简单,生成的视频缩略图容易管理、易于为第三方应用使用,同时,该生成方法还具有效率高、资源消耗少等优点,具有很好的推广应用前景。
Description
技术领域
本发明涉及Android系统技术领域,尤其涉及一种Android系统中视频缩略图的生成方法和系统。
背景技术
缩略图是一种代表网页上或计算机中图片经压缩方式处理后的小图 ,其中通常会包含指向完整大小的图片的超链接。因其小巧,加载速度非常快,故用于快速浏览,起到图片文件预览及目录的作用。
基于Android系统的camera(相机)应用程序,已支持多种存储设备的录制视频的存储。因此,在录制视频之后对视频的缩略图的生成也不能采用原来的Android系统的方式进行生成,因为原先的Android系统的视频缩略图的生成是基于sd卡存储设备的,对于其他存储路径例如:内存、U盘等都是不支持的(不支持的原因在于:由于android系统本身设计并没有支持U盘存储和flash存储等,因此在设计视频缩略图的时候并没有考虑需要支持除sd以外的其他存储设备)。
同时,由于硬件在处理速度以及效率的原因,原生的Android系统的生成视频缩略图的方法比较耗费资源(特别在现在智能电视上面)当硬件本身的性能达不到,或者系统中其他需求需要消耗大量的硬件资源的时候,硬件本身就需要有更加强大的性能,解决的方法必须增加硬件性能。
现有的Android系统成生视频缩略图的方法消耗大量资源,影响系统整体性能。因此在很多系统当中对视频缩略图都采用屏蔽的方式,这样大大影响了系统的用户体验效果。
有鉴于此,现有技术有待改进和提高。
发明内容
鉴于现有技术的不足,本发明目的在于提供一种Android系统中视频缩略图的生成方法和系统。旨在解决现有技术的Android系统中生成视频缩略图时存在的系统耗费资源过大的问题。
本发明的技术方案如下:
一种Android系统中视频缩略图的生成方法,用于相机应用程序在录制视频时在视图上显示视频缩略图,其中,所述生成方法依次包括以下步骤:
A、根据用户指令获取监听到的视频界面的相应帧的数据信息;
B、将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成位图保存;
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系统中视频缩略图的生成系统,用于相机应用程序在录制视频时在视图上显示视频缩略图,其中,所述系统与相机应用程序的录像模块相连接,其中,所述系统包括:
采集单元,用于根据用户指令获取监听到的视频界面的相应帧的数据信息;
转化单元,用于将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成一位图保存下来;
对应单元,用于将所述位图提供给相机应用程序的视图上,形成视频缩略图。
所述的Android系统中视频缩略图的生成系统,其中,还包括删除单元,用于当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。
所述的Android系统中视频缩略图的生成系统,其中,还包括供应单元,用于第三方应用通过获取所述位图实现调用视频缩略图。
有益效果:
本发明的Android系统中视频缩略图的生成方法和系统,使相机应用程序在录制视频时在视图上显示视频缩略图,扩展了Android系统本身创建缩略图的方法,且所述生成方法步骤简单,生成的视频缩略图容易管理、易于为第三方应用使用,同时,该生成方法还具有效率高、资源消耗少等优点,具有很好的推广应用前景。
附图说明
图1为本发明的Android系统中视频缩略图的生成方法的流程图。
图2为本发明的Android系统中视频缩略图的生成系统的结构框图。
具体实施方式
本发明提供一种Android系统中视频缩略图的生成方法和系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,其为本发明的Android系统中视频缩略图的生成方法的流程图。如图所示,所述Android系统中视频缩略图的生成方法,用于相机应用程序在录制视频时在视图上显示视频缩略图,所述生成方法依次包括以下步骤:
S1、根据用户指令获取监听到的视频界面的相应帧的数据信息;
S2、将所述数据信息转化为jepg格式的数据信息,并根据所述jpeg格式的数据信息生成一位图保存下来;
S3、将所述位图提供给相机应用程序的视图上,形成视频缩略图。
下面分别针对上述步骤进行详细描述:
所述步骤S1为根据用户指令获取监听到的视频界面的相应帧的数据信息。具体来说,相机应用程序录制视频开始后,监听视频界面,并根据用户的指令在监听到的视频界面的帧序列中选取一幅帧图像,获得所述帧图像的数据信息。在本实施例中,通过定义一previewCallback函数,并重写所述函数中的onPreviewFrame函数,所述onPreviewFrame函数包括data数据;再通过onPreviewFrame函数中的data数据,获得设置监听之后的当前视频界面某一帧的数据信息。
所述步骤S2为将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成一位图保存下来。由于onPreviewFrame函数 回调中传来的数据(即某一帧的数据信息)为YUV数据源,因此需要首先把这个数据转化成jepg格式的数据信息,才能生成位图Bitmap。具体来说,通过Android系统的接口YuvImage对象可以把YUV数据转化成jepg格式的数据。然后再把jepg格式的数据生成一个位图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,Camera camera)会被触发,onPreviewFrame(byte[] data,Camera camera)函数中data数据信息就是当前一帧的数据信息,这样就达到了结束录制视频时候通过回调函数获得当前相机的一帧数据信息。
本发明还提供了一种Android系统中视频缩略图的生成系统,用于相机应用程序在录制视频时在视图上显示视频缩略图,如图2所示,所述系统与相机应用程序的录像模块相连接,其中,所述系统包括:
采集单元100,用于根据用户指令获取监听到的视频界面的相应帧的数据信息;
转化单元200,用于将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成一位图保存下来;
对应单元300,用于将所述位图提供给相机应用程序的视图上,形成视频缩略图。
进一步地,所述的Android系统中视频缩略图的生成系统中,还包括删除单元,用于当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。
更进一步地,所述的Android系统中视频缩略图的生成系统中,还包括供应单元,用于第三方应用通过获取所述位图实现调用视频缩略图。
因为上述模块的具体实施细节都在Android系统中视频缩略图的生成方法中进行了详细描述,这里就不再赘述了。
综上所述,本发明的Android系统中视频缩略图的生成方法和系统,其中,所述方法包括:首先,根据用户指令获取监听到的视频界面的相应帧的数据信息;然后将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成一位图保存下来;最后将所述位图提供给相机应用程序的视图上,形成视频缩略图。使相机应用程序在录制视频时在视图上显示视频缩略图,扩展了Android系统本身创建缩略图的方法,且所述生成方法步骤简单,生成的视频缩略图容易管理、易于为第三方应用使用,同时,该生成方法还具有效率高、资源消耗少等优点,具有很好的推广应用前景。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种Android系统中视频缩略图的生成方法,用于相机应用程序在录制视频时在视图上显示视频缩略图,其特征在于,所述生成方法依次包括以下步骤:
A、根据用户指令获取监听到的视频界面的相应帧的数据信息;
B、将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成位图保存下来;
C、将所述位图提供给相机应用程序的视图上,形成视频缩略图。
2.根据权利要求1所述的Android系统中视频缩略图的生成方法,其特征在于,还包括步骤:
D、当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。
3.根据权利要求1或2所述的Android系统中视频缩略图的生成方法,其特征在于,还包括步骤:
E、第三方应用通过获取所述位图实现调用视频缩略图。
4.根据权利要求1所述的Android系统中视频缩略图的生成方法,其特征在于,所述步骤A中具体包括:
A1、定义previewCallback函数,并重写所述函数中的onPreviewFrame函数,所述onPreviewFrame函数包括data数据;
A2、通过onPreviewFrame函数中的data数据,获得设置监听之后的当前视频界面某一帧的数据信息。
5.根据权利要求1所述的Android系统中视频缩略图的生成方法,其特征在于,所述视频缩略图保存在相机应用程序所对应的存储位置内。
6.根据权利要求2所述的Android系统中视频缩略图的生成方法,其特征在于,所述步骤D中删除所述视频缩略图采用以下步骤:
创建一deleteVideoThumb函数,通过所述deleteVideoThumb函数删除所述视频缩略图。
7.根据权利要求1所述的Android系统中视频缩略图的生成方法,其特征在于,还包括步骤:
F、相机应用程序结束录制视频时,获得视频最后一帧的数据信息,并依次采用步骤B、C形成最后一帧的视频缩略图。
8.一种Android系统中视频缩略图的生成系统,用于相机应用程序在录制视频时在视图上显示视频缩略图,其特征在于,所述系统与相机应用程序的录像模块相连接,其中,所述系统包括:
采集单元,用于根据用户指令获取监听到的视频界面的相应帧的数据信息;
转化单元,用于将所述数据信息转化为jepg格式的数据信息,并根据所述jepg格式的数据信息生成一位图保存下来;
对应单元,用于将所述位图提供给相机应用程序的视图上,形成视频缩略图。
9.根据权利要求8所述的Android系统中视频缩略图的生成系统,其特征在于,还包括删除单元,用于当视频录像没有保存成功或录制视频失败时,删除所述视频缩略图。
10.根据权利要求8或9所述的Android系统中视频缩略图的生成系统,其特征在于,还包括供应单元,用于第三方应用通过获取所述位图实现调用视频缩略图。
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 true CN103544221A (zh) | 2014-01-29 |
CN103544221B 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) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980660A (zh) * | 2015-07-10 | 2015-10-14 | 成都品果科技有限公司 | 一种Android平台静音拍照的方法 |
CN105657470A (zh) * | 2015-12-31 | 2016-06-08 | 深圳市海云天科技股份有限公司 | 一种位图式视频浏览的记录方法及系统 |
CN105812832A (zh) * | 2016-04-01 | 2016-07-27 | 中国科学院信息工程研究所 | 基于安卓多媒体框架的视频类App中视频数据获取方法 |
CN111405221A (zh) * | 2020-01-13 | 2020-07-10 | 海信电子科技(深圳)有限公司 | 显示设备及录制文件列表的显示方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719952A (zh) * | 2009-12-10 | 2010-06-02 | 惠州Tcl移动通信有限公司 | 移动终端及其当前显示画面的图片生成方法和装置 |
-
2013
- 2013-09-30 CN CN201310457166.1A patent/CN103544221B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719952A (zh) * | 2009-12-10 | 2010-06-02 | 惠州Tcl移动通信有限公司 | 移动终端及其当前显示画面的图片生成方法和装置 |
Non-Patent Citations (2)
Title |
---|
匿名: "Android 关于获取摄像头帧数据", 《BLOG.CSDN.NET/VBLITTLEBOY/ARTICLE/DETAILS/10945073》 * |
匿名: "Android开发:实时处理摄像头预览帧视频---浅析PreviewCallback,onPreviewFrame,AsyncTask的综合应用", 《BLOG.CSDN.NET/EASYER2012/ARTICLE/DETAILS/10132005》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980660A (zh) * | 2015-07-10 | 2015-10-14 | 成都品果科技有限公司 | 一种Android平台静音拍照的方法 |
CN104980660B (zh) * | 2015-07-10 | 2019-01-04 | 成都品果科技有限公司 | 一种Android平台静音拍照的方法 |
CN105657470A (zh) * | 2015-12-31 | 2016-06-08 | 深圳市海云天科技股份有限公司 | 一种位图式视频浏览的记录方法及系统 |
CN105812832A (zh) * | 2016-04-01 | 2016-07-27 | 中国科学院信息工程研究所 | 基于安卓多媒体框架的视频类App中视频数据获取方法 |
CN105812832B (zh) * | 2016-04-01 | 2019-04-30 | 中国科学院信息工程研究所 | 基于安卓多媒体框架的视频类App中视频数据获取方法 |
CN111405221A (zh) * | 2020-01-13 | 2020-07-10 | 海信电子科技(深圳)有限公司 | 显示设备及录制文件列表的显示方法 |
CN111405221B (zh) * | 2020-01-13 | 2023-03-24 | Vidaa(荷兰)国际控股有限公司 | 显示设备及录制文件列表的显示方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103544221B (zh) | 2018-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103186919B (zh) | 一种文字渲染方法及装置 | |
KR20120049604A (ko) | 모바일 디바이스의 메모리 관리 방법 및 장치 | |
CN104052922A (zh) | 图像数据处理方法和支持图像数据处理方法的电子设备 | |
CN106453572A (zh) | 基于云服务器同步图像的方法及系统 | |
CN102651001A (zh) | 一种图片浏览的方法及装置 | |
CN103870303A (zh) | 减小软件安装包大小的方法及装置 | |
WO2014101418A1 (zh) | 视频预览显示方法和终端设备 | |
CN104010151A (zh) | 一种监控视频文件压缩方法 | |
CN103544221A (zh) | 一种Android系统中视频缩略图的生成方法和系统 | |
TW201743226A (zh) | 資料處理方法及裝置 | |
CN105075241A (zh) | 电子装置和处理图像的方法 | |
CN103747354A (zh) | 智能电视与外接存储设备连接的控制方法和控制装置 | |
CN104267801A (zh) | 一种降低功耗和带宽的方法及系统 | |
CN110069215B (zh) | 一种基于块存储的动态调整存储单元的方法及装置 | |
CN105786997A (zh) | 基于iOS系统的图片缓存与压缩方法 | |
CN103957240A (zh) | 一种实时拍摄图片并进行分享的天气系统及其实现方法 | |
TWI602431B (zh) | Method and device for transmitting information | |
CN105578224A (zh) | 一种多媒体数据的获取方法、装置、智能电视及机顶盒 | |
CN102883122A (zh) | 一种开机电路及开机方法,一种电视 | |
CN103067679A (zh) | 一种电视机本地图片显示方法 | |
WO2023083064A1 (zh) | 视频处理方法、装置、电子设备及可读存储介质 | |
WO2018201993A1 (zh) | 图像绘制方法、终端及存储介质 | |
WO2019136858A1 (zh) | 一种图片生成的方法、装置及计算机设备 | |
CN104375892A (zh) | 一种智能快速启动实现人脸识别的方法、装置及移动终端 | |
CN102663140B (zh) | 基于tb级全景图像数据快速访问方法 |
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 |
Granted publication date: 20180918 |
|
CF01 | Termination of patent right due to non-payment of annual fee |