【问题标题】:Q: ffmpeg drawtext "localtime" video filter - display in custom format问:ffmpeg drawtext "localtime" 视频过滤器 - 以自定义格式显示
【发布时间】:2016-03-24 19:17:56
【问题描述】:

我在转义“:”符号并以 hms(HH:MM:SS) 格式显示本地时间以覆盖实时输入 (MPEG-TS) 时遇到问题,然后将其作为实时输出推出 - 我已经我摸索着以某种格式显示“localtime”的方法可以达到我想要达到的一半,其代码示例是:

ffmpeg -re -hide_banner -i LIVE_INPUT -vf drawtext="fontsize=90:fontcolor=white:fontfile=/Windows/Fonts/arial.ttf:text='%{localtime\:%H %M %S}'" -f LIVE_OUTPUT

它实现的是以“HH MM SS”格式而不是“HH:MM:SS”格式显示本地时间...


我确实尝试过这样写来转义“:”:

ffmpeg -re -hide_banner -i LIVE_INPUT -vf drawtext="fontsize=90:fontcolor=white:fontfile=/Windows/Fonts/arial.ttf:text='%{localtime\:%H\\:%M\\:%S}'" -f LIVE_OUTPUT

还有这个:

ffmpeg -re -hide_banner -i LIVE_INPUT -vf drawtext="fontsize=90:fontcolor=white:fontfile=/Windows/Fonts/arial.ttf:text='%{localtime\:%H\:%M\:%S}'" -f LIVE_OUTPUT

还有这样的:

ffmpeg -re -hide_banner -i LIVE_INPUT -vf drawtext="fontsize=90:fontcolor=white:fontfile=/Windows/Fonts/arial.ttf:text='%{localtime\:%H \: %M \: %S}'" -f LIVE_OUTPUT

但是以上都没有帮助,因为它返回不同的错误,因为 ffmpeg 尝试将 '%H' '%M' 和 '%S' 解析为本地时间的多个单独参数(本地时间然后抱怨它只能接受 x1最多参数),或者ffmpeg抱怨“H”附近有松散的'%'字符......显然我没有正确转义它或者我的参数顺序不正确......

【问题讨论】:

  • 任何人都在寻找有关如何显示时间码或经过时间的答案,这就是您正在寻找的答案:Display Timecode and/or Elapsed time in a overlay text
  • 在这里找到了一些提示:stackoverflow.com/a/19810519/2855434 ... 当这样写时: ffmpeg -re -hide_banner -i LIVE_INPUT -vf drawtext="expansion=none:fontsize=90:fontcolor=white: fontfile=/Windows/Fonts/arial.ttf:text='%{localtime\:%H\:%M\:%S}'" -f LIVE_OUTPUT 我最终显示 '%{localtime:%H:%M: %S'

标签: ffmpeg


【解决方案1】:

你原来显示HH:MM:SS的需求可以这样实现

ffmpeg -re -hide_banner -i LIVE_INPUT \
-vf drawtext="fontsize=90:fontcolor=white: \
              fontfile=/Windows/Fonts/arial.ttf:text='%{localtime\:%X}'" \
-f LIVE_OUTPUT

【讨论】:

  • 谢谢!这正是我想要达到的目标!我迷路了,我开始寻找过于复杂的方法来解决这个问题......
猜你喜欢
  • 2015-12-22
  • 2016-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多