FFmpeg仅为最后一个图像添加文本

时间:2018-05-25 14:30:48

标签: ffmpeg

我设法从一组非连续图像中创建一个视频并将音频附加到其上。我还添加了一个"版权所有"右上角的文字,以便文字出现在整个视频中。但是,我希望该文本仅出现在最后一张图片上。我应该如何更改下面的代码来解决这个问题?

ffmpeg \
-thread_queue_size 512 -f image2 -pattern_type glob -framerate 1/3 \
-i '*.jpg' \
-i 'audio.mp3' \
-c:a aac -c:v libx264 \
-vf scale=640:480, format=yuv420p, drawtext="text='Copyright':fontcolor=white:box=1:boxcolor=black@0.5:boxborderw=5:x=w-tw-5:y=5" \
-preset medium \
video.mp4

1 个答案:

答案 0 :(得分:2)

从glob中分离最后一个图像然后连接它:

ffmpeg \
  -pattern_type glob -framerate 1/3 -i '*.jpg' -framerate 1/3 -loop 1 -t 5 -i last/img.jpg -i audio.mp3 \
  -filter_complex \
    "[0:v]scale=640:480,setsar=1[v0]; \
     [1:v]scale=640:480,setsar=1,drawtext=text='Copyright':fontcolor=white:box=1:boxcolor=black@0.5:boxborderw=5:x=w-tw-5:y=5[v1]; \
     [v0][v1]concat=n=2:v=1:a=0,fps=25,format=yuv420p[v]" \
  -map "[v]" -map 2:a -c:v libx264 -c:a aac -shortest -movflags +faststart video.mp4