FFMPEG - 移动文本每 'X' 秒出现一次

标签 ffmpeg drawtext

这是一个用于移动文本的 ffmpeg 命令(从左到右)
ffmpeg -i input.mp4 -vf drawtext="fontfile=/path/to/fonts/FreeSans.ttf:text='Hello World':fontcolor=white@1.0:fontsize=16:y=h-line_h-100:x=(2*n)-tw" -codec:v libx264 -codec:a copy output.mp4
而且我想知道如何使移动文本在“X”秒后开始并每隔“X”秒出现一次?

最佳答案

它就在 documentation 中.例如,要使其每 3 秒出现一次并持续 1 秒,您可以将以下内容添加到您的 drawtext筛选:
enable=lt(mod(t\,3)\,1)
更新 :根据评论,它必须是连续滚动的文本。这是一个文本示例,它在 10 秒内滚动视频的整个宽度,在 10 秒的初始时间之后,然后在另一个 10 秒内消失,在一个循环中:

ffmpeg -i input.mp4 -filter:v drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSans.ttf:text='Hello World':fontcolor=white@1.0:fontsize=16:y=h-line_h-100:x=w/10*mod(t\,10):enable=gt(mod(t\,20)\,10)" -codec:v libx264 -codec:a copy -y output.mp4

细节:
  • 水平运动:x=w/10*mod(t\,10)在哪里 w是输入宽度,t是时候了,w/10是移动速度(整个宽度以 10 秒为单位)和 t mod 10用于每 10 秒重复一次
  • 启用:enable=gt(mod(t\,20)\,10) , 每 20 秒显示 10 秒后初始 10 秒的文字动画
  • 关于FFMPEG - 移动文本每 'X' 秒出现一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32737643/

    相关文章:

    ffmpeg vstats 命令

    ffmpeg - 图片大小 0x0 在 FFMPEG 日志中无效

    python - 如何使用 ffmpeg (ffmpeg-python) 绘制带有颜色渐变填充的文本?然后与音乐混合?

    ffmpeg:drawtext 使用 zmq 淡入/淡出

    powershell - 如何使用 FFMPEG 和 powershell 自动裁剪视频

    image - FFMPEG视频到图像批量转换

    delphi - 从TStringGrid单元格[aCol,aRow]读取文本,该文本由DrawText函数在“OnDrawCell”事件上生成

    android - 使用 WINGDING.ttf 字体在 Canvas 上绘制文本在 Android 上不起作用

    ffmpeg - 如何在ffmpeg中为硬编码字幕(.ass)或drawtext设置动画?

    node.js - 从 Fluent-Ffmpeg Api 调用 Ffmpeg 二进制文件时 Node 出现 ENOENT 错误