如何使用 FFmpeg 在单个命令中修剪、裁剪和添加叠加层

ult*_*ate 1 video android ffmpeg video-editing

我正在使用 FFmpeg 在 android 中进行视频编辑。我可以使用以下命令修剪、裁剪和添加叠加层:

对于修剪:

command = new String[]{"-i",inputVideoFilePath,"-ss","00:00:30.0","-c","copy","-t","00:00:10.0",outputVideoFilePath};
Run Code Online (Sandbox Code Playgroud)

作物:

command = new String[]{"-i",inputVideoFilePath,"-preset", "ultrafast","-filter:v","crop=400:400:0:0","-c:a","copy", outputVideoFilePath};
Run Code Online (Sandbox Code Playgroud)

对于叠加:

command = new String[]{"-i",inputVideoFilePath, "-i",overlayImagePath,"-preset", "ultrafast","-filter_complex", "overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2", "-codec:a", "copy", outputVideoFilePath};
Run Code Online (Sandbox Code Playgroud)

但我无法将这些命令合并为一个命令。请帮我。

Gya*_*yan 7

command = new String[]{"-ss", "00:00:30.0", "-t", "00:00:10.0", "-i",inputVideoFilePath, 
          "-i",overlayImagePath, "-filter_complex",
          "[0]crop=400:400:0:0[a];[a][1]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2",
          "-preset", "ultrafast", "-codec:a", "copy", outputVideoFilePath};
Run Code Online (Sandbox Code Playgroud)

filter_complex 允许对不同的输入串行或并行执行多个过滤操作。