详细列出 drawtext 滤镜在 ffmpeg7.1.1 支持的参数列表
2025-07-04 18:21:18 61 分享链接 开发笔记 ffmpeg
以下是 FFmpeg 7.1.1 中 drawtext
滤镜支持的参数列表:
文本内容相关参数
- text :指定要绘制的文本字符串,必须是 UTF-8 编码的字符。
- textfile :指定包含要绘制文本的文件,文本必须是 UTF-8 编码的字符序列。如果未指定 text 参数,此参数是必需的。
- reload :指定 textfile 文件重新加载的帧间隔。范围是 0 到 INT_MAX,默认为 0。
- text_source :如果要使用边数据检测边界框中的文本数据,可将文本源设置为 side_data_detection_bboxes。若设置了此参数,将忽略 text 和 textfile 参数。
文本显示相关参数
- fontcolor :指定字体颜色,语法参考 (ffmpeg-utils) 手册中的 “颜色” 部分,默认为 “黑色”。
- fontcolor_expr :以与 text 相同的方式扩展的字符串,用于获取动态字体颜色值。默认值为空,不进行处理。设置后覆盖 fontcolor 参数。
- fontsize :指定字体大小。
- fontfile :指定字体文件,用于从文件中读取字体。
- font :指定字体系列,默认值为 Sans。
- fontstyle :指定字体风格,可选择的值有 normal、italic、oblique。
- fontweight :指定字体粗细,可选择的值有 normal、bold、lighter,或设置为具体的数值,数值范围为 100 - 900,间隔为 100。
- line_spacing :设置行间距,以像素为单位,默认值为 0。
文本位置相关参数
- x :指定文本在视频帧内的 x 偏移量,默认值为 “0”。可使用表达式,表达式中可包含以下常量和函数:dar(输入显示宽高比)、hsub、vsub(水平和垂直色度子采样值)、line_h、lh(每行文本的高度)、main_h、h、H(输入高度)、main_w、w、W(输入宽度)、max_glyph_a、ascent(字形的最大上升值)、max_glyph_d、descent(字形的最大下降值)、max_glyph_h(最大字形高度)、max_glyph_w(最大字形宽度)、font_a(字体指标中定义的上升尺寸)、font_d(字体指标中定义的下降尺寸)、top_a(第一行文本字形的最大上升值)、bottom_d(最后一行文本字形的最大下降值)、n(输入帧数)、rand(返回指定范围的随机数)、sar(输入采样宽高比)、t(时间戳)、text_h、th(渲染文本的高度)、text_w、tw(渲染文本的宽度)等。
- y :指定文本在视频帧内的 y 偏移量,默认值为 “0”。与 x 参数类似,可使用相同的表达式和常量。
- text_align :设置文本相对于框边界的垂直和水平对齐方式。值为垂直对齐标志(T=顶部、M=中间、B=底部)和水平对齐标志(L=左侧、C=居中、R=右侧)的组合。注意,制表符仅支持左侧水平对齐。
- y_align :指定 y 值引用的内容。可能的值为:text(第一行文本的最高字形的顶部位于 y 处)、baseline(第一行文本的基线位于 y 处)、font(第一行文本的基线位于 y 加上字体度量中定义的上升高度处)。默认值为 “text”,以便向后兼容。
文本边框及背景相关参数
- box :用于在文本周围绘制一个框,默认颜色为白色。该值必须为 1(启用)或 0(禁用),默认值为 0。
- boxcolor :设置用于在文本周围绘制框的颜色。语法参考 (ffmpeg-utils)手册中的 “颜色” 部分,默认值为 “白色”。
- boxborderw :设置使用 boxcolor 在框周围绘制的边框的宽度。可使用以下格式之一指定:boxborderw=10(所有边框宽度设为 10)、boxborderw=10|20(顶部和底部边框宽度为 10,左、右边框宽度为 20)、boxborderw=10|20|30(顶部边框宽度为 10,底部为 30,左右为 20)、boxborderw=10|20|30|40(分别设置顶、右、底、左边框宽度)。
- borderw :设置使用 bordercolor 在文本周围绘制的边框的宽度,默认值为 0。
- bordercolor :设置用于在文本周围绘制边框的颜色,默认值为 “黑色”。
其他参数
- enable :指定滤镜启用的条件表达式。
- fix_bounds :如果为 true,则检查并修复文本坐标以避免剪切。
- expansion :选择如何扩展 text。可取值为 none、strftime(已弃用)或 normal(默认)。
- basetime :设置计数的起始时间,单位为微秒。仅在已弃用的 strftime 扩展模式下应用。
最近更新
- 2025-07-23 16:35
- 在Python中如何获取脚本所在的目录?
- 2025-07-23 01:09
- Edge-tts库一次支持多少个中文,语速支持设置吗?
- 2025-07-23 01:07
- Edge-tts库怎么生成字幕?
- 2025-07-23 01:00
- Edge浏览器的语音模型怎么集成到python中使用
- 2025-07-18 00:20
- 详细说明在Python中如何使用元组作为函数的返回值。
- 2025-07-18 00:15
- 在图形用户界面(GUI)编程中 启动一个新的线程可以避免阻塞 GUI 线程。
- 2025-07-17 20:11
- MoviePy 是一个用于视频编辑的 Python 库,依赖Ffmpeg运行,适合无法直接使用 FFmpeg 的场景。
- 2025-07-16 19:31
- 使用FFmpeg 做混剪软件的命令解释
- 2025-07-15 16:13
- 抖音直播下载的文件flv,现在用播放器播放不了的解决办法。
- 2025-07-13 16:32
- 使用OpenCV 给豆包生成的图片去除水印的命令