最近项目中用到了FFmpeg来对视频来解压视频 就尝试做了一个Demo
做压缩视频有两种方式
一 用java代码实现
这是解压单个视频
多个视频
package jc;
import java.io.File;
public class sdf {
private static void toCompressFile(String convertFile,String targetFile){
try{
Runtime runtime = Runtime.getRuntime();
/**将视频压缩为 每秒15帧 平均码率600k 画面的宽与高 为1280720/
String cutCmd=“ffmpeg -i " + convertFile + " -r 15 -b:v 600k -s 1280x720 “+ targetFile;
runtime.exec(cutCmd);
System.out.println(“文件:”+convertFile+” 正在转换中。。。”);
}catch(Exception e){
e.printStackTrace();
System.out.println(“压缩文件出现异常:”+e.getMessage());
}
}
public static void main(String[] ars ){
final String convertFile="你的文件夹";
File f=new File(convertFile);
File[] fs=f.listFiles();
for(File ff:fs){
if(ff.toPath().toString().toLowerCase().endsWith(".mp4")){
String f1=convertFile+ff.getName();
String f2=convertFile+"压缩后_"+ff.getName();
toCompressFile(f1,f2);
}
}
}
}
二:下载FFmpeg
下载地址:http://ffmpeg.zeranoe.com/builds/
下载下来的目录是这个样子
二 然后配置环境变量
我的是E:\download\ffmpeg-20200330-8d019db-win64-static\bin 添加到系统变量path中
三 调用命令行(windows+R输入cmd)输入“ffmpeg –version”,如果出现如下说明配置成功
四 使用命令行
"ffmpeg -i " + convertFile + " -r 15 -b:v 750k -s 1280x720 "+ targetFile;
convertFile–初始文件夹
targetFile—新路径文件夹
r—每秒15帧
-b:v平均码率600k
-s 画面的宽与高 为1280720