如何使用带有 FFMPEG 的 drawtext 增加文本的行高?

How to increase line-height of text using drawtext with FFMPEG?

我正在使用当前代码创建一个包含几行文本的视频。执行时,由于缺少 space,我收到了一个文本垂直连接的视频。如何添加行高space?

ffmpeg -i videoInput.mp4 \
       -vf drawtext="./font/Roboto/Roboto-Bold.ttf: \
           text='testing text \ntesting text \ntesting text':\
           fontcolor=yellow:\
           fontsize=36:\
           box=1:\
           boxcolor=black@0.5: \
           boxborderw=160:\
           x=(w-text_w)/2:\
           y=(h-text_h)/2"\
    -codec:a copy \
    videoOutput.mp4

要增加行高,请在命令中添加一个 line_spacing 参数,(http://ffmpeg.org/ffmpeg-filters.html#drawtext-1) 所以它看起来像:

ffmpeg -i videoInput.mp4 \
       -vf drawtext="./font/Roboto/Roboto-Bold.ttf: \
           text='testing text \ntesting text \ntesting text':\
         line_spacing=30:\
           fontcolor=yellow:\
           fontsize=36:\
           box=1:\
           boxcolor=black@0.5: \
           boxborderw=160:\
           x=(w-text_w)/2:\
           y=(h-text_h)/2"\
    -codec:a copy \
    videoOutput.mp4

一些技巧是在所需文本上附加双分隔线。它看起来像:

  text='testing text \n\ntesting text \n\ntesting text'
ffmpeg -i videoInput.mp4 \
       -vf drawtext="./font/Roboto/Roboto-Bold.ttf: \
           text='testing text \n\ntesting text \n\ntesting text':\
           fontcolor=yellow:\
           fontsize=36:\
           box=1:\
           boxcolor=black@0.5: \
           boxborderw=160:\
           x=(w-text_w)/2:\
           y=(h-text_h)/2"\
    -codec:a copy \
    videoOutput.mp4