如何在FFmpeg的视频中为文本大小的文本添加背景图像?

时间:2019-09-12 11:15:13

标签: ffmpeg android-ffmpeg

是否可以在FFmpeg的视频文字下方添加背景图片?

我可以使用“框”添加黑色背景,但是我需要添加一些特定的图像。我尝试在图像上使用'drawtext',然后将其覆盖在视频上,但是我不知道文本的宽度和高度可用于缩放图像。

"-i",
"D:/AndroidProjects/Movies/VideoSamples/VideoShort1.mp4",
"-i",
"D:/AndroidProjects/Movies/ImageSamples/SampleImage.jpeg",
"-filter_complex",
"[0:v]drawtext=text='Example':fontcolor=#DB7093:fontsize=120:box=1:boxcolor=black@0.8:boxborderw=5:x='(w/2) - (tw/2)':y='h - ((h/2) - (th/2))",
"-s",
"1280x720",
"-y",
"D:/AndroidProjects/Movies/FFmpegSampleShort0.mp4"

我希望获得带有某些图像背景的视频,而不是黑色。 Final video

1 个答案:

答案 0 :(得分:0)

对于这种情况,我只找到了一种解决方案,但是我们必须创建一个虚拟视频,并且不要忘记删除他。 总体而言,此解决方案包含两个操作,但我没有找到其他任何操作。

  1. 在某些视频或虚拟对象(黑空视频)上绘制文本,并在使用复杂过滤器时添加println命令来控制文本的宽度和高度。 例如:
"-i",
"D:/AndroidProjects/Movies/VideoSamples/VideoShort1.mp4",
"-filter_complex",
"drawtext=SomeText:x='print(tw) * 0 + 0 * print(th)'"
"-y",
"D:/AndroidProjects/Movies/TemporaryVideoForScaleText.mp4"
  1. 获取字符串控制台输出,并使用文本大小的regex值找到。
  2. 现在您知道您的文本大小了,可以使用新的ffmpeg命令在文本下缩放图像。