为mp4覆盖png图片

覆盖png代码如下:

  1. ffmpeg -i please_read.mp4 -i test.png \
  2. -filter_complex "[0:v][1:v] overlay=W-w:H-h:enable='between(t,0,20)'" \
  3. -pix_fmt yuv420p -c:a copy \
  4. output.mp4

为mp4直接覆盖文本

直接在mp4上面绘制文字

  1. ffmpeg -i please_read.mp4 -vf drawtext="fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: \
  2. text='Stack Overflow': fontcolor=white: fontsize=24: box=1: boxcolor=black@0.5: \
  3. boxborderw=5: x=(w-text_w)/2: y=(h-text_h)/2" -codec:a copy output.mp4

参考:链接

实现绘制的文字背景色透明

实现背景色透明:
主要是通过boxcolor=black@0.4来实现背景色透明

  1. ffmpeg -i please_read.mp4 -vf drawtext="\
  2. text='9876543': fontcolor=white: fontsize=24: box=1: boxcolor=black@0.4: \
  3. boxborderw=5: x=(w-text_w)/2: y=(h-text_h)/2" -codec:a copy output.mp4

调整文字位置

调整文字位置,位于下方:

  1. ffmpeg -i please_read.mp4 -vf drawtext="\
  2. text='9876543': fontcolor=white: fontsize=80: box=1: boxcolor=black@0.4: \
  3. boxborderw=5: x=(w-text_w)/2: y=(h-text_h)*0.75" -codec:a copy output.mp4