java 如何将多张JPG图片合成视频文件,比如:avi格式 或 mpg格式. 50

各位java大侠请进,如何用java实现将多张JPG图片合成视频文件,比如:avi格式或mpg格式。有解决方案的请把源码发到我邮箱:86296745@qq.com一定要调... 各位 java 大侠请进,如何用java实现 将多张JPG图片合成视频文件,比如:avi格式 或 mpg格式。有解决方案的请把源码发到我邮箱:86296745@qq.com 一定要调试通过能运行的!必有重赏哦,呵呵。 展开
 我来答
唐宋元明清_fly
2020-03-02
知道答主
回答量:2
采纳率:0%
帮助的人:1661
展开全部
之前有做过图片合成视频的功能,大概代码就是这样,你可以看一下
/**
* 图片合成视频
* @param mp4SavePath 视频保存路径
* @param imageDir 图片地址
* @param rate 这个可以理解成视频每秒播放图片的数量
*/
public static boolean jpgToMp4(String mp4SavePath, String imageDir, double rate) {
FFmpegFrameRecorder recorder = null;
boolean flag = true;
try {
File[] files = FileUtils.fileSort(imageDir);
int [] widthArray = new int[files.length];
int [] heightArray = new int[files.length];

/**
* 获取合成视频图片的最大宽高,避免图片比例不一致最终合成效果差
*/
for (int i = 0; i < files.length; i++) {
BufferedImage bufferedImage = ImageIO.read(files[i]);
widthArray[i] = bufferedImage.getWidth();
heightArray[i] = bufferedImage.getHeight();
}

/**
* 这个方法主要是防止图片比例达不到视频合成比例的要求,如果达不到下面条件视频则会无法播放
* 图片宽:必须要被32整除
* 图片高:必须要被2整除
*/
int [] maxWH = getImgMaxWH(widthArray,heightArray);
recorder = new FFmpegFrameRecorder(mp4SavePath,maxWH[0],maxWH[1]);
recorder.setVideoCodec(avcodec.AV_CODEC_ID_H264);
/**
* 视频质量:目前测试出来的是25-30最清晰,视频质量范围好像是0-40,具体可以自己慢慢测
*/
recorder.setVideoQuality(25);
recorder.setFormat("mp4");
recorder.setFrameRate(rate > 0 ? rate : 1);
recorder.setPixelFormat(0);
recorder.start();

OpenCVFrameConverter.ToIplImage conveter = new OpenCVFrameConverter.ToIplImage();

/**
* 合成视频
*/
for(int i = 0; i < files.length; i++ ){
opencv_core.IplImage image = cvLoadImage(files[i].getPath());
recorder.record(conveter.convert(image));
opencv_core.cvReleaseImage(image);
}
logger.info("合成成功");
} catch(Exception e) {
e.printStackTrace();
flag = false;
logger.error("合成失败");
} finally {
try {
if (recorder != null){
recorder.stop();
recorder.release();
}
} catch (FrameRecorder.Exception e) {
e.printStackTrace();
}
}
return flag;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wolfly007
2013-09-30 · TA获得超过561个赞
知道小有建树答主
回答量:720
采纳率:0%
帮助的人:249万
展开全部
绘声绘影 威力导演 等等
追问
我要的是java编写的程序代码实现方式,别给我推荐怎么 工具之类的!
追答
OK!      不会!  楼主补充问题:她要的是java编写的程序代码实现方式,别给她推荐怎么 工具之类的!!!!!!!!!!!!!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2016-12-15
展开全部
我也在找这个方法 。 你找到了么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lanhaitun55
2015-08-17 · TA获得超过557个赞
知道小有建树答主
回答量:244
采纳率:100%
帮助的人:211万
展开全部
利用视频制作软件很简单就可以完成
数码大师 挺简单的,你可以尝试下一个,全中文的,0教程就能上手。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式