0

我正在使用 ffmpeg 库进行视频编辑,方法是在我的 android 代码中使用 bin ffmed 文件。一切正常,但是当我裁剪视频并旋转它时,它需要太多时间并且通常会卡住。

这是我呼吁的视频裁剪方法。

 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);
}

有什么方法可以停止冻结我的应用程序并提高处理或任何其他方式/库以进行视频裁剪?

4

1 回答 1

0

好吧,这就是它的工作原理!

正如您已经在使用

cmd.add("-preset");
cmd.add("ultrafast");

它仍然比
我建议您使用的其他产品更好....

  cmd.add("-threads");
  cmd.add("5");  

FFMPEG 将保持缓慢,但这会提高性能。
我希望它有帮助:)

于 2015-06-04T07:00:08.850 回答