使用ffmpeg的Android视频编辑
我正在使用ffmpeg库进行视频编辑,在我的android代码中使用bin ffmed文件。一切正常,但当我裁剪视频并旋转它时,它需要太多时间,通常会卡住 这就是我所说的视频裁剪方法使用ffmpeg的Android视频编辑,android,ffmpeg,video-editing,Android,Ffmpeg,Video Editing,我正在使用ffmpeg库进行视频编辑,在我的android代码中使用bin ffmed文件。一切正常,但当我裁剪视频并旋转它时,它需要太多时间,通常会卡住 这就是我所说的视频裁剪方法 public void rotateAndCropClip(String in, String out,int rotate, ShellCallback callback) throws IOException, InterruptedException { ArrayList<String>
public void rotateAndCropClip(String in, String out,int rotate, ShellCallback callback) throws IOException, InterruptedException {
ArrayList<String> cmd = new ArrayList<String>();
cmd = new ArrayList<String>();
cmd.add(mFfmpegBin);
// Input file
cmd.add("-i");
cmd.add(in);
cmd.add("-vf");
if(rotate == 1){
cmd.add("crop=360:480:0:0,transpose="+rotate);
}else{
cmd.add("transpose="+rotate+",crop=480:360:0:0");
}
cmd.add("-preset");
cmd.add("ultrafast");
cmd.add("-c:a");
cmd.add("copy");
// Output file
cmd.add(out);
execFFMPEG(cmd, callback);
}
public void rotateAndCropClip(String-in、String-out、int-rotate、shell回调)抛出IOException、InterruptedException{
ArrayList cmd=新的ArrayList();
cmd=newarraylist();
命令添加(mFfmpegBin);
//输入文件
cmd.添加(“-i”);
cmd.add(in);
命令添加(“-vf”);
如果(旋转==1){
cmd.add(“裁剪=360:480:0:0,转置=”+旋转);
}否则{
命令添加(“transpose=“+rotate+”,裁剪=480:360:0:0”);
}
命令添加(“-preset”);
cmd.add(“超快”);
命令添加(“-c:a”);
cmd.添加(“副本”);
//输出文件
cmd.add(out);
execFFMPEG(cmd,回调);
}
有没有什么方法可以停止冻结我的应用程序并提高处理速度,或者用其他方法/库进行视频浏览?这就是它的工作原理 因为您已经在使用
cmd.add("-preset");
cmd.add("ultrafast");
它仍然比其他的好我建议你使用
cmd.add("-threads");
cmd.add("5");
FFMPEG将保持较慢的速度,但这将提高性能。我希望它能有所帮助:)是否有任何教程可以在android studio中集成ffmpeg?与最新的android studio ndk集成。出现ndk折旧异常