Java转换视频可以用JJmpeg, 而JJmpeg其实是对ffmpeg的封装,所以需要做两件事:
- 在项目中引入
JJmpeg
- 在服务器上安装
ffmpeg
在服务器上安装ffmpeg
1、下载安装包
http://ffmpeg.org/download.html#build-linux
选择对应的版本
2、解压
tar -xf ffmpeg-release-amd64-static.tar.xz
# 重命名
mv ffmpeg-5.1.1-amd64-static ffmpeg
3、使用
./ffmpeg -i /opt/server/test/a.mov /opt/server/test/b.mp4
好了,你已经学会如何使用ffmpeg进行视频格式转化了
在Java代码中使用
1、引入依赖
<dependency>
<groupId>net.bramp.ffmpeg</groupId>
<artifactId>ffmpeg</artifactId>
<version>0.7.0</version>
</dependency>
2、使用
2.1 文件转文件
String path = "/opt/server/ffmpeg";
// ffmpeg的路径
FFmpeg ffmpeg = new FFmpeg(path + "/ffmpeg");
FFprobe ffprobe = new FFprobe(path + "/ffprobe");
FFmpegBuilder builder = new FFmpegBuilder()
// 源文件
.setInput("/opt/server/test/a.mov")
// 目标文件
.addOutput("/opt/server/test/b.mp4")
.done();
FFmpegExecutor executor = new FFmpegExecutor(ffmpeg, ffprobe);
executor.createJob(builder).run();
2.2 url转文件
String path = "/opt/server/ffmpeg";
// ffmpeg的路径
FFmpeg ffmpeg = new FFmpeg(path + "/ffmpeg");
FFprobe ffprobe = new FFprobe(path + "/ffprobe");
FFmpegBuilder builder = new FFmpegBuilder()
// 源文件
.setInput("https://notes.zijiancode.cn/2023/01/06/a.mov")
// 目标文件
.addOutput("/opt/server/test/c.mp4")
.done();
FFmpegExecutor executor = new FFmpegExecutor(ffmpeg, ffprobe);
executor.createJob(builder).run();