问:ffmpeg drawtext" localtime"视频过滤器 - 以自定义格式显示

时间:2016-03-24 19:17:56

标签: ffmpeg

我有问题逃避':'符号并以hms(HH:MM:SS)格式显示本地时间,用于覆盖实时输入(MPEG-TS),然后将其作为实时输出推出 - 我已经摸索着显示' { {3}}'以一种达到我试图达到目标的一半的格式,其代码示例如下:

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'%作为localtime的多个独立参数(localtime然后抱怨它最多只能接受x1参数),或者ffmpeg抱怨松散的'%'附近的字符" H" ......显然我没有正确地逃避它或我的论点顺序不正确......

1 个答案:

答案 0 :(得分:4)

您显示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