在 FFMPEG 中注释图像然后转换为视频

在 FFMPEG 中注释图像然后转换为视频

我对 FFMPEG 还不熟悉。我能够将一系列图像转换为视频,每个图像显示指定的时间。我想对这些图像进行注释(例如使用文本),然后转换为视频。我不知道使用 FFMPEG 是否可行。我想要:

  • 给 ffmpeg 一个文本文件,其中包含要编码为视频的图像列表及其持续时间。
  • 如果这些图像中的任何一个需要用文本注释,那么该信息。能够指定文本的样式(字体、字体大小、阴影、颜色、高亮等)
  • 图像注释(将图像叠加在另一幅图像上)。
  • 制作视频。

答案1

正如所述https://stackoverflow.com/questions/17623676/text-on-video-ffmpeg您可以使用绘制文本对此进行过滤。

文档: https://ffmpeg.org/ffmpeg-filters.html#drawtext

请参阅仅在特定时间显示文本的更复杂示例:显示淡入淡出(出现/消失)的文本:

#!/bin/sh
DS=1.0 # display start
DE=10.0 # display end
FID=1.5 # fade in duration
FOD=5 # fade out duration
ffplay -f lavfi "color,drawtext=text=TEST:fontsize=50:fontfile=FreeSerif.ttf:fontcolor_expr=ff0000%{eif\\\\: clip(255*(1*between(t\\, $DS + $FID\\, $DE - $FOD) + ((t - $DS)/$FID)*between(t\\, $DS\\, $DS + $FID) + (-(t - $DE)/$FOD)*between(t\\, $DE - $FOD\\, $DE) )\\, 0\\, 255) \\\\: x\\\\: 2 }"

相关内容