有没有办法从android上的一系列图像创建视频?也许是一种扩展MediaRecorder并能够将图像作为输入的方式。从图像创建视频
我尝试要真正创建视频,并将其存储(如例如一个MPEG4文件)。
感谢您的任何建议。
有没有办法从android上的一系列图像创建视频?也许是一种扩展MediaRecorder并能够将图像作为输入的方式。从图像创建视频
我尝试要真正创建视频,并将其存储(如例如一个MPEG4文件)。
感谢您的任何建议。
您可以在ImageView
使用AnimationDrawable。
使用AnimationDrawable.addFrame(Drawable frame, int duration)
方法添加框架,并使用AnimationDrawable.start()
开始动画。
不知道这是否理想,但它会工作。
嗨iPaulPro并感谢您的答案。 我觉得还不够清楚。我试图真正创建视频并将其存储(例如,作为mpeg4文件)。 AnimationDrawable不会创建任何输出。 – HiddenDev
哦,我明白了。您可能想编辑您的问题以更好地描述您的需求。 –
爱我如何得到 - 投票回答正确的问题。 –
我也在尝试做同样的事情。我一直建议使用Libav。 http://libav.org/ 但是我需要用NDK来构建它,并且我目前有一些问题。
我在找一些关于它的文档。我会及时向大家发布。
我创建了一个帖子看:Libav build for Android
我也试图实现相同的任务,但不幸的是我没有办法靠近你能帮我吗我完全陌生的ndk,ffmpeg和没有更好的教程可用任何帮助表示赞赏 –
我们可以创建使用ffmpeg的影像视频。
看看我post在Android的使用的ffmpeg。下面的命令
用来创建放在同一个文件夹
String command[]={"-y", "-r","1/5" ,"-i",src.getAbsolutePath(),
"-c:v","libx264","-vf", "fps=25","-pix_fmt","yuv420p", dest.getAbsolutePath()};
这里图像视频,
src.getAbsolutePath()是所有输入图像的绝对路径。
例如, 如果你所有的图像存储在图像文件夹中的图片目录里面的名字 extract_picture001.jpg,extract_picture002.jpg,extract_picture003.jpg ......
。 然后,
String filePrefix = "extract_picture";
String fileExtn = ".jpg";
File picDir = Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES);
File dir = new File(picDir, "Images");
File src = new File(dir, filePrefix + "%03d" + fileExtn);
对于来自不同的放置文件夹中的图像,你 必须创建一个文本文件,并添加图片的路径,然后指定 该文本文件作为输入选择的路径创建视频。 例,
文本文件
file '/storage/emulated/0/DCIM/Camera/P_20170807_143916.jpg'
duration 2
file '/storage/emulated/0/DCIM/Pic/P_20170305_142948.jpg'
duration 5
file '/storage/emulated/0/DCIM/Camera/P_20170305_142939.jpg'
duration 6
file '/storage/emulated/0/DCIM/Pic/P_20170305_142818.jpg'
duration 2
命令
String command[] = {"-y", "-f", "concat", "-safe", "0", "-i", textFile.getAbsolutePath(), "-vsync", "vfr", "-pix_fmt", "yuv420p", dest.getAbsolutePath()};
其中textFile.getAbsolutePath()是文本文件
看看这个ffmpeg的doc的更多信息的绝对路径
欢迎来到Stackoverflow!如果你的回复有帮助,请投票。如果回复成功回答您的问题,请点击旁边的绿色复选标记以接受答案。 –
嗨。您是否设法从这些图像中创建mpeg4格式的视频?谢谢 – Paul