如何在不使用 fontfile 选项的情况下在 FFMPEG 命令中包含字体?

Avi*_*odi 3 ffmpeg

我使用以下命令使用字体 TIMESNEWROMAN 在视频中添加水印:

\n
ffmpeg -i input.webm -vf "drawtext=text='\xc2\xa9 Krishna':fontfile=C//:/Windows/Fonts/times.ttf:x=(main_w-text_w-10):y=(main_h-text_h-10):fontsize=32:fontcolor=black:box=1:boxcolor=white@0.5: boxborderw=5" -preset ultrafast output.mp4\n
Run Code Online (Sandbox Code Playgroud)\n

现在,我想提供字体 TIMESNEWROMAN 或任何其他字体,而不是字体文件路径。可以这样做吗?

\n

llo*_*gan 8

使用font选项

\n

如果您ffmpeg是用您编译的,--enable-libfontconfig则可以使用该font选项。来自drawtext过滤器文档

\n
\n

font
\n用于绘制文本的字体系列。默认情况下Sans

\n
\n

例子

\n
ffmpeg -i input.webm -vf "drawtext=text=\'\xc2\xa9 Krishna\':font=\'Times New Roman\':x=(main_w-text_w-10):y=(main_h-text_h-10):fontsize=32:fontcolor=black:box=1:boxcolor=white@0.5:boxborderw=5" output.mp4\n
Run Code Online (Sandbox Code Playgroud)\n

检查 libfontconfig 支持

\n

检查您是否ffmpeg刚刚--enable-libfontconfig运行了ffmpeg不带选项的命令,并且它将输出配置。然后寻找--enable-libfontconfig.

\n

如果您没有 libfontconfig

\n\n