gpt4 book ai didi

python - ffmpeg drawtext 在整个视频空间上重复覆盖文本

转载 作者:行者123 更新时间:2023-12-04 23:10:01 55 4
gpt4 key购买 nike

我想要一个特定的文本,如 Hello world像这样分布在多行和整个视频空间/页面上。
enter image description here
我使用 bash 作为子进程在 python 脚本中运行 ffmpeg 命令。示例代码:

subprocess.run(["ffmpeg","-i",input_file,"-vf",f"drawtext=font={font_family}:text={watermark_text}:fontcolor={font_color}:fontsize={font_size}{background_box}:{watermark_position}","-codec:a","copy","-preset",encoding_preset,f"./watermark/{media_id}.mp4",])


有什么好的方法可以实现这一目标吗?

最佳答案

这是您的基本模板。我假设输入是720p。ffmpeg -i 720p_input -f lavfi -i "color=black@0:s=64x64,format=yuva420p" -filter_complex "[1]trim=end_frame=1,drawtext=font={font_family}:text={watermark_text}:fontcolor={font_color}:fontsize={font_size}{background_box}:{watermark_position},rotate=a={degree}*PI/180:ow=hypot(iw,ih):oh=ow:c=black@0,loop=-1:1:0,tile=15x9,trim=end_frame=1[wm];[0][wm]overlay=0:0" -c:a copy -preset encoding_preset ./watermark/{media_id}.mp4{degree}应该换成旋转角度。
每个文本单元格的最终大小为 64 x sqrt(2) = 90 pixels在每一侧。15x9是平铺布局。调整它以覆盖整个输入帧。

关于python - ffmpeg drawtext 在整个视频空间上重复覆盖文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71692899/

55 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com