FFMPEG 视频拼接和叠加

Ash*_*eja 1 video ffmpeg

我想将两个ffmpeg命令合并为一个命令。我ffmpeg在我的 Android 应用程序中使用现成的二进制文件。我想连接.ts文件并覆盖图像。

我正在使用以下命令:

  1. 要连接.ts文件:

    String[] ffmpegcommand = {"ffmpeg", "-i","concat:"+input_file_path+"|"+input_file_path1, "-c", "copy", "-bsf:a", "aac_adtstoasc", output_file_path};
    
    Run Code Online (Sandbox Code Playgroud)
  2. 应用图像叠加效果:

    String[] ffmpegcommand = {"ffmpeg","-y" ,"-i", input_file_path,"-strict","experimental", "-vf","movie="+AppStaticData.BASE_FOLDER_PATH + File.separator + "watermarklogo.png"+" [watermark]; [in][watermark] overlay=main_w-overlay_w-10:10 [out]", AppStaticData.BASE_FOLDER_PATH+"/" + output_file_path};
    
    Run Code Online (Sandbox Code Playgroud)

llo*_*gan 5

您可以使用concat 过滤器在一个命令中完成此操作:

ffmpeg -i input0.ts -i input1.ts -i input2.ts -i overlay.png -filter_complex \
"[0:v][0:a][1:v][1:a][2:v][2:a]concat=n=3:v=1:a=1[vv][a]; \
 [vv][3:v]overlay=W-w-10:10[v]" \
-map "[v]" -map "[a]" output.mp4
Run Code Online (Sandbox Code Playgroud)