使用 FFmpeg 在视频上添加文字可以通过 drawtext
滤镜来实现。这个滤镜允许你指定字体、大小、颜色、位置等。
基本用法
以下命令将 "Hello, World!" 添加到视频的顶部左侧:
bash
ffmpeg -i input.mp4 -vf "drawtext=text='Hello, World\!':fontcolor=white:fontsize=24:x=10:y=10" -codec:a copy output.mp4
参数解释
input.mp4
: 输入视频文件。-vf "drawtext=..."
: 使用视频滤镜,应用drawtext
滤镜。text='Hello, World!'
: 要显示的文本内容。fontcolor=white
: 字体颜色为白色。fontsize=24
: 字体大小为 24。x=10:y=10
: 文本位置,距离左上角 10 像素。
进阶用法
动态文本(如时间戳)
bash
ffmpeg -i input.mp4 -vf "drawtext=text='%{localtime}':fontcolor=white:fontsize=24:x=10:y=10" -codec:a copy output.mp4
添加阴影、边框等效果:
bash
ffmpeg -i input.mp4 -vf "drawtext=text='Hello, World!':fontfile=/path/to/font.ttf:fontcolor=white:fontsize=24:x=10:y=10:borderw=2:bordercolor=black:shadowx=2:shadowy=2" -codec:a copy output.mp4
borderw=2
: 边框宽度为 2。bordercolor=black
: 边框颜色为黑色。shadowx=2:shadowy=2
: 阴影偏移量。