为mp4覆盖png图片
覆盖png代码如下:
ffmpeg -i please_read.mp4 -i test.png \
-filter_complex "[0:v][1:v] overlay=W-w:H-h:enable='between(t,0,20)'" \
-pix_fmt yuv420p -c:a copy \
output.mp4
为mp4直接覆盖文本
直接在mp4上面绘制文字
ffmpeg -i please_read.mp4 -vf drawtext="fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: \
text='Stack Overflow': fontcolor=white: fontsize=24: box=1: boxcolor=black@0.5: \
boxborderw=5: x=(w-text_w)/2: y=(h-text_h)/2" -codec:a copy output.mp4
参考:链接
实现绘制的文字背景色透明
实现背景色透明:
主要是通过boxcolor=black@0.4来实现背景色透明
ffmpeg -i please_read.mp4 -vf drawtext="\
text='9876543': fontcolor=white: fontsize=24: box=1: boxcolor=black@0.4: \
boxborderw=5: x=(w-text_w)/2: y=(h-text_h)/2" -codec:a copy output.mp4
调整文字位置
调整文字位置,位于下方:
ffmpeg -i please_read.mp4 -vf drawtext="\
text='9876543': fontcolor=white: fontsize=80: box=1: boxcolor=black@0.4: \
boxborderw=5: x=(w-text_w)/2: y=(h-text_h)*0.75" -codec:a copy output.mp4