我有一个ffmpeg命令转到url并按指定的时间间隔成功创建缩略图。我想做的是将时间(例如:03:45:20)添加到视频的左下角,白色文字带有黑色阴影。我在网上看过一些使用drawtext的例子,但它们似乎都不适用于我当前的命令:
C:\ffmpeg\bin\ffmpeg.exe -ss 00:23:12 -i "http://myvideourl.com/videofile.mp4" -f mjpeg -vframes 1 -y C:\thumb2.jpg
有人可以建议我如何使用当前命令实现正确的drawtext过滤器,以便输出缩写,并在左下角标记持续时间?
答案 0 :(得分:0)
由于我无法在线找到任何解决方案,并且我有进一步的图像效果和缩放,我决定使用Python的PIL模块来操作从ffmpeg命令保存的屏幕截图。
使用PIL :
from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw
img = Image.open("C:\\path\\to\\saved\\thumb.jpg")
draw = ImageDraw.Draw(img)
font = ImageFont.truetype("C:\\path\\to\\your\\font.ttf", 20)
draw.text((10, img.size[1] - 30), dur, (255, 255, 255), font=font)
#uncomment line below to scale image
#img.thumbnail((400, 300), Image.ANTIALIAS)
img.save("C:\\path\\to\\saved\\thumb.jpg")
剩下的就是弄清楚如何将背景颜色设置为黑色并添加一些文字阴影,我会很高兴。