ffmpeg 垂直居中对齐多行文本使用 drawtext 和 subtitle 这两个过滤器独立于字体大小

ffmpeg vertically center align multiple lines of text using drawtext and subtitle both filters independent of font size

无论字体大小如何,我都希望视频中的文本垂直居中对齐。如果有人可以指导如何将行向上移动几列,并且可能可以使用 drawtext 过滤器和字幕过滤器以及字幕过滤器来完成。

我尝试了多个 [in]drawtext=...,drawtext=...[out] 过滤器,但是当更改字体大小对齐时出错,我想知道是否有一些计算公式可以准确地做到这一点。

[in]drawtext=font='Arial': text='This is text line 1':x=(w-tw)/2:y=((h-text_h)/2)-(text_h-(th/4)): fontsize=55: fontcolor=red, drawtext=font='Arial': text='This is text line 2':x=(w-tw)/2:y=((h-text_h)/2)+(text_h-(th/4)): fontsize=55: fontcolor=green[out]

行高基于(th/4)增加分割数以减小行高,反之亦然。