怎么用Java来实现把视频批量转换为gif动态图
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容主要讲解"怎么用Java来实现把视频批量转换为gif动态图",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用Java来实现把视频批量转换为gif
千家信息网最后更新 2026年11月01日怎么用Java来实现把视频批量转换为gif动态图
本篇内容主要讲解"怎么用Java来实现把视频批量转换为gif动态图",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用Java来实现把视频批量转换为gif动态图"吧!
本功能实现需要用到第三方jar包 jave,JAVE 是java调用FFmpeg的封装工具。
spring boot项目pom文件中添加以下依赖
ws.schild jave-core 3.1.1 ws.schild jave-nativebin-win64 3.1.1 ws.schild jave-nativebin-linux64 3.1.1 Java单类实现代码,复制到Spring boot项目中,用idea编辑器 主方法运行。
import ws.schild.jave.Encoder;import ws.schild.jave.EncoderException;import ws.schild.jave.MultimediaObject;import ws.schild.jave.encode.EncodingAttributes;import ws.schild.jave.encode.VideoAttributes;import ws.schild.jave.info.MultimediaInfo;import ws.schild.jave.info.VideoInfo;import ws.schild.jave.info.VideoSize; import java.io.File;import java.util.Arrays; public class VideoToGIf { //输出格式 private static final String outputFormat = "gif"; /** * 获得转化后的文件名 * * @param sourceFilePath : 源视频文件路径 * @return */ public static String getNewFileName(String sourceFilePath) { File source = new File(sourceFilePath); String fileName = source.getName().substring(0, source.getName().lastIndexOf(".")); return fileName + "." + outputFormat; } /** * 转化音频格式 * * @param sourceFilePath : 源视频文件路径 * @param targetFilePath : 目标gif文件路径 * @return */ public static void transform(String sourceFilePath, String targetFilePath) { File source = new File(sourceFilePath); File target = new File(targetFilePath); try { //获得原视频的分辨率 MultimediaObject mediaObject = new MultimediaObject(source); MultimediaInfo multimediaInfo = mediaObject.getInfo(); VideoInfo videoInfo = multimediaInfo.getVideo(); VideoSize sourceSize = videoInfo.getSize(); //设置视频属性 VideoAttributes video = new VideoAttributes(); video.setCodec(outputFormat); //设置视频帧率 正常为10 ,值越大越流畅 video.setFrameRate(10); //设置视频分辨率 VideoSize targetSize = new VideoSize(sourceSize.getWidth() / 5, sourceSize.getHeight() / 5); video.setSize(targetSize); //设置转码属性 EncodingAttributes attrs = new EncodingAttributes(); attrs.setVideoAttributes(video); // 音频转换格式类 Encoder encoder = new Encoder(); encoder.encode(mediaObject, target, attrs); System.out.println("转换已完成..."); } catch (EncoderException e) { e.printStackTrace(); } } /** * 批量转化视频格式 * * @param sourceFolderPath : 源视频文件夹路径 * @param targetFolderPath : 目标gif文件夹路径 * @return */ public static void batchTransform(String sourceFolderPath, String targetFolderPath) { File sourceFolder = new File(sourceFolderPath); if (sourceFolder.list().length != 0) { Arrays.asList(sourceFolder.list()).forEach(e -> { transform(sourceFolderPath + "\" + e, targetFolderPath + "\" + getNewFileName(e)); }); } } public static void main(String[] args) { batchTransform("C:\Users\tarzan\Desktop\video", "C:\Users\tarzan\Desktop\gif"); } }到此,相信大家对"怎么用Java来实现把视频批量转换为gif动态图"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
视频
文件
路径
格式
动态
内容
分辨率
属性
文件夹
方法
目标
音频
项目
学习
实用
更深
流畅
代码
兴趣
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技名片
广州互联网科技公司
互联网 科技创新
宜安科技 互联网金融
百单互联网科技有限公司
无线互联网科技
广州紫鲸互联网科技
长亮科技 互联网金融
太原新华互联网科技学校怎么样
以后互联网后是啥科技
宁夏众和广鑫互联网科技有限公司
受益于互联网科技的高速发展
互联网科技与管理
武汉健翔互联网络科技有限公司
荆州市昕露互联网络科技有限公司
花神(南京)互联网科技有限公司
如何创新互联网科技
每天都有哪些好的互联网科技
四川互联网展示科技馆设计
马化腾互联网科技教学
互联网金融与金融科技
平安科技 互联网
无线互联网科技
顺玮阁互联网科技
顺网科技2021年互联网排名
南平创想时代互联网科技有限公司
中国科技创新与世界互联网大会
爱医互联网络科技
互联网与数字科技关系
现代互联网科技公司