尚未成功链接这两个ffmpeg命令

问题描述

这两个命令都能正常工作,但我需要将它们链接起来,需要帮助

ffcommand1 = new String[]{"-ss","00:00:00","-t",sduration,"-y","-i",pathDir + fname,"-vf","scale=640:480","-s","640x480","-r","15","-vcodec","mpeg4","-b:v","2097152","-b:a","48000","-ac","2","-ar","22050","scale=640:480,drawtext=fontfile=" + homeDir + "opensansregular.ttf:fontsize=" + fontsize + ":fontcolor=white:Box=1:Boxcolor=black@0.5:Boxborderw=5:text='" + subtitle + "':x=100:y=350","-c:a","copy","-an",pathDir + fname1};


ffmpeg -i input.mp4 -f lavfi -i "color=0x1f477000:s=640x480" -filter_complex "blend=shortest=1:all_mode=overlay:all_opacity=0.7" output.mp4

解决方法

组合命令:

ffmpeg -y -t 30 -i input.mp4 -f lavfi -i "color=0x1f477000:s=640x480:r=15" -filter_complex "[0]fps=15,scale=640:480[main];[main][1]blend=shortest=1:all_mode=overlay:all_opacity=0.7,drawtext=fontfile=opensansregular.ttf:fontsize=22:fontcolor=white:box=1:boxcolor=black@0.5:boxborderw=5:text='your text':x=100:y=350" -vcodec mpeg4 -b:v 2097152 -c:a copy output.mp4
  • -ss 00:00:00什么也不做,因此已从组合命令中删除。
  • 您正在同时使用-c:a copystream copy音频)和-an(无音频)。我以为您想保留音频,因此-an已被省略。
  • -b:a-ac-ar-c:a copy忽略,因此这些选项已被省略。
  • 您正在使用3次刻度(两个刻度过滤器和-s选项)。我将其简化为一个比例实例。
  • 您真的要使用-c:v mpeg4吗?输出的是旧的旧格式MPEG-4 Part 2视频。如果删除-c:v mpeg4,它将输出H.264代替MP4。