java 多图片拼接 转 视频 AVI
1、引入jar包
Jim2mov.jar
jmf-2.1.1e.jar
不引入第二个包 报错
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/Media
2、img2mov代码
package img2mov;import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.Comparator;import org.jim2mov.core.DefaultMovieInfoProvider;
import org.jim2mov.core.ImageProvider;
import org.jim2mov.core.Jim2Mov;
import org.jim2mov.core.MovieInfoProvider;
import org.jim2mov.core.MovieSaveException;
import org.jim2mov.utils.MovieUtils;public class Image2Mov {public static void main(String[] args) {// TODO Auto-generated method stubString jpgDirPath = "E:\\img2mov\\"; // jpg文件夹路径// 生成的mov视频文件名,路径为本工程下 (其他 类似 .avi格式不能直接播放)String aviFileName = "test.mov"; int fps = 3; // 每秒播放的帧数int mWidth = 1440; // 视频的宽度int mHeight = 860; // 视频的高度Image2Mov.convertPicToAvi(jpgDirPath, aviFileName, fps, mWidth, mHeight);}/*** 将图片转换成视频* * @param jpgDirPath jpg图片文件夹绝对路径* @param aviFileName 生成的avi视频文件名* @param fps 每秒帧数* @param mWidth 视频的宽度* @param mHeight 视频的高度* @throws Exception*/public static void convertPicToAvi(String jpgDirPath, String aviFileName, int fps, int mWidth, int mHeight) {// jpgs目录放置jpg图片,图片文件名为(1.jpg,2.jpg...)final File[] jpgs = new File(jpgDirPath).listFiles();if (jpgs == null || jpgs.length == 0) {return;}// 对文件名进行排序(本示例假定文件名中的数字越小,生成视频的帧数越靠前)Arrays.sort(jpgs, new Comparator<File>() {public int compare(File file1, File file2) {String numberName1 = file1.getName().replace(".jpg", "");String numberName2 = file2.getName().replace(".jpg", "");return new Integer(numberName1) - new Integer(numberName2);}});// 生成视频的名称DefaultMovieInfoProvider dmip = new DefaultMovieInfoProvider(aviFileName);// 设置每秒帧数dmip.setFPS(fps > 0 ? fps : 3); // 如果未设置,默认为3// 设置总帧数dmip.setNumberOfFrames(jpgs.length);// 设置视频宽和高(最好与图片宽高保持一直)// 如果未设置,默认为1440 * 860dmip.setMWidth(mWidth > 0 ? mWidth : 1440); dmip.setMHeight(mHeight > 0 ? mHeight : 860); try {new Jim2Mov(new ImageProvider() {public byte[] getImage(int frame) {try {// 设置压缩比return MovieUtils.convertImageToJPEG((jpgs[frame]), 1.0f);} catch (IOException e) {System.err.println(e);}return null;}}, dmip, null).saveMovie(MovieInfoProvider.TYPE_QUICKTIME_JPEG);} catch (MovieSaveException e) {System.err.println(e);}System.out.println("create mov success.");}}
生成图片路径默认 项目文件夹下
生成文件没有问题,但是目前除了 .mov格式文件正常播放
其他格式提示视频编码 错误
java 多图片拼接 转 视频 AVI相关推荐
- ffmpeg入门及java操作ffmpeg对视频进行处理
一.ffmpeg 1.简介 FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件).它提供了录制.转换以及流化音视频的完整解决方案.它包含了非 ...
- Java+Windows+ffmpeg实现视频转换
旧文,源地址见这里. 最近由于项目需要,研究了一下如何用Java实现视频转换,"着实"废了点心思,整理整理,写出给自己备忘下. 思路 由于之前没有没法过相关功能的经验,一开始来真不 ...
- mysql+视频文件转成流_详解java调用ffmpeg转换视频格式为flv
详解java调用ffmpeg转换视频格式为flv 注意:下面的程序是在Linux下运行的,如果在windows下rmvb转换成avi会出现问题,想成功需要下载下个drv43260.dll东西放到C:W ...
- java抖音字符视频_抖音上很火的字符画 Android 实现 | 视频转换实现
最后像国际象棋格子一样,一块一块的替换掉,由于计算相对比较复杂,所以耗时比较长,因此当时那个demo也让我搁置了. 最近看到这篇日推,不由得眼前一亮,因为很少有人在android端做这种东西,因为算法 ...
- java + ffmped + mencoder搭建视频处理平台
java + ffmped + mencoder搭建视频处理平台 ffmpeg+mencoder几乎可以完成目前基于web的播客平台任何音视频处理的操作.如果还需要添加一些什么的话,那么就是视频在线录 ...
- Java使用FFmpeg处理视频文件指南
https://www.cnblogs.com/Dreamer-1/p/10394011.html Java使用FFmpeg处理视频文件指南 本文主要讲述如何使用Java + FFmpeg实现对视频文 ...
- 【FFmpeg】java实现利用ffmpeg视频上传转码同时截取一帧保存为同名图片,并获取视频分辨率
〇.前情提要 完成了视频上传,接下来是给上传的视频保存一张同名的jpg文件在同样文件夹中,并且获取到视频的分辨率. macOS Catalina 10.15.1 ffmpeg version 4.3. ...
- Java架构师在线视频,架构师的7大必备技能
优秀的架构师的核心能力模型包含:编程.性能调优.架构设计等能力等. 编程能力 对工程师而言,编程是最基础的能力,必备技能,其本质是一个翻译能力,将业务需求翻译成机器能懂的语言. 提升编程能力的书籍有很 ...
- java 微服务实践 视频,全新JAVA微服为务实战Spring Boot系列视频教程 小马哥 JAVA微服务实践视频课程...
全新JAVA微服为务实战Spring Boot系列视频教程 小马哥 JAVA微服务实践视频课程 ===============课程目录=============== ├─(1) 03Java 微服务实 ...
最新文章
- STL——vector
- apache安装_Ubuntu20.04安装Sql+apache+php
- electron 使用中的注意事项
- pixhawk px4 commander.cpp
- 数据结构与算法--贪婪算法2
- linux常用命令总结-第一次考试
- JVM Specification 9th Edition (1) Cover
- 剑指offer面试题55 - I. 二叉树的深度(DFS)(递归)
- Java-模拟KTV点歌(控制台程序)
- 数字电路基础:系统设计优化
- 安装office2010提示错误25541的解决方法
- rust怎么上邮轮_实拍沉入海底的泰坦尼克号:被海水腐蚀严重,船体将于10年后消失...
- html p首字母缩进,css如何控制首行缩进2个字符?
- Qt自定义控件的实践——电池电量控件
- 微信账号和语音文件的结构分析
- scala2.11.8安装
- z自建服务器,《守望先锋》将加入自建服务器 自定规则
- 基于模型预测控制MPC的光伏并网系统设计|太阳能发电|模型预测控制
- 迭代阈值图像分割matlab,Matlab 图像分割 (阈值处理)
- VBA中窗体模块、标准模块和类模块的区别