- 浏览: 75518 次
- 性别:
- 来自: 武汉
文章分类
最新评论
public void getBitmapsFromVideo() { String dataPath = Environment.getExternalStorageDirectory() + "/11211015_1555.mp4"; MediaMetadataRetriever retriever = new MediaMetadataRetriever(); retriever.setDataSource(dataPath); // 取得视频的长度(单位为毫秒) String time = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION); // 取得视频的长度(单位为秒) int seconds = Integer.valueOf(time) / 1000; // 得到每一秒时刻的bitmap比如第一秒,第二秒 for (int i = 1; i <= seconds; i++) { Bitmap bitmap = retriever.getFrameAtTime(i * 1000 * 1000, MediaMetadataRetriever.OPTION_CLOSEST_SYNC); String path = Environment.getExternalStorageDirectory() + File.separator+"_car_vedio_capture"+ File.separator + i + ".jpg"; saveBitmap(bitmap,path); } }
public void saveBitmap(Bitmap bm, String path) { String dir = path.substring(0,path.lastIndexOf("/")); File dirFile = new File(dir); if (!dirFile.exists()) { dirFile.mkdirs(); } File f = new File(path); if (f.exists()) { f.delete(); } FileOutputStream out = null; try { out = new FileOutputStream(f); bm.compress(Bitmap.CompressFormat.JPEG, 100, out); } catch (FileNotFoundException e) { e.printStackTrace(); } finally { if (out != null) { try { out.flush(); out.close(); } catch (IOException e) { e.printStackTrace(); } } } }
发表评论
-
android中string.xml通配符以及颜色
2016-11-29 21:42 1816string.xml <resources> ... -
使用zxing实现生成二维码
2016-11-28 00:58 647github: https://github.com/bill ... -
android通过文件管理器选择文件
2016-11-22 23:36 1902public void openSystemF ... -
将bitmap保存为文件
2016-11-22 23:28 1427public void saveBitmap(Bitma ... -
Material Design动画(一)reveal effect
2016-09-22 22:47 500Animator animator = ViewAn ... -
Android将apk放置于asset目录下安装
2016-09-13 16:32 1126ServiceApkInstaller.java publ ... -
创建自定义控件在布局中的自定义属性
2016-09-11 21:15 6611.在values目录下新建attrs.xml < ... -
androidstudio搭建NDK开发环境
2016-09-08 18:53 20501.打开SDK Manager下载NDK 2.设置根目录中的 ... -
[Android Studio 权威教程]AS添加第三方库的6种方式(Jar,module,so等)
2016-09-05 18:07 847http://blog.csdn.net/yy13003263 ... -
android启动其他应用得service
2016-08-31 10:03 760Intent i=new Intent(); i.s ... -
android屏幕分辨率适配工具
2016-07-22 17:22 688下载附件后,执行 java -jar autolayout.j ... -
android不死服务的实现方法
2015-11-20 13:36 1271大部分应用在手机长按home键删除最近程序时,进程会被杀掉,本 ... -
android开机自启广播无效果的曲线解决方案
2015-10-04 23:24 2742AndroidManifest.xml <?xml ... -
坑爹的MediaPlayer.isPlaying()
2015-09-18 14:42 2532在这个安卓手机ROM千奇百怪的时代,MediaPlayer作为 ... -
CompletionService 实践
2015-04-26 20:02 596当向Executor提交批处理任务时,并且希望在它们完 ... -
Bitmap的简单应用
2015-03-23 23:56 806package com.example.b; imp ... -
listpreference
2015-01-07 23:02 648MyPreferencesActivity.java pa ... -
李刚安卓疯狂讲义
2014-02-11 23:30 37压缩分卷5个字 -
android开发工具
2014-01-29 00:07 646android开发工具 -
android 拖动条改变屏幕亮度
2013-04-26 00:29 1283main.xml <?xml version=&qu ...
相关推荐
在这个例子中,我们需要用它来编码图片为视频帧。 4. **Surface**:在MediaCodec编码过程中,Surface是一个关键组件,它作为编码器的输入,可以接收图像数据。我们可以通过Bitmap对象绘制到Surface上,从而将图片传...
`MediaCodec`用于编码图片数据,`MediaMuxer`则负责将编码后的数据封装成视频文件。 2. **ImageToVideoAndroid库介绍** "ImageToVideoAndroid"库由Masayuki Suda开发,它提供了一个简洁的API,让开发者可以快速地...
在Android平台上,将图片序列或录屏转换为视频是一个常见的需求,这通常涉及到多媒体处理和帧率控制等技术。在本项目中,开发者利用了JavaCV库来实现这个功能。JavaCV是一个开源的Java库,它提供了对OpenCV、FFmpeg...
总的来说,这个"Android图片合成视频的小Demo"展示了Android多媒体处理的能力,提供了将图片转化为动态视频的实践案例。对于Android开发者,尤其是对多媒体编程感兴趣的开发者,这是一个不可多得的学习资料。
在Android平台上,将图片转换为视频是一个常见的需求,特别是在创建相册视频或动态壁纸时。本文将深入探讨如何实现这个功能,重点介绍JavaCV和JavaCPP库,以及它们在处理.so文件方面的作用。 首先,JavaCV(Java ...
本篇文章将详细探讨如何在Android应用中加载`assets`文件夹内的文本文件和图片。 1. **加载assets中的文本文件** - **创建assets文件夹**:首先,在项目的`src/main`目录下创建一个名为`assets`的文件夹(如果不...
在Android平台上,将视频或多张图片转换为GIF图是一项常见的需求,特别是在社交媒体应用、游戏和个性化应用中。本文将详细介绍如何在Android环境中实现这一功能。 首先,我们需要理解GIF(Graphics Interchange ...
在 Java 代码中创建这样的 Intent,然后使用 QAndroidJniObject 将其转换为 C++ 世界,接着通过 Qt 的 QtActivity::startActivityForResult 方法启动。 4. **处理返回结果**: 当用户选择图片并返回后,我们需要在...
在这里,我们使用Intent.ACTION_GET_CONTENT来选择视频文件,代码如下: ```java private void setVideoPath() { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("*/*"); intent.add...
在Android平台上,开发一款应用来实现拍摄视频并将其转换为GIF动图是一项技术性的工作。这个过程涉及多个步骤,包括捕获视频、处理视频帧、生成GIF以及创建缩略图。以下是对这一过程的详细阐述: 1. **启动摄像头**...
可以将图片文件转换为InputStream,然后通过网络连接将其写入服务器。这种方式需要处理更多低级别细节,但具有更高的灵活性。 三、视频压缩 1. 视频压缩工具: 在Android上,可以使用MediaCodec或FFmpeg库进行...
3. **时间转换**:将视频的毫秒时间转换为易读的格式(如分钟:秒)显示在时间轴上。 4. **实时更新**:当视频播放时,需要实时更新视频轴上的当前播放位置。 时间轴的设计则相对简单,主要关注时间的表示方式,可以...
- **读取图片**:通过`BitmapFactory`读取选中的图片并转换为字节数组。 - **创建上传请求**:创建`PutObjectRequest`,设置Bucket名、Object键(图片的URL)以及本地文件的字节数组。 - **执行上传**:调用`OSS...
在Android中,我们可以使用`MediaMuxer`类来将一系列的图像帧和音频流组合成一个视频文件。首先,我们需要将图片(通常是JPEG格式)转换为`Bitmap`对象,然后将其编码成`ByteBuffer`。接着,通过`MediaCodec`类的...
在Android平台上,将视频转换为GIF动态图是一项常见的需求,尤其在社交媒体分享、表情包制作等方面。这个项目“LmVedioToGifDemo”显然提供了一个实现这一功能的示例。以下是对这个项目中涉及的技术点进行的详细解释...
例如,从视频中抽取帧并保存为图片,或者将图片合成GIF动画。 3. **码率**(Bitrate): - **码率**决定了视频文件的大小和画质。更高的码率意味着更好的画质,但也需要更多的存储空间。 - **码率类型**: - **...
2. **裁剪图片**:将获取的帧转换为Bitmap,然后使用Bitmap的`createBitmap()`或`copy()`方法进行裁剪。 3. **处理裁剪参数**:确定裁剪的开始时间和持续时间,这通常根据裁剪的区域和视频的帧率计算得出。 4. **...
本项目的核心目标是通过JavaCV将指定目录下的JPG图片序列合成成一个视频文件。 首先,我们需要了解JavaCV的基本用法。JavaCV提供了一个Java接口,可以直接调用OpenCV和FFmpeg的函数。在Android中,我们通常需要添加...
这可以通过在获取到的帧上调用相关的转换方法,将图像帧保存为图片文件。例如,可以使用OpenCV的imwrite()函数将帧转换为Bitmap,然后保存为JPEG或PNG格式的文件。 至于“录制视频”,JavaCV提供了...
视频解码器负责将视频文件或流数据转换成设备可以理解的格式,以便在屏幕上正确显示。渲染器则将解码后的视频帧输出到屏幕,同时处理音频输出。控制器则提供了用户交互的接口,如播放、暂停、快进、快退等操作。 在...